Skip to content

@pdfa-lab/fontkit / ArabicShaper

Class: ArabicShaper ​

Defined in: src/open-type/shapers/arabic-shaper.ts:168

This is a shaper for Arabic, and other cursive scripts. It uses data from ArabicShaping.txt in the Unicode database, compiled to a UnicodeTrie by generate-data.coffee.

The shaping state machine was ported from Harfbuzz. https://github.com/behdad/harfbuzz/blob/master/src/hb-ot-shape-complex-arabic.cc

Extends ​

Constructors ​

Constructor ​

new ArabicShaper(): ArabicShaper

Returns ​

ArabicShaper

Inherited from ​

DefaultShaper.constructor

Properties ​

PropertyModifierTypeDefault valueInherited fromDefined in
zeroMarkWidthsstaticstring'AFTER_GPOS'DefaultShaper.zeroMarkWidthssrc/open-type/shapers/default-shaper.ts:32

Methods ​

assignFeatures() ​

protected static assignFeatures<T>(plan, glyphs): void

Defined in: src/open-type/shapers/arabic-shaper.ts:179

Type Parameters ​

Type ParameterDefault type
Tnull

Parameters ​

ParameterType
planShapingPlan<T>
glyphsGlyphInfo<T>[]

Returns ​

void

Overrides ​

DefaultShaper.assignFeatures


plan() ​

static plan<T>(plan, glyphs, features): void

Defined in: src/open-type/shapers/default-shaper.ts:33

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterType
planShapingPlan<T>
glyphsGlyphInfo<T>[]
featuresFeatureFlags

Returns ​

void

Inherited from ​

DefaultShaper.plan


planFeatures() ​

static planFeatures<T>(plan): void

Defined in: src/open-type/shapers/arabic-shaper.ts:169

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterType
planShapingPlan<T>

Returns ​

void

Overrides ​

DefaultShaper.planFeatures


planPostprocessing() ​

static planPostprocessing<T>(plan, userFeatures): void

Defined in: src/open-type/shapers/default-shaper.ts:65

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterType
planShapingPlan<T>
userFeaturesFeatureFlags

Returns ​

void

Inherited from ​

DefaultShaper.planPostprocessing


planPreprocessing() ​

static planPreprocessing<T>(plan): void

Defined in: src/open-type/shapers/default-shaper.ts:54

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterType
planShapingPlan<T>

Returns ​

void

Inherited from ​

DefaultShaper.planPreprocessing