Fix composition item of ligations

This commit is contained in:
be5invis 2020-10-28 21:57:59 -07:00
parent 13bfc1ccbf
commit e952c58cdc
2 changed files with 12 additions and 25 deletions

View file

@ -81,28 +81,15 @@ function getSsData(variants) {
}
function getDefaultCompData(variants) {
const cDefault = variants.defaultComposite;
const cSlab = variants.composites.get("slab");
return {
sansUpright: buildupComposite(variants, UPRIGHT, variants.defaultComposite).composition,
sansItalic: buildupComposite(variants, ITALIC, variants.defaultComposite).composition,
sansOblique: buildupComposite(variants, OBLIQUE, variants.defaultComposite).composition,
slabUpright: buildupComposite(
variants,
UPRIGHT,
variants.defaultComposite,
variants.composites.get("slab")
).composition,
slabItalic: buildupComposite(
variants,
ITALIC,
variants.defaultComposite,
variants.composites.get("slab")
).composition,
slabOblique: buildupComposite(
variants,
OBLIQUE,
variants.defaultComposite,
variants.composites.get("slab")
).composition
sansUpright: buildupComposite(variants, UPRIGHT, cDefault).composition,
sansItalic: buildupComposite(variants, ITALIC, cDefault).composition,
sansOblique: buildupComposite(variants, OBLIQUE, cDefault).composition,
slabUpright: buildupComposite(variants, UPRIGHT, cDefault, cSlab).composition,
slabItalic: buildupComposite(variants, ITALIC, cDefault, cSlab).composition,
slabOblique: buildupComposite(variants, OBLIQUE, cDefault, cSlab).composition
};
}
@ -119,7 +106,7 @@ function buildupComposite(variants, para, ...composites) {
let hotChars = new Map();
for (const composite of composites) {
for (const [prime, variant] of composite.decompose(para, variants.selectorTree)) {
if (!prime.sampler || isLigatureSampler(prime)) continue;
if (!prime.sampler) continue;
const key = getSelectorKey(prime, variant);
for (const ch of prime.sampler) hotChars.set(ch, key);
compositionMap.set(prime.key, variant.key);