summaryrefslogtreecommitdiff
path: root/src/font/main.zig
AgeCommit message (Collapse)Author
2025-09-19build: move apprt, font, renderer enums to dedicated filesMitchell Hashimoto
This reduces the surface area of files we depend on for builds.
2025-07-25font: clean up Collection api somewhatQwerasd
Move size adjustment logic out of `Entry`, I understand the impulse to put it there but it results in passing a lot of stuff around which isn't great. Rework `add(...)` in to `add(...)` and `addDeferred(...)`, faces are passed directly now instead of passing an entry, and an options struct is used instead of positional arguments for things like style, fallback, and size adjustment. Change size adjustment test back to a half pixel tolerance instead of 5% because the previous commit (allowing fractional pixel sizes) fixed the root cause of large differences.
2025-03-11Zig 0.14Mitchell Hashimoto
2025-01-06refactor(font): move `Metrics` out of `face`Qwerasd
in preparation to move ownership of metrics from faces to collections
2024-10-02font: add stylistic variants for built-in font, fix naming conventionMitchell Hashimoto
Fixes #2364 This adds the bold, italic, and bold italic variants of JB Mono so it is built-in. This also fixes up the naming convention for the embedded font files across tests and removes redundant embedded font files.
2024-08-16lots more yeetingMitchell Hashimoto
2024-08-16font: yeet usingnsMitchell Hashimoto
2024-05-28font/coretext: hasColor/isColoredMitchell Hashimoto
2024-05-27font/opentype: add SVG table parser, membership checkMitchell Hashimoto
2024-05-01font: noop shaperMitchell Hashimoto
2024-05-01renderer/metal: integrate shaping cacheMitchell Hashimoto
2024-04-30build: add -Dfont-backend=coretext_harfbuzz to force Harfbuzz w/ CTMitchell Hashimoto
2024-04-06font: remove old filesMitchell Hashimoto
2024-04-05font: implement many rendering, caching functions for SharedGridMitchell Hashimoto
2024-04-05renderer/metal: picking away at font group => grid changesMitchell Hashimoto
2024-04-05font: SharedGridSet startsMitchell Hashimoto
2024-04-05font: start SharedGridMitchell Hashimoto
2024-04-05font: CodepointResolver beginningsMitchell Hashimoto
2024-04-05font: [broken] working on extracting Collection from GroupMitchell Hashimoto
2024-04-05font: introduce GroupCacheSet, use it for descriptors to startMitchell Hashimoto
2024-04-04build: do not build/link harfbuzz on macOSMitchell Hashimoto
2024-01-03WIP: Update to new build module API after Zig PR #18160Krzysztof Wolicki
Temporarily change dependency sources to forks until they update
2023-09-24font: add CodepointMap with testsMitchell Hashimoto
2023-08-08Fix typosKevin Hovsäter
2023-07-01font: default rasterizer on macOS is now coretextMitchell Hashimoto
2023-03-04fix wasm buildMitchell Hashimoto
2023-03-04can now use -Dfont-backend to choose the font backend to useMitchell Hashimoto
2022-12-31move wasm target struct around to avoid analyzing wasm file on non-wasmMitchell Hashimoto
2022-12-31start making the src more wasm target awareMitchell Hashimoto
2022-12-12font: mac should use freetype rasterizer by defaultMitchell Hashimoto
2022-12-06font: extract common shaper elements outMitchell Hashimoto
2022-12-06font: move shaper into comptime interfaceMitchell Hashimoto
2022-12-05font: GroupCache is wasm compatibleMitchell Hashimoto
2022-12-05font: DeferredFace is wasm-compatibleMitchell Hashimoto
2022-12-05font: begin making Group work with wasmMitchell Hashimoto
2022-12-03font: web canvas creates a canvas elementMitchell Hashimoto
2022-12-01Start scaffolding web_canvas backendMitchell Hashimoto
2022-12-01move wasm main to src/, export an Atlas APIMitchell Hashimoto
We don't need the Atlas API for wasm at all, but its a good way to test things work incrementally and its a pretty cool thing to have as a wasm library really.
2022-11-28move Atlas to fontMitchell Hashimoto
2022-11-27font: draw single and double underlines as spritesMitchell Hashimoto
2022-11-27rearrange box rendering to prepare for more sprite drawingMitchell Hashimoto
2022-11-24font: skeleton for box drawing and hook up to GroupMitchell Hashimoto
2022-10-08font: begin coretext FaceMitchell Hashimoto
2022-10-08Make font face a compile time interface, stub for coretextMitchell Hashimoto
2022-10-03calculate font metrics per faceMitchell Hashimoto
2022-10-02font: set "backend" enum vs booleansMitchell Hashimoto
2022-10-01Mac Font Discovery with CoreText (#17)Mitchell Hashimoto
This implements font discovery so the `--font-family` flag works for macOS. Fonts are looked up using the Core Text API so any installed font on the Mac system can be used. We still use FreeType for rendering, and CoreText doesn't _quite_ give us all the information we need to build the exact face in FreeType. So a TODO after this is to now implement glyph _rendering_ using Core Text and Core Graphics. Until then, a couple fonts don't quite work (i.e. Monaco, a big one!) but many do!
2022-09-24font: test loading deferred face for fontconfigMitchell Hashimoto
2022-09-23start adding fontconfig conditional compilationMitchell Hashimoto
2022-09-06fonts are presentation format aware (text vs emoji)Mitchell Hashimoto