diff --git a/changes/33.2.3.md b/changes/33.2.3.md new file mode 100644 index 000000000..2f6a43000 --- /dev/null +++ b/changes/33.2.3.md @@ -0,0 +1,5 @@ +* Refine shape of the following characters: + - INFORMATION SOURCE (`U+2139`). + - TRIANGLE-HEADED RIGHTWARDS ARROW (`U+279D`). + - HEAVY TRIANGLE-HEADED RIGHTWARDS ARROW (`U+279E`). + - MATHEMATICAL DOUBLE-STRUCK CAPITAL B (`U+1D539`). diff --git a/packages/font-glyphs/src/meta/aesthetics.ptl b/packages/font-glyphs/src/meta/aesthetics.ptl index 266382945..1ec14359e 100644 --- a/packages/font-glyphs/src/meta/aesthetics.ptl +++ b/packages/font-glyphs/src/meta/aesthetics.ptl @@ -190,12 +190,12 @@ export : define [calculateMetrics para] : begin define GeometryStroke : AdviceStroke 4 define ShoulderFine : Math.min (Stroke * para.shoulderFineMin) : AdviceStroke 24 - define [UnicodeWeightGrade n _scl] : begin + define [UnicodeWeightGrade n _scl _swRef] : begin define scl : fallback _scl 1 define kw : 10 - scl - n / 200 define [mulPow s] : (0.25 + s / 8) * [StrokeWidthBlend 2 1] define kMul : [Math.pow (n / 100) : mulPow scl] / [Math.pow 4 : mulPow 2] - define kAdj : GeometryStroke / [AdviceStroke 6] + define kAdj : [fallback _swRef Stroke] / [AdviceStroke 6] return : kMul * kAdj * [AdviceStroke kw] define [AdviceGlottalStopArchDepth y sign] : begin diff --git a/packages/font-glyphs/src/symbol/arrow.ptl b/packages/font-glyphs/src/symbol/arrow.ptl index 4ee1a5637..fef1d80c5 100644 --- a/packages/font-glyphs/src/symbol/arrow.ptl +++ b/packages/font-glyphs/src/symbol/arrow.ptl @@ -987,8 +987,8 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1 define [SquiggleArrowBar kL kR] : begin return : spiro-outline - SquiggleArrowBarSide 0.3 (-0.25) arrowSB arrowRSB kL kR (SymbolMid + arrowSw / 2) - [SquiggleArrowBarSide 0.25 (-0.3) arrowSB arrowRSB kL kR (SymbolMid - arrowSw / 2)].reverse + SquiggleArrowBarSide 0.3 (-0.25) arrowSB arrowRSB kL kR (SymbolMid + halfArrowSw) + [SquiggleArrowBarSide 0.25 (-0.3) arrowSB arrowRSB kL kR (SymbolMid - halfArrowSw)].reverse create-glyph [MangleName 'squiggleArrowLeft'] [MangleUnicode 0x21DC] : glyph-proc set-width MosaicWidth @@ -1006,8 +1006,8 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1 define [LongSquiggleArrowBar kL kR] : begin return : spiro-outline - SquiggleArrowBarSide 0.3 (-0.25) l r kL kR (SymbolMid + arrowSw / 2) - [SquiggleArrowBarSide 0.25 (-0.3) l r kL kR (SymbolMid - arrowSw / 2)].reverse + SquiggleArrowBarSide 0.3 (-0.25) l r kL kR (SymbolMid + halfArrowSw) + [SquiggleArrowBarSide 0.25 (-0.3) l r kL kR (SymbolMid - halfArrowSw)].reverse create-glyph 'longSquiggleArrowLeft' 0x2B33 : glyph-proc set-width MosaicWidth @@ -1062,7 +1062,7 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1 MkArrow [ThickArrowShape 'blackSemiHookR'] [MangleName 'uni27A6'] [MangleUnicode 0x27A6] arrowSB SymbolMid arrowRSB SymbolMid do "Barb arrows" - define BarbHeavyWideHeaded : BarbArrowShape 0.25 : UnicodeWeightGrade 900 MosaicWidthScalar + define BarbHeavyWideHeaded : BarbArrowShape 0.25 : UnicodeWeightGrade 900 MosaicWidthScalar GeometryStroke MkArrow BarbHeavyWideHeaded [MangleName 'uni2794'] [MangleUnicode 0x2794] arrowSB SymbolMid arrowRSB SymbolMid define [BarbGroup prefix b k w] : begin @@ -1105,18 +1105,18 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1 MkArrow [WeightedTrigArrowShape sw w h] [MangleName "\(prefix)Right"] [MangleUnicode : b + 2] arrowSB SymbolMid arrowRSB SymbolMid MkArrow [WeightedTrigArrowShape sw w h] [MangleName "\(prefix)Down"] [MangleUnicode : b + 3] arrowMidX arrowTop arrowMidX arrowBot - TrigGroup 'trigArrowSmallHead' 0x1F800 [UnicodeWeightGrade 300 MosaicWidthScalar] Size.Small.size - TrigGroup 'trigArrowMediumHead' 0x1F804 [UnicodeWeightGrade 500 MosaicWidthScalar] Size.Medium.size - TrigGroup 'trigArrowLargeHead' 0x1F808 [UnicodeWeightGrade 700 MosaicWidthScalar] Size.Large.size - TrigGroup 'trigArrowSmallEqHead' 0x1F810 [UnicodeWeightGrade 300 MosaicWidthScalar] Size.Small.size (Size.Small.size * eqHeight) - TrigGroup 'trigArrowEqHead' 0x1F814 [UnicodeWeightGrade 400 MosaicWidthScalar] 1 eqHeight - TrigGroup 'trigArrowEqHeadHeavy' 0x1F818 [UnicodeWeightGrade 500 MosaicWidthScalar] 1 eqHeight - TrigGroup 'trigArrowLargeEqHeadHeavy' 0x1F81C [UnicodeWeightGrade 700 MosaicWidthScalar] Size.Large.size (Size.Large.size * eqHeight) - TrigGroup 'trigArrowNarrowShaft' 0x1F820 [UnicodeWeightGrade 300 MosaicWidthScalar] 1 - TrigGroup 'trigArrowMediumShaft' 0x1F824 [UnicodeWeightGrade 500 MosaicWidthScalar] 1 - TrigGroup 'trigArrowBoldShaft' 0x1F828 [UnicodeWeightGrade 700 MosaicWidthScalar] 1 - TrigGroup 'trigArrowHeavyShaft' 0x1F82C [UnicodeWeightGrade 900 MosaicWidthScalar] 1 - TrigGroup 'trigArrowVeryHeavyShaft' 0x1F830 [UnicodeWeightGrade 1000 MosaicWidthScalar] 1 + TrigGroup 'trigArrowSmallHead' 0x1F800 [UnicodeWeightGrade 300 MosaicWidthScalar GeometryStroke] Size.Small.size + TrigGroup 'trigArrowMediumHead' 0x1F804 [UnicodeWeightGrade 500 MosaicWidthScalar GeometryStroke] Size.Medium.size + TrigGroup 'trigArrowLargeHead' 0x1F808 [UnicodeWeightGrade 700 MosaicWidthScalar GeometryStroke] Size.Large.size + TrigGroup 'trigArrowSmallEqHead' 0x1F810 [UnicodeWeightGrade 300 MosaicWidthScalar GeometryStroke] Size.Small.size (Size.Small.size * eqHeight) + TrigGroup 'trigArrowEqHead' 0x1F814 [UnicodeWeightGrade 400 MosaicWidthScalar GeometryStroke] 1 eqHeight + TrigGroup 'trigArrowEqHeadHeavy' 0x1F818 [UnicodeWeightGrade 500 MosaicWidthScalar GeometryStroke] 1 eqHeight + TrigGroup 'trigArrowLargeEqHeadHeavy' 0x1F81C [UnicodeWeightGrade 700 MosaicWidthScalar GeometryStroke] Size.Large.size (Size.Large.size * eqHeight) + TrigGroup 'trigArrowNarrowShaft' 0x1F820 [UnicodeWeightGrade 300 MosaicWidthScalar GeometryStroke] 1 + TrigGroup 'trigArrowMediumShaft' 0x1F824 [UnicodeWeightGrade 500 MosaicWidthScalar GeometryStroke] 1 + TrigGroup 'trigArrowBoldShaft' 0x1F828 [UnicodeWeightGrade 700 MosaicWidthScalar GeometryStroke] 1 + TrigGroup 'trigArrowHeavyShaft' 0x1F82C [UnicodeWeightGrade 900 MosaicWidthScalar GeometryStroke] 1 + TrigGroup 'trigArrowVeryHeavyShaft' 0x1F830 [UnicodeWeightGrade 1000 MosaicWidthScalar GeometryStroke] 1 TrigGroup 'fingerPost' 0x1F834 (2 * (trigArrowSize - o)) 1 TrigGroup 'trigArrowHeavy' 0x1F844 (2 * (trigArrowSize - o)) kMedium @@ -1124,12 +1124,12 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1 TrigGroupSquat 'trigArrowCompressed' 0x1F83C (2 * Geom.Size * Size.Small.size) kMedium kSmall TrigGroupSquat 'trigArrowCompressedHeavy' 0x1F840 (2 * Geom.Size * Size.MediumSmall.size) kMedium kSmall - MkArrow [WeightedTrigArrowShape [UnicodeWeightGrade 300 MosaicWidthScalar] 1] [MangleName "uni279D"] [MangleUnicode 0x279D] arrowSB SymbolMid arrowRSB SymbolMid - MkArrow [WeightedTrigArrowShape [UnicodeWeightGrade 700 MosaicWidthScalar] 1] [MangleName "uni279E"] [MangleUnicode 0x279E] arrowSB SymbolMid arrowRSB SymbolMid + MkArrow [WeightedTrigArrowShape [UnicodeWeightGrade 400 MosaicWidthScalar GeometryStroke] 1] [MangleName "uni279D"] [MangleUnicode 0x279D] arrowSB SymbolMid arrowRSB SymbolMid + MkArrow [WeightedTrigArrowShape [UnicodeWeightGrade 900 MosaicWidthScalar GeometryStroke] 1] [MangleName "uni279E"] [MangleUnicode 0x279E] arrowSB SymbolMid arrowRSB SymbolMid MkArrow [WeightedTrigArrowShape (2 * Geom.Size * Size.Medium.size) kMedium kSmall] [MangleName "trigArrowSquatBlackRight"] [MangleUnicode 0x27A7] (arrowMidX - squatRange) SymbolMid (arrowMidX + squatRange) SymbolMid do "Round-stroke arrows" - define sw : UnicodeWeightGrade 900 MosaicWidthScalar + define sw : UnicodeWeightGrade 900 MosaicWidthScalar GeometryStroke MkArrow [RoundArrow.Shape sw] [MangleName 'heavyRoundArrowRight'] [MangleUnicode 0x279C] arrowSB SymbolMid arrowRSB SymbolMid do "Sans-serif Arrows" diff --git a/packages/font-glyphs/src/symbol/geometric/ballot-box.ptl b/packages/font-glyphs/src/symbol/geometric/ballot-box.ptl index b2b4a0bbd..ca02cefcf 100644 --- a/packages/font-glyphs/src/symbol/geometric/ballot-box.ptl +++ b/packages/font-glyphs/src/symbol/geometric/ballot-box.ptl @@ -37,8 +37,8 @@ glyph-block Symbol-Geometric-Ballot-Box : for-width-kinds WideWidth1 define bbGap : Math.max (Geom.Size / 6) [AdviceStroke 5 Geom.Scalar] define swMark : Math.min GeometryStroke : AdviceStroke 5 Geom.Scalar - define lightSwMark : UnicodeWeightGrade 300 Geom.Scalar - define boldSwMark : UnicodeWeightGrade 700 Geom.Scalar + define lightSwMark : UnicodeWeightGrade 300 Geom.Scalar GeometryStroke + define boldSwMark : UnicodeWeightGrade 700 Geom.Scalar GeometryStroke define bbSize : Geom.Size - bbGap - swMark * 0.75 define circXSize : (Geom.Size - bbGap) * Math.SQRT1_2 - swMark * 0.75 diff --git a/packages/font-glyphs/src/symbol/geometric/masked.ptl b/packages/font-glyphs/src/symbol/geometric/masked.ptl index c11dd4e95..2eb0b2a07 100644 --- a/packages/font-glyphs/src/symbol/geometric/masked.ptl +++ b/packages/font-glyphs/src/symbol/geometric/masked.ptl @@ -237,7 +237,7 @@ glyph-block Symbol-Geometric-Masked : for-width-kinds WideWidth1 do "Diamond minus white X" create-glyph [MangleName "blackDiamondMinusWhiteX"] [MangleUnicode 0x2756] : glyph-proc set-width Geom.Width - local gap : Math.max (0.2 * Geom.Size) [UnicodeWeightGrade 400 Geom.Scalar] + local gap : Math.max (0.2 * Geom.Size) [UnicodeWeightGrade 400 Geom.Scalar GeometryStroke] include : difference refer-glyph : MangleName "blackDiamond" dispiro diff --git a/packages/font-glyphs/src/symbol/geometric/plain.ptl b/packages/font-glyphs/src/symbol/geometric/plain.ptl index 75b3b72e0..c02ddd9d7 100644 --- a/packages/font-glyphs/src/symbol/geometric/plain.ptl +++ b/packages/font-glyphs/src/symbol/geometric/plain.ptl @@ -136,12 +136,12 @@ glyph-block Symbol-Geometric-Plain : for-width-kinds WideWidth1 StdBlackShape SquareShape 'blackSquare' 0x25A0 StdWhiteShape SquareShape 'whiteSquare' 0x25A1 - StdWhiteShape SquareShape 'lightWhiteSquare' 0x1F78E {.sw [UnicodeWeightGrade 300 Geom.Scalar]} - StdWhiteShape SquareShape 'mediumWhiteSquare' 0x1F78F {.sw [UnicodeWeightGrade 500 Geom.Scalar]} - StdWhiteShape SquareShape 'boldWhiteSquare' 0x1F790 {.sw [UnicodeWeightGrade 700 Geom.Scalar]} - StdWhiteShape SquareShape 'heavyWhiteSquare' 0x1F791 {.sw [UnicodeWeightGrade 900 Geom.Scalar]} - StdWhiteShape SquareShape 'veryHeavyWhiteSquare' 0x1F792 {.sw [UnicodeWeightGrade 1000 Geom.Scalar]} - StdWhiteShape SquareShape 'exHeavyWhiteSquare' 0x1F793 {.sw [UnicodeWeightGrade 1100 Geom.Scalar]} + StdWhiteShape SquareShape 'lightWhiteSquare' 0x1F78E {.sw [UnicodeWeightGrade 300 Geom.Scalar GeometryStroke]} + StdWhiteShape SquareShape 'mediumWhiteSquare' 0x1F78F {.sw [UnicodeWeightGrade 500 Geom.Scalar GeometryStroke]} + StdWhiteShape SquareShape 'boldWhiteSquare' 0x1F790 {.sw [UnicodeWeightGrade 700 Geom.Scalar GeometryStroke]} + StdWhiteShape SquareShape 'heavyWhiteSquare' 0x1F791 {.sw [UnicodeWeightGrade 900 Geom.Scalar GeometryStroke]} + StdWhiteShape SquareShape 'veryHeavyWhiteSquare' 0x1F792 {.sw [UnicodeWeightGrade 1000 Geom.Scalar GeometryStroke]} + StdWhiteShape SquareShape 'exHeavyWhiteSquare' 0x1F793 {.sw [UnicodeWeightGrade 1100 Geom.Scalar GeometryStroke]} StdBlackShape SquareShape 'blackLargeSquare' 0x2B1B Size.Large StdBlackShape SquareShape 'blackMediumSquare' 0x25FC Size.Medium @@ -161,7 +161,7 @@ glyph-block Symbol-Geometric-Plain : for-width-kinds WideWidth1 StdWhiteContainingBlackShape SquareShape 'whiteSquareWithCenter' 0x25A3 StdWhiteContainingBlackShape SquareShape 'whiteSquareContainingBlackVerySmallSquare' 0x1F794 Size.TinyInner StdWhiteContainingBlackShape SquareShape 'whiteSquareContainingBlackMediumSquare' 0x1F795 Size.MediumInner - StdWhiteContainingBlackShape SquareShape 'heavyWhiteSquareContainingBlackMediumSquare' 0x1CE05 : Object.assign Size.TinyInner {.sw [UnicodeWeightGrade 900 Geom.Scalar]} + StdWhiteContainingBlackShape SquareShape 'heavyWhiteSquareContainingBlackMediumSquare' 0x1CE05 : Object.assign Size.TinyInner {.sw [UnicodeWeightGrade 900 Geom.Scalar GeometryStroke]} StdGeomTargetShape SquareShape 'squareTarget' 0x1F796 @@ -447,7 +447,7 @@ glyph-block Symbol-Geometric-Plain : for-width-kinds WideWidth1 g4 [mix cx [mix cx (cx - size) 0.5] p] [mix cy [mix (cy + size) cy 0.5] p] close - StdWhiteShape DiamondLazongeShape 'whiteConcaveSidedDiamond' 0x27E1 [Object.assign {.} Size.Oblique {.sw (Math.SQRT2 * [UnicodeWeightGrade 600 Geom.Scalar])}] + StdWhiteShape DiamondLazongeShape 'whiteConcaveSidedDiamond' 0x27E1 [Object.assign {.} Size.Oblique {.sw (Math.SQRT2 * [UnicodeWeightGrade 600 Geom.Scalar GeometryStroke])}] StdBlackShape DiamondLazongeShape 'lightFourPointedBlackCusp' 0x2BCC Size.Oblique StdWhiteShape DiamondLazongeShape 'whiteFourPointedBlackCusp' 0x2BCE Size.ObliqueSA @@ -472,12 +472,12 @@ glyph-block Symbol-Geometric-Plain : for-width-kinds WideWidth1 StdBlackShape CircleShape 'blackCircle' 0x25CF StdWhiteShape CircleShape 'whiteCircle' 0x25CB - StdWhiteShape CircleShape 'mediumWhiteCircle' 0x1F785 {.sw [UnicodeWeightGrade 600 Geom.Scalar]} - StdWhiteShape CircleShape 'boldWhiteCircle' 0x1F786 {.sw [UnicodeWeightGrade 700 Geom.Scalar]} - StdWhiteShape CircleShape 'heavyWhiteCircle' 0x1F787 {.sw [UnicodeWeightGrade 900 Geom.Scalar]} - StdWhiteShape CircleShape 'veryHeavyWhiteCircle' 0x1F788 {.sw [UnicodeWeightGrade 1000 Geom.Scalar]} - StdWhiteShape CircleShape 'exHeavyWhiteCircle' 0x1F789 {.sw [UnicodeWeightGrade 1100 Geom.Scalar]} - StdWhiteShape CircleShape 'heavyLargeCircle' 0x2B55 [Object.assign {.sw [UnicodeWeightGrade 900 Geom.Scalar]} Size.Large] + StdWhiteShape CircleShape 'mediumWhiteCircle' 0x1F785 {.sw [UnicodeWeightGrade 600 Geom.Scalar GeometryStroke]} + StdWhiteShape CircleShape 'boldWhiteCircle' 0x1F786 {.sw [UnicodeWeightGrade 700 Geom.Scalar GeometryStroke]} + StdWhiteShape CircleShape 'heavyWhiteCircle' 0x1F787 {.sw [UnicodeWeightGrade 900 Geom.Scalar GeometryStroke]} + StdWhiteShape CircleShape 'veryHeavyWhiteCircle' 0x1F788 {.sw [UnicodeWeightGrade 1000 Geom.Scalar GeometryStroke]} + StdWhiteShape CircleShape 'exHeavyWhiteCircle' 0x1F789 {.sw [UnicodeWeightGrade 1100 Geom.Scalar GeometryStroke]} + StdWhiteShape CircleShape 'heavyLargeCircle' 0x2B55 [Object.assign {.sw [UnicodeWeightGrade 900 Geom.Scalar GeometryStroke]} Size.Large] StdBlackShape CircleShape 'blackVerySmallCircle' null Size.VerySmall StdBlackShape CircleShape 'blackSmallCircle' null Size.Small @@ -572,7 +572,7 @@ glyph-block Symbol-Geometric-Plain : for-width-kinds WideWidth1 define [PentagramSw c] {.sw ([AdviceStroke c : Math.sqrt Geom.Scalar] * [Math.sqrt 5])} StdBlackShape [RegularPolygonFill 5 2 1.1 0] 'blackStar' 0x2605 StdWhiteShape [RegularPolygonFill 5 2 1.1 0] 'whiteStar' 0x2606 [PentagramSw 5.5] - StdWhiteShape [RegularPolygonFill 5 2 1.1 0] 'lightWhiteStar' null {.sw ([UnicodeWeightGrade 300 : Math.sqrt Geom.Scalar] * [Math.sqrt 5])} + StdWhiteShape [RegularPolygonFill 5 2 1.1 0] 'lightWhiteStar' null {.sw ([UnicodeWeightGrade 300 [Math.sqrt Geom.Scalar] GeometryStroke] * [Math.sqrt 5])} StdWhiteShape [RegularPolygonFill 5 2 1.1 0] 'whiteMediumStar' 0x2B50 [Object.assign [PentagramSw 7] Size.Medium] StdBlackShape [RegularPolygonFill 5 2 1.1 0] 'blackSmallStar' 0x2B51 Size.Small StdWhiteShape [RegularPolygonFill 5 2 1.1 0] 'whiteSmallStar' 0x2B52 [Object.assign [PentagramSw 3] Size.Small] diff --git a/packages/font-glyphs/src/symbol/geometric/rotational.ptl b/packages/font-glyphs/src/symbol/geometric/rotational.ptl index 41768224d..477163079 100644 --- a/packages/font-glyphs/src/symbol/geometric/rotational.ptl +++ b/packages/font-glyphs/src/symbol/geometric/rotational.ptl @@ -97,11 +97,11 @@ glyph-block Symbol-Geometric-Rotational : begin for-width-kinds WideWidth1 : begin define Geom : GeometricDim MosaicUnitWidth MosaicWidth - define lightSw : UnicodeWeightGrade 300 Geom.Scalar - define normalSw : UnicodeWeightGrade 400 Geom.Scalar - define semiBoldSw : UnicodeWeightGrade 600 Geom.Scalar - define boldSw : UnicodeWeightGrade 700 Geom.Scalar - define heavySw : UnicodeWeightGrade 900 Geom.Scalar + define lightSw : UnicodeWeightGrade 300 Geom.Scalar GeometryStroke + define normalSw : UnicodeWeightGrade 400 Geom.Scalar GeometryStroke + define semiBoldSw : UnicodeWeightGrade 600 Geom.Scalar GeometryStroke + define boldSw : UnicodeWeightGrade 700 Geom.Scalar GeometryStroke + define heavySw : UnicodeWeightGrade 900 Geom.Scalar GeometryStroke define [for-rotational-pointing sides phase mag gap fn] : begin local shapes {} diff --git a/packages/font-glyphs/src/symbol/geometric/shaded.ptl b/packages/font-glyphs/src/symbol/geometric/shaded.ptl index 0e695bc91..a509d4edd 100644 --- a/packages/font-glyphs/src/symbol/geometric/shaded.ptl +++ b/packages/font-glyphs/src/symbol/geometric/shaded.ptl @@ -140,7 +140,7 @@ glyph-block Symbol-Geometric-Shaded-Narrow : for-width-kinds WideWidth4 define Geom : GeometricDim MosaicUnitWidth MosaicWidth create-glyph [MangleName 'symbolForDeleteFormTwo'] [MangleUnicode 0x2425] : glyph-proc - local sw : UnicodeWeightGrade 300 Geom.Scalar + local sw : UnicodeWeightGrade 300 Geom.Scalar GeometryStroke local gap : 0.75 * sw + [Math.max (Geom.Size * 0.125) (sw / 2)] set-width Geom.Width include : intersection diff --git a/packages/font-glyphs/src/symbol/geometric/stars.ptl b/packages/font-glyphs/src/symbol/geometric/stars.ptl index 8febd9375..b5228d507 100644 --- a/packages/font-glyphs/src/symbol/geometric/stars.ptl +++ b/packages/font-glyphs/src/symbol/geometric/stars.ptl @@ -32,18 +32,18 @@ glyph-block Symbol-Geometric-Stars : for-width-kinds WideWidth1 Geom.MidY + Geom.Size * mag * [Math.cos angle] include : spiro-outline corners - define extThinSw : UnicodeWeightGrade 100 Geom.Scalar - define extLightSw : UnicodeWeightGrade 200 Geom.Scalar - define lightSw : UnicodeWeightGrade 300 Geom.Scalar - define semiLightSw : UnicodeWeightGrade 350 Geom.Scalar - define normalSw : UnicodeWeightGrade 400 Geom.Scalar - define mediumSw : UnicodeWeightGrade 500 Geom.Scalar - define semiBoldSw : UnicodeWeightGrade 600 Geom.Scalar - define boldSw : UnicodeWeightGrade 700 Geom.Scalar - define exBoldSw : UnicodeWeightGrade 800 Geom.Scalar - define heavySw : UnicodeWeightGrade 900 Geom.Scalar - define veryHeavySw : UnicodeWeightGrade 1000 Geom.Scalar - define exHeavySw : UnicodeWeightGrade 1100 Geom.Scalar + define extThinSw : UnicodeWeightGrade 100 Geom.Scalar GeometryStroke + define extLightSw : UnicodeWeightGrade 200 Geom.Scalar GeometryStroke + define lightSw : UnicodeWeightGrade 300 Geom.Scalar GeometryStroke + define semiLightSw : UnicodeWeightGrade 350 Geom.Scalar GeometryStroke + define normalSw : UnicodeWeightGrade 400 Geom.Scalar GeometryStroke + define mediumSw : UnicodeWeightGrade 500 Geom.Scalar GeometryStroke + define semiBoldSw : UnicodeWeightGrade 600 Geom.Scalar GeometryStroke + define boldSw : UnicodeWeightGrade 700 Geom.Scalar GeometryStroke + define exBoldSw : UnicodeWeightGrade 800 Geom.Scalar GeometryStroke + define heavySw : UnicodeWeightGrade 900 Geom.Scalar GeometryStroke + define veryHeavySw : UnicodeWeightGrade 1000 Geom.Scalar GeometryStroke + define exHeavySw : UnicodeWeightGrade 1100 Geom.Scalar GeometryStroke define AsteriskCfg : list * { .name 'saltire' .unicode 0x2613 .sides 4 .phase (1/8) .sw normalSw } diff --git a/packages/font-glyphs/src/symbol/letter.ptl b/packages/font-glyphs/src/symbol/letter.ptl index 060bb17fe..021a1ff96 100644 --- a/packages/font-glyphs/src/symbol/letter.ptl +++ b/packages/font-glyphs/src/symbol/letter.ptl @@ -200,6 +200,7 @@ glyph-block Symbol-Letter : begin glyph-block-import Common-Derivatives glyph-block-import Letter-Latin-X : XStrand glyph-block-import Letter-Shared-Shapes : FlatHookDepth + glyph-block-import Mark-Above : aboveMarkMid alias 'eulerConst' 0x2107 'latn/Epsilon' alias 'scruple' 0x2108 'cyrl/E' @@ -339,7 +340,7 @@ glyph-block Symbol-Letter : begin include : HSerif.lt (Middle - [HSwToV : 0.5 * sw]) XH (LongJut / 2) include : HSerif.lb (Middle - [HSwToV : 0.5 * sw]) 0 (LongJut / 2) include : HSerif.rb (Middle + [HSwToV : 0.5 * sw]) 0 (LongJut / 2) - include : DotAt Middle (XH + AccentStackOffset) (DotRadius * sw / Stroke) + include : DotAt Middle aboveMarkMid (DotRadius * sw / Stroke) turned 'turnAmpersand' 0x214B 'ampersand' Middle (CAP / 2) diff --git a/packages/font-glyphs/src/symbol/pictograph/checking-marks.ptl b/packages/font-glyphs/src/symbol/pictograph/checking-marks.ptl index 177407712..0404940f1 100644 --- a/packages/font-glyphs/src/symbol/pictograph/checking-marks.ptl +++ b/packages/font-glyphs/src/symbol/pictograph/checking-marks.ptl @@ -11,9 +11,8 @@ glyph-block Symbol-Pictograph-Checking-Marks : begin for-width-kinds WideWidth1 : do define Geom : GeometricDim MosaicUnitWidth MosaicWidth - define lightSw : UnicodeWeightGrade 300 Geom.Scalar - # define mediumSw : UnicodeWeightGrade 500 Geom.Scalar - define heavySw : UnicodeWeightGrade 900 Geom.Scalar + define lightSw : UnicodeWeightGrade 300 Geom.Scalar GeometryStroke + define heavySw : UnicodeWeightGrade 900 Geom.Scalar GeometryStroke define ptMaxWidth : MosaicWidth - SB define ptHeight0 : 1.5 * (Width - SB / 2) * ((MosaicWidth / MosaicUnitWidth) ** (1 / 4)) @@ -70,9 +69,9 @@ glyph-block Symbol-Pictograph-Checking-Marks : begin do "Decorative angular brackets" define Geom : GeometricDim Width Width - define mediumSw : UnicodeWeightGrade 500 Geom.Scalar - define heavySw : UnicodeWeightGrade 900 Geom.Scalar - define xHeavySw : UnicodeWeightGrade 1100 Geom.Scalar + define mediumSw : UnicodeWeightGrade 500 Geom.Scalar GeometryStroke + define heavySw : UnicodeWeightGrade 900 Geom.Scalar GeometryStroke + define xHeavySw : UnicodeWeightGrade 1100 Geom.Scalar GeometryStroke define HeightConfig : object # suffix width scale height scale diff --git a/packages/font-glyphs/src/symbol/pictograph/clock.ptl b/packages/font-glyphs/src/symbol/pictograph/clock.ptl index 4c4d14a2a..c934ad4ca 100644 --- a/packages/font-glyphs/src/symbol/pictograph/clock.ptl +++ b/packages/font-glyphs/src/symbol/pictograph/clock.ptl @@ -16,9 +16,9 @@ glyph-block Symbol-Geometric-Clock : for-width-kinds WideWidth1 define pMin 0.8 define pSec 0.9 - define extLightSw : UnicodeWeightGrade 200 Geom.Scalar - define lightSw : UnicodeWeightGrade 300 Geom.Scalar - define mediumSw : UnicodeWeightGrade 500 Geom.Scalar + define extLightSw : UnicodeWeightGrade 200 Geom.Scalar GeometryStroke + define lightSw : UnicodeWeightGrade 300 Geom.Scalar GeometryStroke + define mediumSw : UnicodeWeightGrade 500 Geom.Scalar GeometryStroke define dotSize : Math.max (0.6 * mediumSw) (0.1 * Geom.Size) diff --git a/packages/font-glyphs/src/symbol/pictograph/cross.ptl b/packages/font-glyphs/src/symbol/pictograph/cross.ptl index 5d8d53158..bbe304ac8 100644 --- a/packages/font-glyphs/src/symbol/pictograph/cross.ptl +++ b/packages/font-glyphs/src/symbol/pictograph/cross.ptl @@ -13,9 +13,9 @@ glyph-block Symbol-Cross : for-width-kinds WideWidth1 define Geom : GeometricDim MosaicUnitWidth MosaicWidth define Size : GeometricSizes Geom - define normalSw : UnicodeWeightGrade 400 Geom.Scalar - define mediumSw : UnicodeWeightGrade 500 Geom.Scalar - define heavySw : UnicodeWeightGrade 900 Geom.Scalar + define normalSw : UnicodeWeightGrade 400 Geom.Scalar GeometryStroke + define mediumSw : UnicodeWeightGrade 500 Geom.Scalar GeometryStroke + define heavySw : UnicodeWeightGrade 900 Geom.Scalar GeometryStroke define pBottom 2 define pShortBar 0.6