parent
e1eeffd0d5
commit
d0201136f7
2 changed files with 109 additions and 20 deletions
|
@ -13,21 +13,24 @@
|
|||
- `five`.`oblique-arched` → `five`.`oblique-arched-serifless`
|
||||
- `five`.`oblique-flat` → `five`.`oblique-flat-serifless`
|
||||
* Add characters:
|
||||
- LOWER HORIZONTAL RULER SEGMENT (U+1CC05) (Purposed for Unicode 16; L2/21-235).
|
||||
- RIGHT VERTICAL RULER SEGMENT (U+1CC06) (Purposed for Unicode 16; L2/21-235).
|
||||
- LOWER RIGHT RULER SEGMENT (U+1CC07) (Purposed for Unicode 16; L2/21-235).
|
||||
- BOX DRAWINGS LIGHT HORIZONTAL AND UPPER RIGHT (U+1CC1B) ... BOX DRAWINGS LIGHT BOTTOM AND LOWER LEFT (U+1CC1E) (Purposed for Unicode 16; L2/21-235).
|
||||
- BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT (U+1FBD8) ... BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO LOWER LEFT (U+1FBDB) (Purposed for Unicode 16; L2/21-235).
|
||||
- SEPARATED BLOCK QUADRANT-1 (U+1CC21) ... SEPARATED BLOCK QUADRANT-1234 (U+1CC2F) (Purposed for Unicode 16; L2/21-235).
|
||||
- BLACK NEUTRAL FACE (U+1CC6F) (Purposed for Unicode 16; L2/21-235).
|
||||
- VERTICAL LINE WITH FOUR TICK MARKS (U+1CC90) (Purposed for Unicode 16; L2/21-235).
|
||||
- HORIZONTAL LINE WITH FOUR TICK MARKS (U+1CC91) (Purposed for Unicode 16; L2/21-235).
|
||||
- SEPARATED BLOCK SEXTANT-1 (U+1CE51) ... SEPARATED BLOCK SEXTANT-123456 (U+1CE8F) (Purposed for Unicode 16; L2/21-235).
|
||||
- UPPER LEFT ONE SIXTEENTH BLOCK (U+1CE90) ... LOWER HALF RIGHT ONE QUARTER BLOCK (U+1CEAF) (Purposed for Unicode 16; L2/21-235).
|
||||
- FOLDER (U+1F5C0) (#2181).
|
||||
- NEGATIVE SQUARED LEFTWARDS ARROW (U+1F8B4) ... NEGATIVE SQUARED DOWNWARDS ARROW (U+1F8B7) (Purposed for Unicode 16; L2/21-235).
|
||||
- LEFT TWO THIRDS BLOCK (U+1FBCE) (Purposed for Unicode 16; L2/21-235).
|
||||
- LEFT ONE THIRD BLOCK (U+1FBCF) (Purposed for Unicode 16; L2/21-235).
|
||||
- UPPER CENTRE ONE QUARTER BLOCK (U+1FBE4) ... MIDDLE RIGHT ONE QUARTER BLOCK (U+1FBE7) (Purposed for Unicode 16; L2/21-235).
|
||||
- UPWARDS WHITE ARROW FROM BAR (`U+21EA`) ... RIGHTWARDS WHITE ARROW FROM WALL (`U+21F0`).
|
||||
- RETURN SYMBOL (`U+23CE`).
|
||||
- UPWARDS WHITE ARROW FROM BAR WITH HORIZONTAL BAR (`U+2BB8`).
|
||||
- LOWER HORIZONTAL RULER SEGMENT (`U+1CC05`) (Purposed for Unicode 16; L2/21-235).
|
||||
- RIGHT VERTICAL RULER SEGMENT (`U+1CC06`) (Purposed for Unicode 16; L2/21-235).
|
||||
- LOWER RIGHT RULER SEGMENT (`U+1CC07`) (Purposed for Unicode 16; L2/21-235).
|
||||
- BOX DRAWINGS LIGHT HORIZONTAL AND UPPER RIGHT (`U+1CC1B`) ... BOX DRAWINGS LIGHT BOTTOM AND LOWER LEFT (`U+1CC1E`) (Purposed for Unicode 16; L2/21-235).
|
||||
- BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT (`U+1FBD8`) ... BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO LOWER LEFT (`U+1FBDB`) (Purposed for Unicode 16; L2/21-235).
|
||||
- SEPARATED BLOCK QUADRANT-1 (`U+1CC21`) ... SEPARATED BLOCK QUADRANT-1234 (`U+1CC2F`) (Purposed for Unicode 16; L2/21-235).
|
||||
- BLACK NEUTRAL FACE (`U+1CC6F`) (Purposed for Unicode 16; L2/21-235).
|
||||
- VERTICAL LINE WITH FOUR TICK MARKS (`U+1CC90`) (Purposed for Unicode 16; L2/21-235).
|
||||
- HORIZONTAL LINE WITH FOUR TICK MARKS (`U+1CC91`) (Purposed for Unicode 16; L2/21-235).
|
||||
- SEPARATED BLOCK SEXTANT-1 (`U+1CE51`) ... SEPARATED BLOCK SEXTANT-123456 (`U+1CE8F`) (Purposed for Unicode 16; L2/21-235).
|
||||
- UPPER LEFT ONE SIXTEENTH BLOCK (`U+1CE90`) ... LOWER HALF RIGHT ONE QUARTER BLOCK (`U+1CEAF`) (Purposed for Unicode 16; L2/21-235).
|
||||
- FOLDER (`U+1F5C0`) (#2181).
|
||||
- NEGATIVE SQUARED LEFTWARDS ARROW (`U+1F8B4`) ... NEGATIVE SQUARED DOWNWARDS ARROW (`U+1F8B7`) (Purposed for Unicode 16; L2/21-235).
|
||||
- LEFT TWO THIRDS BLOCK (`U+1FBCE`) (Purposed for Unicode 16; L2/21-235).
|
||||
- LEFT ONE THIRD BLOCK (`U+1FBCF`) (Purposed for Unicode 16; L2/21-235).
|
||||
- UPPER CENTRE ONE QUARTER BLOCK (`U+1FBE4`) ... MIDDLE RIGHT ONE QUARTER BLOCK (`U+1FBE7`) (Purposed for Unicode 16; L2/21-235).
|
||||
* Fix a disjoint stroke of Outlined Curly `Z` under some weights (#2195).
|
||||
* Unify diagonal box drawings' angles (#2197).
|
||||
|
|
|
@ -37,9 +37,9 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
define arrowDiagBot : mix arrowMidX arrowBot diagPropY
|
||||
define arrowDiagTop : mix arrowMidX arrowTop diagPropY
|
||||
|
||||
define [ArrowBar x1 y1 x2 y2 halfSw w] : begin
|
||||
define [ArrowBar x1 y1 x2 y2 halfSw w _offset] : begin
|
||||
return : PointingTo x1 y1 x2 y2 : lambda [mag] : begin
|
||||
local p : (mag - o - halfSw * [fallback w 1.1]) / mag
|
||||
local p : (mag - [fallback _offset : o + halfSw * [fallback w 1.1]]) / mag
|
||||
dispiro
|
||||
widths.center (halfSw * 2)
|
||||
flat (mag * (1 - p)) 0
|
||||
|
@ -162,6 +162,19 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
corner length (width - o)
|
||||
corner length (-width + o)
|
||||
|
||||
define [TriangleArrowHeadBar x1 y1 x2 y2 width sw _length] : begin
|
||||
local length : fallback _length width
|
||||
return : new-glyph : PointingTo x1 y1 x2 y2 : lambda [mag] : intersection
|
||||
spiro-outline
|
||||
corner o 0
|
||||
corner length (width - o)
|
||||
corner length (-width + o)
|
||||
Rect width (-width) (length / 2 - sw / 2) (length / 2 + sw / 2)
|
||||
|
||||
define [RectangleArrowTail x1 y1 x2 y2 width _length _width2] : begin
|
||||
local length : fallback _length width
|
||||
return : new-glyph : PointingTo x1 y1 x2 y2 : lambda [mag] : Rect width (-[fallback _width2 width]) 0 length
|
||||
|
||||
define [ArrowShape x1 y1 x2 y2 size] : glyph-proc
|
||||
include : ArrowHead x1 y1 x2 y2 size
|
||||
include : ArrowBar x1 y1 x2 y2 halfArrowSw
|
||||
|
@ -228,15 +241,24 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
local headLen : MosaicUnitWidth * [Math.sqrt MosaicWidthScalar] * 0.4
|
||||
local halfBarWidth : headLen / 3
|
||||
local headWidth : halfBarWidth * 2
|
||||
|
||||
local fine : Math.min [AdviceStroke 5] (halfBarWidth * 0.6)
|
||||
|
||||
local turnWidth : headWidth * 1.5
|
||||
local barLen : headLen * 0.2 + fine * 2
|
||||
local dotGap : barLen - fine * 2
|
||||
local doubleHeadOffset : headLen * 0.4
|
||||
|
||||
local mag : Math.hypot (y2 - y1) (x2 - x1)
|
||||
local p : (mag - fine) / mag
|
||||
local p2 : (mag - fine * [Math.sqrt 13] / 2) / mag
|
||||
local innerHeaderLengthShrink : fine * (1 + [Math.sqrt 13] / 2)
|
||||
local p3 : (mag - doubleHeadOffset) / mag
|
||||
local p4 : (mag - fine * [Math.sqrt 13] / 2 - doubleHeadOffset) / mag
|
||||
|
||||
local x1a : mix x1 x2 (1 - p)
|
||||
local y1a : mix y1 y2 (1 - p)
|
||||
local x2FlatA : mix x1 x2 p
|
||||
local y2FlatA : mix y1 y2 p
|
||||
local x2a : mix x1 x2 p2
|
||||
local y2a : mix y1 y2 p2
|
||||
local x1CoA : mix x1 x2 (-0.05)
|
||||
|
@ -259,6 +281,55 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
TriangleArrowHead x1CoA y1CoA x2a y2a (headWidth - innerHeaderLengthShrink * headWidth / headLen) (headLen - innerHeaderLengthShrink)
|
||||
ArrowBar x1CoA y1CoA x2a y2a (halfBarWidth - fine / 2) 2
|
||||
|
||||
[Just "white-closing"] : difference
|
||||
ArrowBar x1 y1 x2 y2 (halfBarWidth + fine / 2) 0 0
|
||||
ArrowBar x1CoA y1CoA x2FlatA y2FlatA (halfBarWidth - fine / 2) 0 0
|
||||
|
||||
[Just "whiteDouble"] : difference
|
||||
union
|
||||
difference
|
||||
TriangleArrowHead x1 y1 x2 y2 headWidth headLen
|
||||
TriangleArrowHead x1a y1a x2a y2a (headWidth - innerHeaderLengthShrink * headWidth / headLen) (headLen - innerHeaderLengthShrink)
|
||||
TriangleArrowHead x1 y1 [mix x1 x2 p3] [mix y1 y2 p3] headWidth headLen
|
||||
ArrowBar x1 y1 [mix x1 x2 p3] [mix y1 y2 p3] (halfBarWidth + fine / 2) 2
|
||||
union
|
||||
TriangleArrowHead x1a y1a [mix x1 x2 p4] [mix y1 y2 p4] (headWidth - innerHeaderLengthShrink * headWidth / headLen) (headLen - innerHeaderLengthShrink)
|
||||
ArrowBar x1CoA y1CoA [mix x1 x2 p4] [mix y1 y2 p4] (halfBarWidth - fine / 2) 2
|
||||
|
||||
[Just "whiteBarred"] : union
|
||||
difference
|
||||
union
|
||||
TriangleArrowHead x1 y1 x2 y2 headWidth headLen
|
||||
ArrowBar x1 y1 x2 y2 (halfBarWidth + fine / 2) 2
|
||||
union
|
||||
TriangleArrowHead x1CoA y1CoA x2a y2a (headWidth - innerHeaderLengthShrink * headWidth / headLen) (headLen - innerHeaderLengthShrink)
|
||||
ArrowBar x1CoA y1CoA x2a y2a (halfBarWidth - fine / 2) 2
|
||||
TriangleArrowHeadBar x1 y1 x2 y2 headWidth fine headLen
|
||||
|
||||
[Just "whiteDot"] : difference
|
||||
union
|
||||
RectangleArrowTail x1 y1 x2 y2 (halfBarWidth + fine / 2) barLen
|
||||
ArrowBar x1 y1 x2 y2 (halfBarWidth + fine / 2) 0 (barLen + dotGap)
|
||||
union
|
||||
RectangleArrowTail x1a y1a x2FlatA y2FlatA (halfBarWidth - fine / 2) (barLen - fine * 2)
|
||||
ArrowBar x1CoA y1CoA x2FlatA y2FlatA (halfBarWidth - fine / 2) 0 (barLen + dotGap)
|
||||
|
||||
[Just "whiteRect"] : difference
|
||||
union
|
||||
RectangleArrowTail x1 y1 x2 y2 headWidth barLen
|
||||
ArrowBar x1 y1 x2 y2 (halfBarWidth + fine / 2) 0.5
|
||||
union
|
||||
RectangleArrowTail x1a y1a x2FlatA y2FlatA (headWidth - fine) (barLen - fine * 2)
|
||||
ArrowBar x1CoA y1CoA x2FlatA y2FlatA (halfBarWidth - fine / 2) 0.5
|
||||
|
||||
[Just "whiteLeftTurn"] : difference
|
||||
union
|
||||
RectangleArrowTail x1 y1 x2 y2 (halfBarWidth + fine / 2) (halfBarWidth * 2 + fine * 1.5) turnWidth
|
||||
ArrowBar x1 y1 x2 y2 (halfBarWidth + fine / 2) 1
|
||||
union
|
||||
RectangleArrowTail x1a y1a x2FlatA y2FlatA (halfBarWidth - fine / 2) (halfBarWidth * 2 - fine / 2) (turnWidth - fine)
|
||||
ArrowBar x1CoA y1CoA x2FlatA y2FlatA (halfBarWidth - fine / 2) 1
|
||||
|
||||
[Just "black"] : union
|
||||
TriangleArrowHead x1 y1 x2 y2 headWidth headLen
|
||||
ArrowBar x1 y1 x2 y2 halfBarWidth 2
|
||||
|
@ -756,6 +827,15 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
DoubleArrow [ThickArrowShape 'white-open'] [MangleName 'uni2B04'] [MangleUnicode 0x2B04] arrowSB SymbolMid arrowRSB SymbolMid
|
||||
DoubleArrow [ThickArrowShape 'white-open'] [MangleName 'uni21F3'] [MangleUnicode 0x21F3] arrowMidX arrowBot arrowMidX arrowTop
|
||||
|
||||
DoubleArrow2 [ThickArrowShape 'whiteDot'] [ThickArrowShape 'white-open'] [MangleName 'uni21EA'] [MangleUnicode 0x21EA] arrowMidX arrowBot arrowMidX arrowTop
|
||||
DoubleArrow2 [ThickArrowShape 'whiteRect'] [ThickArrowShape 'white-open'] [MangleName 'uni21EB'] [MangleUnicode 0x21EB] arrowMidX arrowBot arrowMidX arrowTop
|
||||
DoubleArrow2 [ThickArrowShape 'whiteRect'] [ThickArrowShape 'whiteBarred'] [MangleName 'uni21EC'] [MangleUnicode 0x21EC] arrowMidX arrowBot arrowMidX arrowTop
|
||||
DoubleArrow2 [ThickArrowShape 'white-closing'] [ThickArrowShape 'whiteDouble'] [MangleName 'uni21EE'] [MangleUnicode 0x21EE] arrowMidX arrowBot arrowMidX arrowTop
|
||||
DoubleArrow2 [ThickArrowShape 'whiteRect'] [ThickArrowShape 'whiteDouble'] [MangleName 'uni21EF'] [MangleUnicode 0x21EF] arrowMidX arrowBot arrowMidX arrowTop
|
||||
DoubleArrow2 [ThickArrowShape 'whiteRect'] [ThickArrowShape 'white-open'] [MangleName 'uni21F0'] [MangleUnicode 0x21F0] arrowSB SymbolMid arrowRSB SymbolMid
|
||||
DoubleArrow2 [ThickArrowShape 'whiteDot'] [ThickArrowShape 'whiteBarred'] [MangleName 'uni2BB8'] [MangleUnicode 0x2BB8] arrowMidX arrowBot arrowMidX arrowTop
|
||||
DoubleArrow2 [ThickArrowShape 'whiteLeftTurn'] [ThickArrowShape 'white-open'] [MangleName 'uni23CE'] [MangleUnicode 0x23CE] arrowRSB SymbolMid arrowSB SymbolMid
|
||||
|
||||
MkArrow [ThickArrowShape 'black'] [MangleName 'uni2B05'] [MangleUnicode 0x2B05] arrowRSB SymbolMid arrowSB SymbolMid
|
||||
MkArrow [ThickArrowShape 'black'] [MangleName 'uni2B06'] [MangleUnicode 0x2B06] arrowMidX arrowBot arrowMidX arrowTop
|
||||
MkArrow [ThickArrowShape 'black'] [MangleName 'uni27A1'] [MangleUnicode 0x27A1] arrowSB SymbolMid arrowRSB SymbolMid
|
||||
|
@ -768,6 +848,12 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
DoubleArrow [ThickArrowShape 'black'] [MangleName 'uni2B0C'] [MangleUnicode 0x2B0C] arrowSB SymbolMid arrowRSB SymbolMid
|
||||
DoubleArrow [ThickArrowShape 'black'] [MangleName 'uni2B0D'] [MangleUnicode 0x2B0D] arrowMidX arrowBot arrowMidX arrowTop
|
||||
|
||||
create-glyph [MangleName 'uni21ED'] [MangleUnicode 0x21ED] : composite-proc
|
||||
refer-glyph : MangleName 'uni21EB'
|
||||
intersection
|
||||
refer-glyph : MangleName 'uni2B06'
|
||||
Rect arrowTop arrowBot (arrowMidX - [AdviceStroke 5] / 2) (arrowMidX + [AdviceStroke 5] / 2)
|
||||
|
||||
MkArrow [ThickArrowShape 'blackSemiHookL'] [MangleName 'uni27A5'] [MangleUnicode 0x27A5] arrowSB SymbolMid arrowRSB SymbolMid
|
||||
MkArrow [ThickArrowShape 'blackSemiHookR'] [MangleName 'uni27A6'] [MangleUnicode 0x27A6] arrowSB SymbolMid arrowRSB SymbolMid
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue