* Add Characters (#1701)

- NEUTRAL FACE (`U+1F610`).
- FACE WITHOUT MOUTH (`U+1F636`).
- SLIGHTLY FROWNING FACE (`U+1F641`).
- SLIGHTLY SMILING FACE (`U+1F642`).
- UPSIDE-DOWN FACE (`U+1F643`).
This commit is contained in:
John McWilliams 2023-05-03 14:29:39 -04:00 committed by GitHub
parent bf0f3c84f7
commit 6ab33a385a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 43 additions and 2 deletions

View file

@ -27,5 +27,10 @@
- LATIN SMALL LIGATURE FFL (`U+FB04`) (#1497).
- LATIN SMALL LIGATURE LONG S T (`U+FB05`) (#1497).
- LATIN SMALL LIGATURE ST (`U+FB06`) (#1497).
- NEUTRAL FACE (`U+1F610`).
- FACE WITHOUT MOUTH (`U+1F636`).
- SLIGHTLY FROWNING FACE (`U+1F641`).
- SLIGHTLY SMILING FACE (`U+1F642`).
- UPSIDE-DOWN FACE (`U+1F643`).
* Fix broken shape of CYRILLIC SMALL LETTER KOMI ZJE (`U+0505`) under quasi-proportionals (#1695).
* Fix width of NARROW NO-BREAK SPACE (`U+202F`) under quasi-proportionals.

View file

@ -25,9 +25,13 @@ glyph-block Symbol-Pictograph-Faces : begin
define mouthDepth : 0.025 * [Math.sqrt MosaicWidthScalar]
define [FaceRing F] : F faceTop faceBot faceLeft faceRight faceStroke faceSma faceSmb
define [SmileFace k width] : union
define [FaceEyes width] : union
DotAt (faceMiddle - width / 2 + eyeRadius / 2) [mix faceBot faceTop eyeHeight] eyeRadius
DotAt (faceMiddle + width / 2 - eyeRadius / 2) [mix faceBot faceTop eyeHeight] eyeRadius
define [SmileFace k width] : union
FaceEyes width
dispiro
widths.center faceInnerStroke
g4 (faceMiddle - width / 2) [mix faceBot faceTop (1 - eyeHeight + k * mouthDepth)]
@ -40,7 +44,7 @@ glyph-block Symbol-Pictograph-Faces : begin
FaceRing OShape
SmileFace (-1) : 0.6 * (faceWidth - faceStroke * 2)
create-glyph [MangleName 'whiteSmileFace'] [MangleUnicode 0x263a] : glyph-proc
create-glyph [MangleName 'whiteSmileFace'] [MangleUnicode 0x263A] : glyph-proc
set-width MosaicWidth
include : union
FaceRing OShape
@ -51,3 +55,34 @@ glyph-block Symbol-Pictograph-Faces : begin
include : difference
FaceRing OShapeOutline
SmileFace 1 : 0.6 * (faceWidth - faceStroke * 2)
create-glyph [MangleName 'neutralFace'] [MangleUnicode 0x1F610] : glyph-proc
set-width MosaicWidth
include : union
FaceRing OShape
SmileFace 0 : 0.6 * (faceWidth - faceStroke * 2)
create-glyph [MangleName 'mouthlessFace'] [MangleUnicode 0x1F636] : glyph-proc
set-width MosaicWidth
include : union
FaceRing OShape
FaceEyes : 0.6 * (faceWidth - faceStroke * 2)
create-glyph [MangleName 'slightFrownFace'] [MangleUnicode 0x1F641] : glyph-proc
set-width MosaicWidth
include : union
FaceRing OShape
SmileFace (-0.5) : 0.6 * (faceWidth - faceStroke * 2)
create-glyph [MangleName 'slightSmileFace'] [MangleUnicode 0x1F642] : glyph-proc
set-width MosaicWidth
include : union
FaceRing OShape
SmileFace 0.5 : 0.6 * (faceWidth - faceStroke * 2)
create-glyph [MangleName 'upsideDownFace'] [MangleUnicode 0x1F643] : glyph-proc
set-width MosaicWidth
include : union
FaceRing OShape
SmileFace 1 : 0.6 * (faceWidth - faceStroke * 2)
include : FlipAround Middle [mix faceTop faceBot 0.5]

View file

@ -8,6 +8,7 @@ export async function collectBlockData() {
[[0x10780, 0x107bf], "Latin Extended-F"],
[[0x1df00, 0x1dfff], "Latin Extended-G"],
[[0x1e030, 0x1e08f], "Cyrillic Extended-D"],
[[0x1f600, 0x1f64f], "Emoticons"],
[[0x1fa70, 0x1faff], "Symbols and Pictographs Extended-A"],
[[0x1fb00, 0x1fbff], "Symbols for Legacy Computing"]
];