Skip to content

Commit

Permalink
New diagonals, octants, sedecimants & eights, separated quadrants & s…
Browse files Browse the repository at this point in the history
…extants, segmented digits, and large type pieces (#723)

## New diagonals, octants, sedecimants & eights, separated quadrants &
sextants, segmented digits, and large type pieces (Symbols for Legacy
Computing)

- Added diagonals `U+1FB3C` - `U+1FB67`
- Added octants (2×4 mosaics) `U+1CD00` - `U+1CDE5`
- Added sedecimants (4×4 mosaics) `U+1CE90` - `U+1CEAF`
- Added eights (8×8 patterns) `U+1FB70` - `U+1FB80`, `U+1FB82` -
`U+1FB8B`
- Added misc. blocks `U+1FB97`, `U+1FBCE`, `U+1FBCF`
- Added separated quadrants (2×2) `U+1CC21` - `U+1CC2F`
- Added separated sextants (2×3) `U+1CE51` - `U+1CE8F`
- Added segmented digits (LED/LCD display style) `U+1CCF0` - `U+1CCF9`
- Added large type pieces (see #709) `U+1CE1A` - `U+1CE50`

This update does not modify any existing character, it is only adding
new characters from the Symbols for Legacy Computing blocks (original
and supplement).  These characters use the same unified coordinates as
my previous #708 submission. It continues the sextants with diagonal
fills that meet the sextants corners, adds octants, most of the 8×8
pixels-based lines and fills (sedecimants & eights), as well as the
separated mosaics, segmented digits, and large type pieces.  Some
existing mosaic characters are not perfectly aligned on the same grid,
and it would be best to adjust them to fit the unified grid as well, but
that is not part of this PR, and I guess we won't have the time to do
that for the next release.

Note it does not complete the original Symbols for Legacy Computing
block yet, as it does not include the extra lines/box-drawing
characters, shaded mosaics, MouseText, and some other specific symbols.
The focus has been on completing the mosaics part, including the ones
coming in Unicode 16.0, and the Large Type Pieces.

This one is quite big, containing almost all the glyphs I've been
working on at once. This is to meet the short deadline for the next
release of Cascadia Code, as discussed with @aaronbell. It contains 948
glyphs for 479 characters.

Many of the glyphs are pure geometric shapes with no artistic liberty at
all, they simply follow the unified grid and handle both GDI and DWrite
("stypo") variants.

All the glyphs have been added to the `features.fea::@NotSpace` list of
non-italic fonts, except for the segmented digits, which have been added
to `@Digit` instead of `@NotSpace`.

The segmented digits `U+1CCF0` - `U+1CCF9` are based on their original
Atari ST design and Unicode reference design, with the bounding box and
segments widths adjusted to fit the `H` character, and spaces between
the segments large enough to be visible even at 12pt on 100% DPI.

The Large Type Pieces are based on their original HP 2640 Series
terminals design and Unicode reference design, but I took liberties to
reinterpret the pieces to make them more rounded and, I believe, more in
line with the Cascadia Code design.  Note the Unicode reference design
is somewhat wrong as their diagonals do not join perfectly, while my
version takes great care to support all the combinations alignments with
straight diagonal lines.  The only piece where more artistic liberty is
available is the `Q` stem `U+1CE45`, where I tried to make it more
reminiscent of Cascadia's `Q` design.

More details and screenshots of the large type pieces are available in
issue #709.

Finally, `U+1FB97` is the same pattern as `U+1CDB7`, they have different
origins, but I'm not sure why Unicode repeated it for octants instead of
reusing the existing one as they did for some other existing pattern. I
included them as separate glyphs as well.

* Continues #708 
* Improves #715 (does not close it, but greatly improves coverage)
* Improves #597 (does not close it, but greatly improves coverage)
* Closes #711
* Closes #709

Co-authored-by: Philippe Majerus <phm@live.com>
  • Loading branch information
PhMajerus and Philippe Majerus committed Apr 23, 2024
1 parent d535176 commit 2097b03
Show file tree
Hide file tree
Showing 5,707 changed files with 133,457 additions and 7 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
13 changes: 12 additions & 1 deletion FONTLOG.txt
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,17 @@ ITALIC V2
- Added Circular Quadrant characters U+1FBE8 - U+1FBEF (Symbols for Legacy Computing).
- Added Sextant characters U+1FB00 - U+1FB3B (Symbols for Legacy Computing).

04-10-2024 (Philippe Majerus) Diagonals, octants, sedecimants & eights, separated quadrants & sextants, segmented digits, and large type pieces.
- Added diagonals U+1FB3C - U+1FB67 (Symbols for Legacy Computing).
- Added octants U+1CD00 - U+1CDE5 (Symbols for Legacy Computing).
- Added sedecimants U+1CE90 - U+1CEAF (Symbols for Legacy Computing).
- Added eights U+1FB70 - U+1FB80, U+1FB82 - U+1FB8B (Symbols for Legacy Computing).
- Added misc. blocks U+1FB97, U+1FBCE, U+1FBCF (Symbols for Legacy Computing).
- Added separated quadrants U+1CC21 - U+1CC2F (Symbols for Legacy Computing).
- Added separated sextants U+1CE51 - U+1CE8F (Symbols for Legacy Computing).
- Added segmented digits U+1CCF0 - U+1CCF9 (Symbols for Legacy Computing).
- Added large type pieces U+1CE1A - U+1CE50 (Symbols for Legacy Computing).


Acknowledgements
-----------------------------------
Expand All @@ -96,4 +107,4 @@ D: Original font designer

N: Philippe Majerus
W: http://www.phm.lu
D: Legacy computing, mosaic blocks
D: Legacy computing, mosaic blocks, large type pieces
Binary file modified images/cascadia-legacycomputing-characters.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
473 changes: 471 additions & 2 deletions sources/CascadiaCode-Bold.ufo/features.fea

Large diffs are not rendered by default.

12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB3C.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3C" format="2">
<advance width="1200"/>
<unicode hex="1FB3C"/>
<outline>
<contour>
<point x="0" y="422" type="line"/>
<point x="600" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3C.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="313" type="line"/>
<point x="600" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB3D.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3D" format="2">
<advance width="1200"/>
<unicode hex="1FB3D"/>
<outline>
<contour>
<point x="0" y="422" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3D.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="313" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB3E.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3E" format="2">
<advance width="1200"/>
<unicode hex="1FB3E"/>
<outline>
<contour>
<point x="0" y="1324" type="line"/>
<point x="600" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3E.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="1107" type="line"/>
<point x="600" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB3F.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3F" format="2">
<advance width="1200"/>
<unicode hex="1FB3F"/>
<outline>
<contour>
<point x="0" y="1324" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB3F.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="1107" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB40.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB40" format="2">
<advance width="1200"/>
<unicode hex="1FB40"/>
<outline>
<contour>
<point x="0" y="2226" type="line"/>
<point x="600" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB40.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="1900" type="line"/>
<point x="600" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
14 changes: 14 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB41.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB41" format="2">
<advance width="1200"/>
<unicode hex="1FB41"/>
<outline>
<contour>
<point x="0" y="1324" type="line"/>
<point x="600" y="2226" type="line"/>
<point x="1200" y="2226" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB41.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="1107" type="line"/>
<point x="600" y="1900" type="line"/>
<point x="1200" y="1900" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
13 changes: 13 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB42.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB42" format="2">
<advance width="1200"/>
<unicode hex="1FB42"/>
<outline>
<contour>
<point x="0" y="1324" type="line"/>
<point x="1200" y="2226" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB42.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="1107" type="line"/>
<point x="1200" y="1900" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
14 changes: 14 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB43.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB43" format="2">
<advance width="1200"/>
<unicode hex="1FB43"/>
<outline>
<contour>
<point x="0" y="422" type="line"/>
<point x="600" y="2226" type="line"/>
<point x="1200" y="2226" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB43.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="313" type="line"/>
<point x="600" y="1900" type="line"/>
<point x="1200" y="1900" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
13 changes: 13 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB44.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB44" format="2">
<advance width="1200"/>
<unicode hex="1FB44"/>
<outline>
<contour>
<point x="0" y="422" type="line"/>
<point x="1200" y="2226" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB44.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="313" type="line"/>
<point x="1200" y="1900" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
13 changes: 13 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB45.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB45" format="2">
<advance width="1200"/>
<unicode hex="1FB45"/>
<outline>
<contour>
<point x="0" y="-480" type="line"/>
<point x="600" y="2226" type="line"/>
<point x="1200" y="2226" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB45.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="-480" type="line"/>
<point x="600" y="1900" type="line"/>
<point x="1200" y="1900" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
13 changes: 13 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB46.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB46" format="2">
<advance width="1200"/>
<unicode hex="1FB46"/>
<outline>
<contour>
<point x="0" y="422" type="line"/>
<point x="1200" y="1324" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB46.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="313" type="line"/>
<point x="1200" y="1107" type="line"/>
<point x="1200" y="-480" type="line"/>
<point x="0" y="-480" type="line"/>
</contour>
</outline>
</glyph>
12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB47.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB47" format="2">
<advance width="1200"/>
<unicode hex="1FB47"/>
<outline>
<contour>
<point x="600" y="-480" type="line"/>
<point x="1200" y="422" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB47.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="600" y="-480" type="line"/>
<point x="1200" y="313" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB48.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB48" format="2">
<advance width="1200"/>
<unicode hex="1FB48"/>
<outline>
<contour>
<point x="0" y="-480" type="line"/>
<point x="1200" y="422" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB48.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="0" y="-480" type="line"/>
<point x="1200" y="313" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
12 changes: 12 additions & 0 deletions sources/CascadiaCode-Bold.ufo/glyphs/blockD_iagonal-1FB49.glif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB49" format="2">
<advance width="1200"/>
<unicode hex="1FB49"/>
<outline>
<contour>
<point x="600" y="-480" type="line"/>
<point x="1200" y="1324" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="blockDiagonal-1FB49.stypo" format="2">
<advance width="1200"/>
<outline>
<contour>
<point x="600" y="-480" type="line"/>
<point x="1200" y="1107" type="line"/>
<point x="1200" y="-480" type="line"/>
</contour>
</outline>
</glyph>
Loading

0 comments on commit 2097b03

Please sign in to comment.