Add characters (#1758)

- UPWARDS QUADRUPLE ARROW (`U+27F0`) (#1756).
- DOWNWARDS QUADRUPLE ARROW (`U+27F1`) (#1756).
- LEFTWARDS QUADRUPLE ARROW (`U+2B45`) (#1756).
- RIGHTWARDS QUADRUPLE ARROW (`U+2B46`) (#1756).
This commit is contained in:
John McWilliams 2023-05-30 00:24:12 -04:00 committed by GitHub
parent 3a8740d48c
commit 6b13d18105
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 42 additions and 0 deletions

View file

@ -327,6 +327,37 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
include : ArrowHead x1 y1 x2 y2 size
include : TripleArrowBarShape w x1 y1 x2 y2
define [QuadrupleArrowBarShape w x1 y1 x2 y2] : glyph-proc
include : PointingTo x1 y1 x2 y2 : lambda [mag] : glyph-proc
local p1 : (mag - o - w / 5 + O) / mag
local p2 : (mag - o - w / 2 + O) / mag
local fine : Math.min (w / 5) arrowSw
local coFine : w / 2 - fine / 2
include : dispiro
widths.center fine
flat (mag * (1 - p2)) (+coFine)
curl mag (+coFine)
include : dispiro
widths.center fine
flat (mag * (1 - p1)) (+coFine / 3)
curl mag (+coFine / 3)
include : dispiro
widths.center fine
flat (mag * (1 - p1)) (-coFine / 3)
curl mag (-coFine / 3)
include : dispiro
widths.center fine
flat (mag * (1 - p2)) (-coFine)
curl mag (-coFine)
define [QuadrupleArrowShape w] : lambda [x1 y1 x2 y2 size] : glyph-proc
include : ArrowHead x1 y1 x2 y2 size
include : QuadrupleArrowBarShape w x1 y1 x2 y2
define [dhArrowShape x1 y1 x2 y2 size] : glyph-proc
local mag : Math.hypot (y2 - y1) (x2 - x1)
local p : (mag - o - size) / mag
@ -667,6 +698,13 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
MkArrow [TripleArrowShape dasw] [MangleName 'tripleArrowUp'] [MangleUnicode 0x290A] arrowMidX arrowBot arrowMidX arrowTop
MkArrow [TripleArrowShape dasw] [MangleName 'tripleArrowDown'] [MangleUnicode 0x290B] arrowMidX arrowTop arrowMidX arrowBot
do "Quadruple-line Arrows"
define dasw doubleArrowStemWidth
MkArrow [QuadrupleArrowShape dasw] [MangleName 'quadrupleArrowUp'] [MangleUnicode 0x27F0] arrowMidX arrowBot arrowMidX arrowTop
MkArrow [QuadrupleArrowShape dasw] [MangleName 'quadrupleArrowDown'] [MangleUnicode 0x27F1] arrowMidX arrowTop arrowMidX arrowBot
MkArrow [QuadrupleArrowShape dasw] [MangleName 'quadrupleArrowLeft'] [MangleUnicode 0x2B45] arrowRSB SymbolMid arrowSB SymbolMid
MkArrow [QuadrupleArrowShape dasw] [MangleName 'quadrupleArrowRight'] [MangleUnicode 0x2B46] arrowSB SymbolMid arrowRSB SymbolMid
do "Barred Arrows"
MkArrow ArrowShape [MangleName 'arrowLeftK'] null arrowRSB SymbolMid (arrowSB + fine) SymbolMid
MkArrow ArrowShape [MangleName 'arrowRightK'] null arrowSB SymbolMid (arrowRSB - fine) SymbolMid