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 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'
# Uiua symbols
LinkAplFormForNwidWwid 'whiteDiamond'
LinkAplFormForNwidWwid 'whiteSquare'
LinkAplFormForNwidWwid 'whiteTriangleUp'
LinkAplFormForNwidWwid 'whiteTriangleDown'

View file

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

View file

@ -21,5 +21,5 @@ glyph-block Symbol-Math-Boxed : begin
MakeMathBoxed 0x29C4 'innerMultiplyStroke1'
MakeMathBoxed 0x29C5 'innerMultiplyStroke2'
MakeMathBoxed 0x29C6 'opAsterisk'
MakeMathBoxed 0x29C7 'whiteSmallCircle.NWID'
MakeMathBoxed 0x29C8 'whiteSmallSquare.NWID'
MakeMathBoxed 0x29C7 'whiteVerySmallCircle.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
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
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.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
define N 64
local knots {}

View file

@ -119,7 +119,10 @@ glyph-block Symbol-Math-VAndCup : begin
HBar.b SB RightSB (OperBot + EqualHalfSpace * 0.75) OperatorStroke
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/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
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
include : refer-glyph "backslash"