Add
- BLACK DIAMOND MINUS WHITE X (`U+2756`) (#1960). - WHITE CONCAVE-SIDED DIAMOND (`U+27E1`) (#1960). - LIGHT FOUR POINTED BLACK CUSP (`U+2BCC`) (#1960). - WHITE FOUR POINTED CUSP (`U+2BCE`) (#1960).
This commit is contained in:
parent
58c71fdca7
commit
0950a86c20
4 changed files with 63 additions and 26 deletions
|
@ -1,5 +1,9 @@
|
|||
* Add characters:
|
||||
- BLACK DIAMOND MINUS WHITE X (`U+2756`) (#1960).
|
||||
- WHITE CONCAVE-SIDED DIAMOND (`U+27E1`) (#1960).
|
||||
- LEFT BARB UP RIGHT BARB UP HARPOON (`U+294E`) ... UP BARB LEFT DOWN BARB LEFT HARPOON (`U+2951`).
|
||||
- LIGHT FOUR POINTED BLACK CUSP (`U+2BCC`) (#1960).
|
||||
- WHITE FOUR POINTED CUSP (`U+2BCE`) (#1960).
|
||||
* Add support for specialized Vietnamese dual diacritics (#1935).
|
||||
* Make bowl height of Cyrillic Yat and Tall Yat (`U+0463`, `U+1C67`) consistent (#1945).
|
||||
* Make Guillemets (`«`, `»`) curly for Default Slab.
|
||||
|
|
|
@ -210,31 +210,18 @@ glyph-block Symbol-Geometric-Masked : for-width-kinds WideWidth1
|
|||
if T [VBar.m Geom.MidX (Geom.MidY + Geom.Size - hv) (Geom.MidY - hv) s] [glyph-proc]
|
||||
if B [VBar.m Geom.MidX (Geom.MidY - Geom.Size + hv) (Geom.MidY + hv) s] [glyph-proc]
|
||||
|
||||
do "Miscellaneous"
|
||||
create-glyph [MangleName 'uni2389'] [MangleUnicode 0x2389] : glyph-proc
|
||||
define shiftUp : ApparentTranslate 0
|
||||
Math.max
|
||||
0.5 * [Math.sqrt 2] * Size.MediumSmall.sw
|
||||
Geom.Size * (1 - Size.MediumSmall.size)
|
||||
|
||||
do "Diamond minus white X"
|
||||
create-glyph [MangleName "blackDiamondMinusWhiteX"] [MangleUnicode 0x2756] : glyph-proc
|
||||
set-width Geom.Width
|
||||
include : refer-glyph : MangleName 'whiteCircle'
|
||||
include : intersection
|
||||
refer-glyph : MangleName 'blackCircleO'
|
||||
union
|
||||
difference
|
||||
HBar.m 0 Geom.Width Geom.MidY GeometryStroke
|
||||
with-transform [ApparentTranslate 0 0.01] : with-transform shiftUp : refer-glyph : MangleName 'blackMediumEqualDiamond'
|
||||
intersection
|
||||
MaskBelow (Geom.MidY + GeometryStroke / 2)
|
||||
with-transform shiftUp : refer-glyph : MangleName 'whiteMediumEqualDiamond'
|
||||
|
||||
create-glyph [MangleName 'uni238A'] [MangleUnicode 0x238A] : glyph-proc
|
||||
set-width Geom.Width
|
||||
include : refer-glyph : MangleName 'whiteCircle'
|
||||
include : intersection
|
||||
refer-glyph : MangleName 'blackCircleO'
|
||||
refer-glyph : MangleName 'whiteEqualTriangleDown'
|
||||
local gap : Math.max (0.2 * Geom.Size) [UnicodeWeightGrade 4 Geom.Scalar]
|
||||
include : difference
|
||||
refer-glyph : MangleName "blackDiamond"
|
||||
dispiro
|
||||
flat (Geom.MidX - Geom.Size) (Geom.MidY - Geom.Size) [widths.center gap]
|
||||
curl (Geom.MidX + Geom.Size) (Geom.MidY + Geom.Size)
|
||||
dispiro
|
||||
flat (Geom.MidX + Geom.Size) (Geom.MidY - Geom.Size) [widths.center gap]
|
||||
curl (Geom.MidX - Geom.Size) (Geom.MidY + Geom.Size)
|
||||
|
||||
do "Moon Phases"
|
||||
alias [MangleName 'newMoon'] [MangleUnicode 0x1F311] [MangleName 'blackCircle']
|
||||
|
@ -282,3 +269,29 @@ glyph-block Symbol-Geometric-Masked : for-width-kinds WideWidth1
|
|||
composite-proc
|
||||
WaxingMoonMask
|
||||
FlipAround Geom.MidX Geom.MidY
|
||||
|
||||
do "Miscellaneous"
|
||||
create-glyph [MangleName 'uni2389'] [MangleUnicode 0x2389] : glyph-proc
|
||||
define shiftUp : ApparentTranslate 0
|
||||
Math.max
|
||||
0.5 * [Math.sqrt 2] * Size.MediumSmall.sw
|
||||
Geom.Size * (1 - Size.MediumSmall.size)
|
||||
|
||||
set-width Geom.Width
|
||||
include : refer-glyph : MangleName 'whiteCircle'
|
||||
include : intersection
|
||||
refer-glyph : MangleName 'blackCircleO'
|
||||
union
|
||||
difference
|
||||
HBar.m 0 Geom.Width Geom.MidY GeometryStroke
|
||||
with-transform [ApparentTranslate 0 0.01] : with-transform shiftUp : refer-glyph : MangleName 'blackMediumEqualDiamond'
|
||||
intersection
|
||||
MaskBelow (Geom.MidY + GeometryStroke / 2)
|
||||
with-transform shiftUp : refer-glyph : MangleName 'whiteMediumEqualDiamond'
|
||||
|
||||
create-glyph [MangleName 'uni238A'] [MangleUnicode 0x238A] : glyph-proc
|
||||
set-width Geom.Width
|
||||
include : refer-glyph : MangleName 'whiteCircle'
|
||||
include : intersection
|
||||
refer-glyph : MangleName 'blackCircleO'
|
||||
refer-glyph : MangleName 'whiteEqualTriangleDown'
|
||||
|
|
|
@ -394,7 +394,7 @@ glyph-block Symbol-Geometric-Plain : for-width-kinds WideWidth1
|
|||
|
||||
do "Square-lozenge"
|
||||
define [SquareLozengeShape cx cy size] : begin
|
||||
define p 0.8
|
||||
define p 0.7
|
||||
return : spiro-outline
|
||||
corner (cx - size) (cy + size)
|
||||
g4 cx (cy + p * size)
|
||||
|
@ -410,6 +410,24 @@ glyph-block Symbol-Geometric-Plain : for-width-kinds WideWidth1
|
|||
StdWhiteShape SquareLozengeShape 'rotatedWhiteFourPointedCusp' 0x2BCF Size.MediumOblique
|
||||
StdBlackShape SquareLozengeShape 'rotatedBlackFourPointedCusp' 0x2BCD Size.MediumOblique
|
||||
|
||||
do "Diamond-lozenge"
|
||||
define [DiamondLazongeShape cx cy size] : begin
|
||||
define p 0.7
|
||||
return : spiro-outline
|
||||
corner (cx - size) cy
|
||||
g4 [mix cx [mix (cx - size) cx 0.5] p] [mix cy [mix cy (cy - size) 0.5] p]
|
||||
corner cx (cy - size)
|
||||
g4 [mix cx [mix cx (cx + size) 0.5] p] [mix cy [mix (cy - size) cy 0.5] p]
|
||||
corner (cx + size) cy
|
||||
g4 [mix cx [mix (cx + size) cx 0.5] p] [mix cy [mix cy (cy + size) 0.5] p]
|
||||
corner cx (cy + size)
|
||||
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.sqrt 2] * [UnicodeWeightGrade 6 Geom.Scalar])}]
|
||||
StdBlackShape DiamondLazongeShape 'lightFourPointedBlackCusp' 0x2BCC Size.Oblique
|
||||
StdWhiteShape DiamondLazongeShape 'whiteFourPointedBlackCusp' 0x2BCE Size.ObliqueSA
|
||||
|
||||
do "Circle"
|
||||
define [CircleShape cx cy size] : spiro-outline
|
||||
g4 (cx - size) cy
|
||||
|
|
|
@ -45,13 +45,15 @@ glyph-block Symbol-Geometric-Shared : begin
|
|||
VerySmall {.size DesignParameters.geometric_very_small_x .sw [Math.min GeometryStroke : AdviceStroke 7 Geom.Scalar]}
|
||||
Tiny {.size DesignParameters.geometric_tiny_x .sw [Math.min GeometryStroke : AdviceStroke 8 Geom.Scalar]}
|
||||
|
||||
Oblique { .sw [Math.min GeometryStroke : AdviceStroke 4.75 Geom.Scalar] }
|
||||
Oblique { .sw [Math.min GeometryStroke : AdviceStroke 4.75 Geom.Scalar] }
|
||||
MediumOblique { .size DesignParameters.geometric_medium_x .sw [Math.min GeometryStroke : AdviceStroke 4.75 Geom.Scalar] }
|
||||
MediumSmallOblique { .size DesignParameters.geometric_medium_small_x .sw [Math.min GeometryStroke : AdviceStroke 5.25 Geom.Scalar] }
|
||||
SmallOblique { .size DesignParameters.geometric_small_x .sw [Math.min GeometryStroke : AdviceStroke 6.25 Geom.Scalar] }
|
||||
VerySmallOblique { .size DesignParameters.geometric_very_small_x .sw [Math.min GeometryStroke : AdviceStroke 7.25 Geom.Scalar] }
|
||||
TinyOblique { .size DesignParameters.geometric_tiny_x .sw [Math.min GeometryStroke : AdviceStroke 8.25 Geom.Scalar] }
|
||||
|
||||
ObliqueSA { .sw ([Math.sqrt 2] * [Math.min GeometryStroke : AdviceStroke 4.75 Geom.Scalar]) }
|
||||
|
||||
TinyInner { .innerSize (1 / 4) }
|
||||
SmallInner { .innerSize (1 / 3) }
|
||||
MediumInner { .innerSize (2 / 3) }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue