cad-editor/assets/fonts
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Hakan Seven c1b33677e2 feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts
Replace the small QCAD CXF stroke-font set with the full LibreCAD LFF font
library (46 fonts) and a new LFF parser/engine in src/scene/lff.rs. The
parser reads the `[hex] char` glyph blocks, tessellates `,A<bulge>` arcs, and
resolves `C<hex>` glyph references. Per LibreCAD's RS_Polyline convention a
vertex's bulge curves the segment ending at that vertex — getting this wrong
turned round letters like O into sideways capsules.

Font name resolution mirrors LibreCAD: match by file stem, map common
AutoCAD/DXF SHX names (txt, isocp, complex, italic, gothic*, gost, …) to the
nearest LFF family, and fall back to `standard`. A missing glyph in the chosen
family falls back to the broad `unicode` font so accented/Cyrillic/Greek text
still renders. Cap height stays 9 units, so the text scale is unchanged.

All text consumers move from cxf:: to lff::; complex linetypes still render
embedded text but no longer draw embedded shapes (LibreCAD ships no shape
file). The CXF module and every *.cxf asset are removed, and the MText / text
style font pickers list the LFF families.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 03:31:20 +03:00
..
amiri-regular.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
azomix.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
azomix_i.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
cursive.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
cyrillic_ii.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
gothgbt.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
gothgrt.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
gothitt.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
greek_ol.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
greekc.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
greekcs.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
greekp.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
greeks.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
iso.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
iso3098.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
iso3098_i.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
italicc.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
italiccs.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
italict.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
kochigothic.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
kochimincho.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
kst32b.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
lc_opengost-ar.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
lc_opengost-br.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
opengosttypea-regular.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
opengosttypeb-regular.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
romanc.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
romancs.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
romand.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
romanp.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
romans.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
romansi.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
romant.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
scriptc.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
scripts.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
simplex.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
standard.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
syastro.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
symap.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
symath.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
symbol.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
symbol_misc1.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
symbol_misc2.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
symeteo.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
symusic.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00
unicode.lff feat(fonts): switch the text engine from CXF to LibreCAD LFF fonts 2026-05-31 03:31:20 +03:00