Add LONG LEFTWARDS ARROW FROM BAR (U+27FB
), LONG RIGHTWARDS ARROW FROM BAR (U+27FC
) (#1251)
This commit is contained in:
parent
3ea5454045
commit
b378a95153
3 changed files with 23 additions and 4 deletions
|
@ -1,3 +1,5 @@
|
|||
* Add characters
|
||||
- MODIFIER LETTER CHINESE TONE YIN PING .. MODIFIER LETTER CHINESE TONE YANG RU (`U+A700` .. `U+A707`) (#1249)
|
||||
- LONG LEFTWARDS ARROW FROM BAR (`U+27FB`), LONG RIGHTWARDS ARROW FROM BAR (`U+27FC`) (#1251)
|
||||
|
||||
* Fix serif of Cyrillic capital Ya under italics (#1250).
|
||||
|
|
|
@ -54,6 +54,8 @@ Inside the plan, top-level properties include:
|
|||
- As a consequence, the following characters will be **removed**:
|
||||
- `U+27F5` LONG LEFTWARDS ARROW
|
||||
- `U+27F6` LONG RIGHTWARDS ARROW
|
||||
- `U+27FB` LONG LEFTWARDS ARROW FROM BAR
|
||||
- `U+27FC` LONG RIGHTWARDS ARROW FROM BAR
|
||||
- `fixed`: Apply `fontconfig-mono` changes and further remove ligations.
|
||||
* `serifs`: Optional, String, configures style of serifs.
|
||||
- When set to `slab`, the font will be converted into slab-serif.
|
||||
|
|
|
@ -27,6 +27,8 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
define doubleArrowStemWidth : arrowHeadSize * 1.1
|
||||
define waveArrowAmplitude : (Width - SB) * DesignParameters.arrow_size * 1.1
|
||||
|
||||
define kLongArrowSB : [DivFrame MosaicWidthScalar 4].leftSB / [DivFrame MosaicWidthScalar 2].leftSB
|
||||
|
||||
# Diagonal arrow params
|
||||
define diagPropX : 1 / [Math.pow 2 (1 / 4)]
|
||||
define diagPropY : 1 / [Math.pow 2 (1 / 4)]
|
||||
|
@ -287,10 +289,11 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
MkArrow ArrowShape [MangleName 'arrowDownLeft'] [MangleUnicode 0x2199] arrowDiagRSB arrowDiagTop arrowDiagSB arrowDiagBot
|
||||
|
||||
# These arrows are always wide. In force-monospace variants they will be deleted
|
||||
if (MosaicWidthScalar > 1 && !para.forceMonospace) : begin
|
||||
define kLong 0.5
|
||||
MkArrow ArrowShape 'longArrowLeft' 0x27F5 [mix MosaicWidth arrowRSB kLong] SymbolMid [mix 0 arrowSB kLong] SymbolMid
|
||||
MkArrow ArrowShape 'longArrowRight' 0x27F6 [mix 0 arrowSB kLong] SymbolMid [mix MosaicWidth arrowRSB kLong] SymbolMid
|
||||
if (MosaicWidthScalar > 1 && !para.forceMonospace) : do
|
||||
define l : mix 0 arrowSB kLongArrowSB
|
||||
define r : mix MosaicWidth arrowRSB kLongArrowSB
|
||||
MkArrow ArrowShape 'longArrowLeft' 0x27F5 r SymbolMid l SymbolMid
|
||||
MkArrow ArrowShape 'longArrowRight' 0x27F6 l SymbolMid r SymbolMid
|
||||
|
||||
do "Dash Straight Arrow"
|
||||
MkArrow DashArrowShape [MangleName 'dashArrowLeft'] [MangleUnicode 0x21E0] arrowRSB SymbolMid arrowSB SymbolMid
|
||||
|
@ -544,6 +547,18 @@ glyph-block Symbol-Arrow : for-width-kinds WideWidth1
|
|||
refer-glyph : MangleName 'arrowDownSK'
|
||||
HBar (arrowMidX - arrowHeadSize) (arrowMidX + arrowHeadSize) arrowTop fine
|
||||
|
||||
if (MosaicWidthScalar > 1 && !para.forceMonospace) : do
|
||||
define l : mix 0 arrowSB kLongArrowSB
|
||||
define r : mix MosaicWidth arrowRSB kLongArrowSB
|
||||
MkArrow ArrowShape 'longArrowLeftSK' null (r - fine / 2) SymbolMid l SymbolMid
|
||||
MkArrow ArrowShape 'longArrowRightSK' null (l + fine / 2) SymbolMid r SymbolMid
|
||||
create-glyph 'longBarArrowLeft' 0x27FB : composite-proc
|
||||
refer-glyph 'longArrowLeftSK'
|
||||
VBar r (SymbolMid - arrowHeadSize) (SymbolMid + arrowHeadSize) fine
|
||||
create-glyph 'longBarArrowRight' 0x27FC : composite-proc
|
||||
refer-glyph 'longArrowRightSK'
|
||||
VBar l (SymbolMid - arrowHeadSize) (SymbolMid + arrowHeadSize) fine
|
||||
|
||||
do "Double-headed Arrows"
|
||||
DoubleArrow ArrowShape [MangleName 'arrowLeftRight'] [MangleUnicode 0x2194] arrowSB SymbolMid arrowRSB SymbolMid
|
||||
DoubleArrow ArrowShape [MangleName 'arrowUpDown'] [MangleUnicode 0x2195] arrowMidX arrowTop arrowMidX arrowBot
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue