Improve glyph visuals for 7 chars, add 2 new chars + 1 APL form. (#2264)

* Fix glyph visuals for several math characters.

* Add characters for UIUA.
This commit is contained in:
John McWilliams 2024-03-28 19:44:32 -04:00 committed by GitHub
parent 4a6862aa45
commit 30ddcd53fa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 30 additions and 9 deletions

View file

@ -1 +1,11 @@
* Fix side bearings of multi-dot punctuation (`U+10FB`, `U+2056`, `U+2058`..`205B`, `U+2E2A`..`U+2E2D`) under Quasi-Proportional. * Fix side bearings of multi-dot punctuation (`U+10FB`, `U+2056`, `U+2058`..`205B`, `U+2E2A`..`U+2E2D`) under Quasi-Proportional.
* Fix glyph visuals:
- MATHEMATICAL RISING DIAGONAL (`U+27CB`).
- MATHEMATICAL FALLING DIAGONAL (`U+27CD`).
- CIRCLE WITH HORIZONTAL BAR (`U+29B5`).
- SOLIDUS WITH OVERBAR (`U+29F6`).
- SMALL VEE WITH UNDERBAR (`U+2A61`).
* Add characters:
- LOWER RIGHT CORNER WITH DOT (`U+27D3`).
- UPPER LEFT CORNER WITH DOT (`U+27D4`).
* Add APL form for WHITE DIAMOND (`U+25C7`).

View file

@ -271,6 +271,7 @@ glyph-block Symbol-Math-APL : begin
LinkAplFormForNwidWwid 'uni2687' LinkAplFormForNwidWwid 'uni2687'
# Uiua symbols # Uiua symbols
LinkAplFormForNwidWwid 'whiteDiamond'
LinkAplFormForNwidWwid 'whiteSquare' LinkAplFormForNwidWwid 'whiteSquare'
LinkAplFormForNwidWwid 'whiteTriangleUp' LinkAplFormForNwidWwid 'whiteTriangleUp'
LinkAplFormForNwidWwid 'whiteTriangleDown' LinkAplFormForNwidWwid 'whiteTriangleDown'

View file

@ -415,12 +415,12 @@ glyph-block Symbol-Math-Arith : begin
set-width MosaicWidth set-width MosaicWidth
include : dispiro include : dispiro
widths.center OperatorStroke widths.center OperatorStroke
flat SB ParenBot flat SB [mix SymbolMid PlusBot MosaicWidthScalar]
curl (MosaicWidth - SB) ParenTop curl (MosaicWidth - SB) [mix SymbolMid PlusTop MosaicWidthScalar]
create-glyph [MangleName 'fallingDiagonal'] [MangleUnicode 0x27CD] : glyph-proc create-glyph [MangleName 'fallingDiagonal'] [MangleUnicode 0x27CD] : glyph-proc
set-width MosaicWidth set-width MosaicWidth
include : dispiro include : dispiro
widths.center OperatorStroke widths.center OperatorStroke
flat SB ParenTop flat SB [mix SymbolMid PlusTop MosaicWidthScalar]
curl (MosaicWidth - SB) ParenBot curl (MosaicWidth - SB) [mix SymbolMid PlusBot MosaicWidthScalar]

View file

@ -21,5 +21,5 @@ glyph-block Symbol-Math-Boxed : begin
MakeMathBoxed 0x29C4 'innerMultiplyStroke1' MakeMathBoxed 0x29C4 'innerMultiplyStroke1'
MakeMathBoxed 0x29C5 'innerMultiplyStroke2' MakeMathBoxed 0x29C5 'innerMultiplyStroke2'
MakeMathBoxed 0x29C6 'opAsterisk' MakeMathBoxed 0x29C6 'opAsterisk'
MakeMathBoxed 0x29C7 'whiteSmallCircle.NWID' MakeMathBoxed 0x29C7 'whiteVerySmallCircle.NWID'
MakeMathBoxed 0x29C8 'whiteSmallSquare.NWID' MakeMathBoxed 0x29C8 'whiteVerySmallSquare.NWID'

View file

@ -80,7 +80,7 @@ glyph-block Symbol-Math-Circled : begin
HBar.m (SB + eqS) (RightSB - eqS) (SymbolMid + eqD) eqS HBar.m (SB + eqS) (RightSB - eqS) (SymbolMid + eqD) eqS
HBar.m (SB + eqS) (RightSB - eqS) (SymbolMid - eqD) eqS HBar.m (SB + eqS) (RightSB - eqS) (SymbolMid - eqD) eqS
create-glyph 0x29B5 : composite-proc [refer-glyph 'mathO'] : HBar.m [mix SB 0 0.9] [mix RightSB Width 0.9] SymbolMid MathEnclosureSw create-glyph 0x29B5 : composite-proc [refer-glyph 'mathO'] : HBar.m [mix Middle SB Math.SQRT2] [mix Middle RightSB Math.SQRT2] SymbolMid MathEnclosureSw
create-glyph 0x29B7 : composite-proc [refer-glyph 'mathO'] : intersection create-glyph 0x29B7 : composite-proc [refer-glyph 'mathO'] : intersection
refer-glyph 'mathOOutline' refer-glyph 'mathOOutline'

View file

@ -106,6 +106,13 @@ glyph-block Symbol-Math-Geometry : begin
dispiro [widths.lhs GeometryStroke] [flat leftBox bottomBox] [curl rightBox bottomBox] dispiro [widths.lhs GeometryStroke] [flat leftBox bottomBox] [curl rightBox bottomBox]
dispiro [widths.rhs GeometryStroke] [flat rightBox topBox] [curl rightBox bottomBox] dispiro [widths.rhs GeometryStroke] [flat rightBox topBox] [curl rightBox bottomBox]
WithDotVariants 'pullback' 0x27D3 : function [DrawAt kr ov] : glyph-proc
include [refer-glyph 'revRightAngle'] AS_BASE ALSO_METRICS
local offset : mix 0 GeometryStroke 0.5
include : DrawAt (Middle - offset) (SymbolMid + offset) (DotRadius * kr * [AdviceStroke 4] / Stroke - ov)
turned 'pushout' 0x27D4 'pullback' Middle SymbolMid
create-glyph 'sineWave' 0x223F : glyph-proc create-glyph 'sineWave' 0x223F : glyph-proc
define N 64 define N 64
local knots {} local knots {}

View file

@ -119,7 +119,10 @@ glyph-block Symbol-Math-VAndCup : begin
HBar.b SB RightSB (OperBot + EqualHalfSpace * 0.75) OperatorStroke HBar.b SB RightSB (OperBot + EqualHalfSpace * 0.75) OperatorStroke
WedgeShape OperTop (OperBot + OperatorStroke + EqualHalfSpace * 0.75 + gap) WedgeShape OperTop (OperBot + OperatorStroke + EqualHalfSpace * 0.75 + gap)
alias 'veeUnderbar' 0x2A61 'math/logic/xor' create-glyph 'smallVeeUnderbar' 0x2A61 : union
HBar.b SB RightSB 0 OperatorStroke
VeeShape PlusTop [Math.max PlusBot (0 + OperatorStroke * 1.5)]
turned 'math/logic/equalOr' 0x2A62 'math/logic/andEqual' Middle SymbolMid turned 'math/logic/equalOr' 0x2A62 'math/logic/andEqual' Middle SymbolMid
turned 'math/logic/orEqual' 0x2A63 'math/logic/equalAnd' Middle SymbolMid turned 'math/logic/orEqual' 0x2A63 'math/logic/equalAnd' Middle SymbolMid

View file

@ -72,7 +72,7 @@ glyph-block Symbol-Punctuation-Slashes-And-Number-Sign : begin
create-glyph 'slashOverbar' 0x29F6 : glyph-proc create-glyph 'slashOverbar' 0x29F6 : glyph-proc
include : refer-glyph "slash" include : refer-glyph "slash"
include : HBar.t (Middle - markExtend) (Middle + markExtend) (ParenTop + AccentClearance) markStroke include : HBar.m (Middle - markExtend) (Middle + markExtend) (ParenTop + AccentClearance) markStroke
create-glyph 'backslashBar' 0x29F7 : glyph-proc create-glyph 'backslashBar' 0x29F7 : glyph-proc
include : refer-glyph "backslash" include : refer-glyph "backslash"