* 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:
be5invis 2021-05-29 15:24:35 -07:00
parent e7f5a065e6
commit d22e4a4df8
6 changed files with 26 additions and 14 deletions

View file

@ -40,10 +40,10 @@ async function getParameters() {
const rawVariantsData = await tryParseToml(VARIANTS_TOML);
const rawLigationData = await tryParseToml(LIGATIONS_TOML);
function reinit(argv) {
let para = Parameters.init(parametersData, argv);
VariantData.apply(rawVariantsData, para, argv);
ApplyLigationData(rawLigationData, para, argv);
function createParaImpl(argv) {
let para = Parameters.init(deepClone(parametersData), argv);
VariantData.apply(deepClone(rawVariantsData), para, argv);
ApplyLigationData(deepClone(rawLigationData), para, argv);
if (argv.excludedCharRanges) para.excludedCharRanges = argv.excludedCharRanges;
if (argv.compatibilityLigatures) para.compLig = argv.compatibilityLigatures;
@ -57,9 +57,13 @@ async function getParameters() {
width: argv.menu.width - 0,
slope: argv.menu.slope
};
return para;
}
function reinit(argv) {
const para = createParaImpl(argv);
para.reinit = function (tf) {
const argv1 = JSON.parse(JSON.stringify(argv));
const argv1 = deepClone(argv);
tf(argv1, argv);
return reinit(argv1);
};
@ -78,6 +82,10 @@ async function tryParseToml(str) {
}
}
function deepClone(pod) {
return JSON.parse(JSON.stringify(pod));
}
// Save TTF
async function saveTTF(argv, font) {
const sfnt = FontIo.writeFont(font, {