* Fix broken geometry of Single-arch Latin Capital Letter Turned M (U+019C
) (#1083).
* Fix broken geometry of Single-arch Mathematical Bold Small M (`U+1D426`) (#1084).
This commit is contained in:
parent
e7f5a065e6
commit
d22e4a4df8
6 changed files with 26 additions and 14 deletions
|
@ -1,5 +1,7 @@
|
||||||
* Add cursive for Latin Small Letter W with Hook (`U+2C73`) (#1081).
|
* Add cursive for Latin Small Letter W with Hook (`U+2C73`) (#1081).
|
||||||
* Fix missing variants of Latin Small Letter Turned M with Long Leg (`U+0270`) (#1082).
|
* Fix missing variants of Latin Small Letter Turned M with Long Leg (`U+0270`) (#1082).
|
||||||
|
* Fix broken geometry of Single-arch Latin Capital Letter Turned M (`U+019C`) (#1083).
|
||||||
|
* Fix broken geometry of Single-arch Mathematical Bold Small M (`U+1D426`) (#1084).
|
||||||
* Fix missing serif and `cv39` variants of Latin Small Letter Feng Digraph (`U+02A9`) (#1085).
|
* Fix missing serif and `cv39` variants of Latin Small Letter Feng Digraph (`U+02A9`) (#1085).
|
||||||
* Fix missing variant of Latin Small Letter Ue (`U+1D6B`) (#1086).
|
* Fix missing variant of Latin Small Letter Ue (`U+1D6B`) (#1086).
|
||||||
* Fix missing serif of Italic Latin Phi (#1087).
|
* Fix missing serif of Italic Latin Phi (#1087).
|
||||||
|
|
|
@ -481,7 +481,8 @@ glyph-block Autobuild-Transformed-Mathematical : begin
|
||||||
define [createMathDerivedSeriesImpl groupName tfm _records] : begin
|
define [createMathDerivedSeriesImpl groupName tfm _records] : begin
|
||||||
local { records relSets targetNameMap } : extendRelatedGlyphs groupName _records
|
local { records relSets targetNameMap } : extendRelatedGlyphs groupName _records
|
||||||
local pendingGlyphs : records.map : [record] => record.1
|
local pendingGlyphs : records.map : [record] => record.1
|
||||||
local forked : Fork pendingGlyphs [para.reinit tfm]
|
local forkedPara : para.reinit tfm
|
||||||
|
local forked : Fork pendingGlyphs forkedPara
|
||||||
foreach {unicode glyphid} [items-of records] : if [not : query-glyph targetNameMap.(glyphid)]
|
foreach {unicode glyphid} [items-of records] : if [not : query-glyph targetNameMap.(glyphid)]
|
||||||
create-glyph targetNameMap.(glyphid) unicode : glyph-proc
|
create-glyph targetNameMap.(glyphid) unicode : glyph-proc
|
||||||
if [not : forked.queryByName glyphid] : console.log glyphid
|
if [not : forked.queryByName glyphid] : console.log glyphid
|
||||||
|
|
|
@ -172,14 +172,14 @@ glyph-block Letter-Latin-Lower-M : begin
|
||||||
fine -- (df.mvs * CThin)
|
fine -- (df.mvs * CThin)
|
||||||
|
|
||||||
define [EarlessSingleArchSmallMShape top lbot mbot rbot df] : glyph-proc
|
define [EarlessSingleArchSmallMShape top lbot mbot rbot df] : glyph-proc
|
||||||
include : tagged 'barL' : VBarLeft df.leftSB lbot (XH - DToothlessRise) df.mvs
|
include : tagged 'barL' : VBarLeft df.leftSB lbot (top - DToothlessRise) df.mvs
|
||||||
include : tagged 'barM' : VBar df.middle mbot XH df.mvs
|
include : tagged 'barM' : VBar df.middle mbot top df.mvs
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.rhs df.mvs
|
widths.rhs df.mvs
|
||||||
g4 df.leftSB (XH - DToothlessRise)
|
g4 df.leftSB (top - DToothlessRise)
|
||||||
g4 (df.middle - CorrectionOMidS) (XH - O)
|
g4 (df.middle - CorrectionOMidS) (top - O)
|
||||||
archv
|
archv
|
||||||
flat df.rightSB [Math.max (XH - [SmallMSmooth df]) (rbot + 0.1)]
|
flat df.rightSB [Math.max (top - [SmallMSmooth df]) (rbot + 0.1)]
|
||||||
curl df.rightSB rbot [heading Downward]
|
curl df.rightSB rbot [heading Downward]
|
||||||
|
|
||||||
define SmallMConfig : object
|
define SmallMConfig : object
|
||||||
|
@ -217,7 +217,7 @@ glyph-block Letter-Latin-Lower-M : begin
|
||||||
include : df.markSet.e
|
include : df.markSet.e
|
||||||
include : Body XH 0 [if shortLeg [SmallMShortLegHeight df] 0] [if tailed ([SmallMSmoothHeight df] + O) 0] df
|
include : Body XH 0 [if shortLeg [SmallMShortLegHeight df] 0] [if tailed ([SmallMSmoothHeight df] + O) 0] df
|
||||||
if tailed : include : RightwardTailedBar df.rightSB 0 [SmallMSmoothHeight df] (sw -- df.mvs)
|
if tailed : include : RightwardTailedBar df.rightSB 0 [SmallMSmoothHeight df] (sw -- df.mvs)
|
||||||
include : Serifs df XH 0 [SmallMSmoothHeight df] 0 tailed earless
|
include : Serifs df XH 0 [if shortLeg [SmallMShortLegHeight df] 0] 0 tailed earless
|
||||||
|
|
||||||
create-glyph "capitalSmallM.\(suffix)" : glyph-proc
|
create-glyph "capitalSmallM.\(suffix)" : glyph-proc
|
||||||
local df : dfM
|
local df : dfM
|
||||||
|
@ -225,7 +225,7 @@ glyph-block Letter-Latin-Lower-M : begin
|
||||||
include : df.markSet.capital
|
include : df.markSet.capital
|
||||||
include : Body CAP 0 [if shortLeg [SmallMShortLegHeight df] 0] [if tailed ([SmallMSmoothHeight df] + O) 0] df
|
include : Body CAP 0 [if shortLeg [SmallMShortLegHeight df] 0] [if tailed ([SmallMSmoothHeight df] + O) 0] df
|
||||||
if tailed : include : RightwardTailedBar df.rightSB 0 [SmallMSmoothHeight df] (sw -- df.mvs)
|
if tailed : include : RightwardTailedBar df.rightSB 0 [SmallMSmoothHeight df] (sw -- df.mvs)
|
||||||
include : Serifs df CAP 0 [SmallMSmoothHeight df] 0 tailed earless
|
include : Serifs df CAP 0 [if shortLeg [SmallMShortLegHeight df] 0] 0 tailed earless
|
||||||
|
|
||||||
create-glyph "mLTail.\(suffix)" : glyph-proc
|
create-glyph "mLTail.\(suffix)" : glyph-proc
|
||||||
local df : dfM
|
local df : dfM
|
||||||
|
|
|
@ -40,10 +40,10 @@ async function getParameters() {
|
||||||
const rawVariantsData = await tryParseToml(VARIANTS_TOML);
|
const rawVariantsData = await tryParseToml(VARIANTS_TOML);
|
||||||
const rawLigationData = await tryParseToml(LIGATIONS_TOML);
|
const rawLigationData = await tryParseToml(LIGATIONS_TOML);
|
||||||
|
|
||||||
function reinit(argv) {
|
function createParaImpl(argv) {
|
||||||
let para = Parameters.init(parametersData, argv);
|
let para = Parameters.init(deepClone(parametersData), argv);
|
||||||
VariantData.apply(rawVariantsData, para, argv);
|
VariantData.apply(deepClone(rawVariantsData), para, argv);
|
||||||
ApplyLigationData(rawLigationData, para, argv);
|
ApplyLigationData(deepClone(rawLigationData), para, argv);
|
||||||
|
|
||||||
if (argv.excludedCharRanges) para.excludedCharRanges = argv.excludedCharRanges;
|
if (argv.excludedCharRanges) para.excludedCharRanges = argv.excludedCharRanges;
|
||||||
if (argv.compatibilityLigatures) para.compLig = argv.compatibilityLigatures;
|
if (argv.compatibilityLigatures) para.compLig = argv.compatibilityLigatures;
|
||||||
|
@ -57,9 +57,13 @@ async function getParameters() {
|
||||||
width: argv.menu.width - 0,
|
width: argv.menu.width - 0,
|
||||||
slope: argv.menu.slope
|
slope: argv.menu.slope
|
||||||
};
|
};
|
||||||
|
return para;
|
||||||
|
}
|
||||||
|
|
||||||
|
function reinit(argv) {
|
||||||
|
const para = createParaImpl(argv);
|
||||||
para.reinit = function (tf) {
|
para.reinit = function (tf) {
|
||||||
const argv1 = JSON.parse(JSON.stringify(argv));
|
const argv1 = deepClone(argv);
|
||||||
tf(argv1, argv);
|
tf(argv1, argv);
|
||||||
return reinit(argv1);
|
return reinit(argv1);
|
||||||
};
|
};
|
||||||
|
@ -78,6 +82,10 @@ async function tryParseToml(str) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function deepClone(pod) {
|
||||||
|
return JSON.parse(JSON.stringify(pod));
|
||||||
|
}
|
||||||
|
|
||||||
// Save TTF
|
// Save TTF
|
||||||
async function saveTTF(argv, font) {
|
async function saveTTF(argv, font) {
|
||||||
const sfnt = FontIo.writeFont(font, {
|
const sfnt = FontIo.writeFont(font, {
|
||||||
|
|
|
@ -37,6 +37,8 @@ overshoot = -8 # Vertical overshoot for arcs.
|
||||||
overshootx = -8 # Horizontal overshoot for arcs.
|
overshootx = -8 # Horizontal overshoot for arcs.
|
||||||
oxhook = -2 # Horizontal overshoot for hook tips.
|
oxhook = -2 # Horizontal overshoot for hook tips.
|
||||||
|
|
||||||
|
refJut = 85
|
||||||
|
|
||||||
shoulderfineMin = 0.8
|
shoulderfineMin = 0.8
|
||||||
|
|
||||||
isItalic = false # Use italic shapes?
|
isItalic = false # Use italic shapes?
|
||||||
|
|
|
@ -11,7 +11,6 @@ dotsize = 125 # Size of dots
|
||||||
periodsize = 140 # Size of period
|
periodsize = 140 # Size of period
|
||||||
|
|
||||||
jut = 85 # Length of slab serif
|
jut = 85 # Length of slab serif
|
||||||
refJut = 85 # Reference JUT, used in `m`
|
|
||||||
vjut = 145 # Length of vertical slab serif
|
vjut = 145 # Length of vertical slab serif
|
||||||
longjut = 175 # Length of long serifs, like that in `i`.
|
longjut = 175 # Length of long serifs, like that in `i`.
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue