diff --git a/src/pixie/fontformats/opentype.nim b/src/pixie/fontformats/opentype.nim index f0b5449..bb6353d 100644 --- a/src/pixie/fontformats/opentype.nim +++ b/src/pixie/fontformats/opentype.nim @@ -1479,6 +1479,10 @@ proc getAdvance*(opentype: OpenType, rune: Rune): float32 = result = opentype.hmtx.hMetrics[^1].advanceWidth.float32 proc getKerningAdjustment*(opentype: OpenType, left, right: Rune): float32 = + if left notin opentype.cmap.runeToGlyphId or + right notin opentype.cmap.runeToGlyphId: + return + let leftGlyphId = opentype.cmap.runeToGlyphId[left] rightGlyphId = opentype.cmap.runeToGlyphId[right] diff --git a/src/pixie/fonts.nim b/src/pixie/fonts.nim index 206bd97..e07b1c9 100644 --- a/src/pixie/fonts.nim +++ b/src/pixie/fonts.nim @@ -4,7 +4,7 @@ import pixie/fontformats/opentype, pixie/fontformats/svgfont, pixie/paths, const AutoLineHeight* = -1.float32 ## Use default line height for the font size type - Typeface = ref object + Typeface* = ref object opentype: OpenType svgFont: SvgFont