mirror of
https://github.com/curioustorvald/Terrarum-sans-bitmap.git
synced 2026-06-06 05:58:30 +09:00
keming machine dot removal directive
This commit is contained in:
@@ -370,10 +370,9 @@ def build_font(assets_dir, output_path, no_bitmap=False, no_features=False):
|
||||
x_offset = 0
|
||||
x_offset -= g.props.nudge_x * SCALE
|
||||
|
||||
# For STACK_DOWN marks (below-base diacritics), negative nudge_y
|
||||
# means "shift content down to below baseline". The sign convention
|
||||
# is opposite to non-marks where positive nudge_y means shift down.
|
||||
if g.props.stack_where == SC.STACK_DOWN and g.props.write_on_top >= 0:
|
||||
# For marks (write_on_top >= 0), positive nudge_y means shift UP
|
||||
# in the bitmap engine (opposite to non-marks where positive = down).
|
||||
if g.props.write_on_top >= 0:
|
||||
y_offset = g.props.nudge_y * SCALE
|
||||
else:
|
||||
y_offset = -g.props.nudge_y * SCALE
|
||||
|
||||
@@ -1878,12 +1878,16 @@ def _generate_mark(glyphs, has):
|
||||
lines.append(f"lookup {mkmk_name} {{")
|
||||
|
||||
if scat == 'up':
|
||||
m2y = SC.ASCENT + SC.H_DIACRITICS * SC.SCALE
|
||||
m2y_base = SC.ASCENT + SC.H_DIACRITICS * SC.SCALE
|
||||
else: # 'dn'
|
||||
m2y = SC.ASCENT - SC.H_DIACRITICS * SC.SCALE
|
||||
m2y_base = SC.ASCENT - SC.H_DIACRITICS * SC.SCALE
|
||||
|
||||
for cp, g in mark_list:
|
||||
mx = mark_anchors.get(cp, 0)
|
||||
# Cascade nudge_y: the mark2 anchor includes this mark's
|
||||
# nudge so that the next stacked mark inherits the shift,
|
||||
# matching the Kotlin engine's nudgeUpwardCounter / nudgeDownwardCounter.
|
||||
m2y = m2y_base + g.props.nudge_y * SC.SCALE
|
||||
lines.append(
|
||||
f" pos mark {glyph_name(cp)}"
|
||||
f" <anchor {mx} {m2y}> mark {class_name};"
|
||||
|
||||
Reference in New Issue
Block a user