mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 08:47:28 +01:00
379 lines
14 KiB
C
379 lines
14 KiB
C
#ifndef KANDINSKY_FONTS_CODE_POINTS_H
|
||
#define KANDINSKY_FONTS_CODE_POINTS_H
|
||
|
||
// [0x30a].map{|i| "0x" + i.to_s(16) +", // " + [i].pack("U") + " // " + Unicode::Name.of([i].pack("U"))}.join("|")
|
||
#include <stdint.h>
|
||
|
||
|
||
/* This array lists the code points that are rasterized by rasterizer.c. We put
|
||
* most characters from the LATIN charset, and some mathematical characters. */
|
||
|
||
uint32_t SimpleCodePoints[] = {
|
||
0x20, // // SPACE
|
||
0x21, // ! // EXCLAMATION MARK
|
||
0x22, // " // QUOTATION MARK
|
||
0x23, // # // NUMBER SIGN
|
||
0x24, // $ // DOLLAR SIGN
|
||
0x25, // % // PERCENT SIGN
|
||
0x26, // & // AMPERSAND
|
||
0x27, // ' // APOSTROPHE
|
||
0x28, // ( // LEFT PARENTHESIS
|
||
0x29, // ) // RIGHT PARENTHESIS
|
||
0x2a, // * // ASTERISK
|
||
0x2b, // + // PLUS SIGN
|
||
0x2c, // , // COMMA
|
||
0x2d, // - // HYPHEN-MINUS
|
||
0x2e, // . // FULL STOP
|
||
0x2f, // / // SOLIDUS
|
||
0x30, // 0 // DIGIT ZERO
|
||
0x31, // 1 // DIGIT ONE
|
||
0x32, // 2 // DIGIT TWO
|
||
0x33, // 3 // DIGIT THREE
|
||
0x34, // 4 // DIGIT FOUR
|
||
0x35, // 5 // DIGIT FIVE
|
||
0x36, // 6 // DIGIT SIX
|
||
0x37, // 7 // DIGIT SEVEN
|
||
0x38, // 8 // DIGIT EIGHT
|
||
0x39, // 9 // DIGIT NINE
|
||
0x3a, // : // COLON
|
||
0x3b, // ; // SEMICOLON
|
||
0x3c, // < // LESS-THAN SIGN
|
||
0x3d, // = // EQUALS SIGN
|
||
0x3e, // > // GREATER-THAN SIGN
|
||
0x3f, // ? // QUESTION MARK
|
||
0x40, // @ // COMMERCIAL AT
|
||
0x41, // A // LATIN CAPITAL LETTER A
|
||
0x42, // B // LATIN CAPITAL LETTER B
|
||
0x43, // C // LATIN CAPITAL LETTER C
|
||
0x44, // D // LATIN CAPITAL LETTER D
|
||
0x45, // E // LATIN CAPITAL LETTER E
|
||
0x46, // F // LATIN CAPITAL LETTER F
|
||
0x47, // G // LATIN CAPITAL LETTER G
|
||
0x48, // H // LATIN CAPITAL LETTER H
|
||
0x49, // I // LATIN CAPITAL LETTER I
|
||
0x4a, // J // LATIN CAPITAL LETTER J
|
||
0x4b, // K // LATIN CAPITAL LETTER K
|
||
0x4c, // L // LATIN CAPITAL LETTER L
|
||
0x4d, // M // LATIN CAPITAL LETTER M
|
||
0x4e, // N // LATIN CAPITAL LETTER N
|
||
0x4f, // O // LATIN CAPITAL LETTER O
|
||
0x50, // P // LATIN CAPITAL LETTER P
|
||
0x51, // Q // LATIN CAPITAL LETTER Q
|
||
0x52, // R // LATIN CAPITAL LETTER R
|
||
0x53, // S // LATIN CAPITAL LETTER S
|
||
0x54, // T // LATIN CAPITAL LETTER T
|
||
0x55, // U // LATIN CAPITAL LETTER U
|
||
0x56, // V // LATIN CAPITAL LETTER V
|
||
0x57, // W // LATIN CAPITAL LETTER W
|
||
0x58, // X // LATIN CAPITAL LETTER X
|
||
0x59, // Y // LATIN CAPITAL LETTER Y
|
||
0x5a, // Z // LATIN CAPITAL LETTER Z
|
||
0x5b, // [ // LEFT SQUARE BRACKET
|
||
0x5c, // \ // REVERSE SOLIDUS
|
||
0x5d, // ] // RIGHT SQUARE BRACKET
|
||
0x5e, // ^ // CIRCUMFLEX ACCENT
|
||
0x5f, // _ // LOW LINE
|
||
0x60, // ` // GRAVE ACCENT
|
||
0x61, // a // LATIN SMALL LETTER A
|
||
0x62, // b // LATIN SMALL LETTER B
|
||
0x63, // c // LATIN SMALL LETTER C
|
||
0x64, // d // LATIN SMALL LETTER D
|
||
0x65, // e // LATIN SMALL LETTER E
|
||
0x66, // f // LATIN SMALL LETTER F
|
||
0x67, // g // LATIN SMALL LETTER G
|
||
0x68, // h // LATIN SMALL LETTER H
|
||
0x69, // i // LATIN SMALL LETTER I
|
||
0x6a, // j // LATIN SMALL LETTER J
|
||
0x6b, // k // LATIN SMALL LETTER K
|
||
0x6c, // l // LATIN SMALL LETTER L
|
||
0x6d, // m // LATIN SMALL LETTER M
|
||
0x6e, // n // LATIN SMALL LETTER N
|
||
0x6f, // o // LATIN SMALL LETTER O
|
||
0x70, // p // LATIN SMALL LETTER P
|
||
0x71, // q // LATIN SMALL LETTER Q
|
||
0x72, // r // LATIN SMALL LETTER R
|
||
0x73, // s // LATIN SMALL LETTER S
|
||
0x74, // t // LATIN SMALL LETTER T
|
||
0x75, // u // LATIN SMALL LETTER U
|
||
0x76, // v // LATIN SMALL LETTER V
|
||
0x77, // w // LATIN SMALL LETTER W
|
||
0x78, // x // LATIN SMALL LETTER X
|
||
0x79, // y // LATIN SMALL LETTER Y
|
||
0x7a, // z // LATIN SMALL LETTER Z
|
||
0x7b, // { // LEFT CURLY BRACKET
|
||
0x7c, // | // VERTICAL LINE
|
||
0x7d, // } // RIGHT CURLY BRACKET
|
||
0x7e, // ~ // TILDE
|
||
|
||
0xa1, // ¡ // INVERTED EXCLAMATION MARK
|
||
0xb0, // ° // DEGREE SIGN
|
||
0xb7, // · // MIDDLE DOT
|
||
|
||
0xc6, // Æ // LATIN CAPITAL LETTER AE
|
||
0xd0, // Ð // LATIN CAPITAL LETTER ETH
|
||
0xd7, // × // MULTIPLICATION SIGN
|
||
0xd8, // Ø // LATIN CAPITAL LETTER O WITH STROKE
|
||
0xde, // Þ // LATIN CAPITAL LETTER THORN
|
||
0xdf, // ß // LATIN SMALL LETTER SHARP S
|
||
0xe6, // æ // LATIN SMALL LETTER AE
|
||
0xf0, // ð // LATIN SMALL LETTER ETH
|
||
0xf7, // ÷ // DIVISION SIGN
|
||
0xf8, // ø // LATIN SMALL LETTER O WITH STROKE
|
||
0xfe, // þ // LATIN SMALL LETTER THORN
|
||
|
||
0x300, // ̀ // COMBINING GRAVE ACCENT
|
||
0x301, // ́ // COMBINING ACUTE ACCENT
|
||
0x302, // ̂ // COMBINING CIRCUMFLEX ACCENT
|
||
0x303, // ̃ // COMBINING TILDE
|
||
0x305, // ̅ // COMBINING OVERLINE
|
||
0x308, // ̈ // COMBINING DIAERESIS
|
||
0x30a, // ̊ // COMBINING RING ABOVE
|
||
0x30b, // ˝// COMBINING DOUBLE ACUTE ACCENT
|
||
0x327, // ̧ // COMBINING CEDILLA
|
||
|
||
0x393, // Γ // GREEK CAPITAL LETTER GAMMA
|
||
0x394, // Δ // GREEK CAPITAL LETTER DELTA
|
||
0x3a9, // Ω // GREEK CAPITAL LETTER OMEGA
|
||
0x3b8, // θ // GREEK SMALL LETTER THETA
|
||
0x3bb, // λ // GREEK SMALL LETTER LAMBDA
|
||
0x3bc, // μ // GREEK SMALL LETTER MU
|
||
0x3c0, // π // GREEK SMALL LETTER PI
|
||
0x3c3, // σ // GREEK SMALL LETTER SIGMA
|
||
0x1d07, // ᴇ // LATIN LETTER SMALL CAPITAL E
|
||
0x212f, // ℯ // SCRIPT SMALL E
|
||
0x2192, // → // RIGHTWARDS ARROW
|
||
0x2211, // ∑ // N-ARY SUMMATION
|
||
0x221a, // √ // SQUARE ROOT
|
||
0x221e, // ∞ // INFINITY
|
||
0x222b, // ∫ // INTEGRAL
|
||
0x2248, // ≈ // ALMOST EQUAL TO
|
||
0x2264, // ≤ // LESS-THAN OR EQUAL TO
|
||
0x2265, // ≥ // GREATER-THAN OR EQUAL TO
|
||
0xFFFD, // <20> // REPLACEMENT CHARACTER
|
||
0x1d422, // 𝐢 // MATHEMATICAL BOLD SMALL I"
|
||
};
|
||
|
||
uint32_t ExtendedCodePoints[] = {
|
||
0x20, // // SPACE
|
||
0x21, // ! // EXCLAMATION MARK
|
||
0x22, // " // QUOTATION MARK
|
||
0x23, // # // NUMBER SIGN
|
||
0x24, // $ // DOLLAR SIGN
|
||
0x25, // % // PERCENT SIGN
|
||
0x26, // & // AMPERSAND
|
||
0x27, // ' // APOSTROPHE
|
||
0x28, // ( // LEFT PARENTHESIS
|
||
0x29, // ) // RIGHT PARENTHESIS
|
||
0x2a, // * // ASTERISK
|
||
0x2b, // + // PLUS SIGN
|
||
0x2c, // , // COMMA
|
||
0x2d, // - // HYPHEN-MINUS
|
||
0x2e, // . // FULL STOP
|
||
0x2f, // / // SOLIDUS
|
||
0x30, // 0 // DIGIT ZERO
|
||
0x31, // 1 // DIGIT ONE
|
||
0x32, // 2 // DIGIT TWO
|
||
0x33, // 3 // DIGIT THREE
|
||
0x34, // 4 // DIGIT FOUR
|
||
0x35, // 5 // DIGIT FIVE
|
||
0x36, // 6 // DIGIT SIX
|
||
0x37, // 7 // DIGIT SEVEN
|
||
0x38, // 8 // DIGIT EIGHT
|
||
0x39, // 9 // DIGIT NINE
|
||
0x3a, // : // COLON
|
||
0x3b, // ; // SEMICOLON
|
||
0x3c, // < // LESS-THAN SIGN
|
||
0x3d, // = // EQUALS SIGN
|
||
0x3e, // > // GREATER-THAN SIGN
|
||
0x3f, // ? // QUESTION MARK
|
||
0x40, // @ // COMMERCIAL AT
|
||
0x41, // A // LATIN CAPITAL LETTER A
|
||
0x42, // B // LATIN CAPITAL LETTER B
|
||
0x43, // C // LATIN CAPITAL LETTER C
|
||
0x44, // D // LATIN CAPITAL LETTER D
|
||
0x45, // E // LATIN CAPITAL LETTER E
|
||
0x46, // F // LATIN CAPITAL LETTER F
|
||
0x47, // G // LATIN CAPITAL LETTER G
|
||
0x48, // H // LATIN CAPITAL LETTER H
|
||
0x49, // I // LATIN CAPITAL LETTER I
|
||
0x4a, // J // LATIN CAPITAL LETTER J
|
||
0x4b, // K // LATIN CAPITAL LETTER K
|
||
0x4c, // L // LATIN CAPITAL LETTER L
|
||
0x4d, // M // LATIN CAPITAL LETTER M
|
||
0x4e, // N // LATIN CAPITAL LETTER N
|
||
0x4f, // O // LATIN CAPITAL LETTER O
|
||
0x50, // P // LATIN CAPITAL LETTER P
|
||
0x51, // Q // LATIN CAPITAL LETTER Q
|
||
0x52, // R // LATIN CAPITAL LETTER R
|
||
0x53, // S // LATIN CAPITAL LETTER S
|
||
0x54, // T // LATIN CAPITAL LETTER T
|
||
0x55, // U // LATIN CAPITAL LETTER U
|
||
0x56, // V // LATIN CAPITAL LETTER V
|
||
0x57, // W // LATIN CAPITAL LETTER W
|
||
0x58, // X // LATIN CAPITAL LETTER X
|
||
0x59, // Y // LATIN CAPITAL LETTER Y
|
||
0x5a, // Z // LATIN CAPITAL LETTER Z
|
||
0x5b, // [ // LEFT SQUARE BRACKET
|
||
0x5c, // \ // REVERSE SOLIDUS
|
||
0x5d, // ] // RIGHT SQUARE BRACKET
|
||
0x5e, // ^ // CIRCUMFLEX ACCENT
|
||
0x5f, // _ // LOW LINE
|
||
0x60, // ` // GRAVE ACCENT
|
||
0x61, // a // LATIN SMALL LETTER A
|
||
0x62, // b // LATIN SMALL LETTER B
|
||
0x63, // c // LATIN SMALL LETTER C
|
||
0x64, // d // LATIN SMALL LETTER D
|
||
0x65, // e // LATIN SMALL LETTER E
|
||
0x66, // f // LATIN SMALL LETTER F
|
||
0x67, // g // LATIN SMALL LETTER G
|
||
0x68, // h // LATIN SMALL LETTER H
|
||
0x69, // i // LATIN SMALL LETTER I
|
||
0x6a, // j // LATIN SMALL LETTER J
|
||
0x6b, // k // LATIN SMALL LETTER K
|
||
0x6c, // l // LATIN SMALL LETTER L
|
||
0x6d, // m // LATIN SMALL LETTER M
|
||
0x6e, // n // LATIN SMALL LETTER N
|
||
0x6f, // o // LATIN SMALL LETTER O
|
||
0x70, // p // LATIN SMALL LETTER P
|
||
0x71, // q // LATIN SMALL LETTER Q
|
||
0x72, // r // LATIN SMALL LETTER R
|
||
0x73, // s // LATIN SMALL LETTER S
|
||
0x74, // t // LATIN SMALL LETTER T
|
||
0x75, // u // LATIN SMALL LETTER U
|
||
0x76, // v // LATIN SMALL LETTER V
|
||
0x77, // w // LATIN SMALL LETTER W
|
||
0x78, // x // LATIN SMALL LETTER X
|
||
0x79, // y // LATIN SMALL LETTER Y
|
||
0x7a, // z // LATIN SMALL LETTER Z
|
||
0x7b, // { // LEFT CURLY BRACKET
|
||
0x7c, // | // VERTICAL LINE
|
||
0x7d, // } // RIGHT CURLY BRACKET
|
||
0x7e, // ~ // TILDE
|
||
|
||
0xb0, // ° // DEGREE SIGN
|
||
0xb1, // ± // PLUS OR MINUS
|
||
0xb7, // · // MIDDLE DOT
|
||
|
||
0xc6, // Æ // LATIN CAPITAL LETTER AE
|
||
0xd0, // Ð // LATIN CAPITAL LETTER ETH
|
||
0xd7, // × // MULTIPLICATION SIGN
|
||
0xd8, // Ø // LATIN CAPITAL LETTER O WITH STROKE
|
||
0xde, // Þ // LATIN CAPITAL LETTER THORN
|
||
0xdf, // ß // LATIN SMALL LETTER SHARP S
|
||
0xe6, // æ // LATIN SMALL LETTER AE
|
||
0xf0, // ð // LATIN SMALL LETTER ETH
|
||
0xf7, // ÷ // DIVISION SIGN
|
||
0xf8, // ø // LATIN SMALL LETTER O WITH STROKE
|
||
0xfe, // þ // LATIN SMALL LETTER THORN
|
||
|
||
0x192, // ƒ // LATIN SMALL LETTER F WITH HOOK
|
||
|
||
0x300, // ̀ // COMBINING GRAVE ACCENT
|
||
0x301, // ́ // COMBINING ACUTE ACCENT
|
||
0x302, // ̂ // COMBINING CIRCUMFLEX ACCENT
|
||
0x303, // ̃ // COMBINING TILDE
|
||
0x305, // ̅ // COMBINING OVERLINE
|
||
0x308, // ̈ // COMBINING DIAERESIS
|
||
0x30a, // ̊ // COMBINING RING ABOVE
|
||
0x30b, // ˝// COMBINING DOUBLE ACUTE ACCENT
|
||
0x327, // ̧ // COMBINING CEDILLA
|
||
|
||
0x391, // Α // GREEK CAPITAL LETTER ALPHA
|
||
0x392, // Β // GREEK CAPITAL LETTER BETA
|
||
0x393, // Γ // GREEK CAPITAL LETTER GAMMA
|
||
0x394, // Δ // GREEK CAPITAL LETTER DELTA
|
||
0x395, // Ε // GREEK CAPITAL LETTER EPSILON
|
||
0x396, // Ζ // GREEK CAPITAL LETTER ZETA
|
||
0x397, // Η // GREEK CAPITAL LETTER ETA
|
||
0x398, // Θ // GREEK CAPITAL LETTER THETA
|
||
0x399, // Ι // GREEK CAPITAL LETTER IOTA
|
||
0x39a, // Κ // GREEK CAPITAL LETTER KAPPA
|
||
0x39b, // Λ // GREEK CAPITAL LETTER LAMBDA
|
||
0x39c, // Μ // GREEK CAPITAL LETTER MU
|
||
0x39d, // Ν // GREEK CAPITAL LETTER NU
|
||
0x39e, // Ξ // GREEK CAPITAL LETTER KSI
|
||
0x39f, // Ο // GREEK CAPITAL LETTER OMICRON
|
||
0x3a0, // Π // GREEK CAPITAL LETTER PI
|
||
0x3a1, // Ρ // GREEK CAPITAL LETTER RHO
|
||
0x3a3, // Σ // GREEK CAPITAL LETTER SIGMA
|
||
0x3a4, // Τ // GREEK CAPITAL LETTER TAU
|
||
0x3a5, // Υ // GREEK CAPITAL LETTER UPSILON
|
||
0x3a6, // Φ // GREEK CAPITAL LETTER PHI
|
||
0x3a7, // Χ // GREEK CAPITAL LETTER KHI
|
||
0x3a8, // Ψ // GREEK CAPITAL LETTER PSI
|
||
0x3a9, // Ω // GREEK CAPITAL LETTER OMEGA
|
||
0x3b1, // α // GREEK SMALL LETTER ALPHA
|
||
0x3b2, // β // GREEK SMALL LETTER BETA
|
||
0x3b3, // γ // GREEK SMALL LETTER GAMMA
|
||
0x3b4, // δ // GREEK SMALL LETTER DELTA
|
||
0x3b5, // ε // GREEK SMALL LETTER EPSILON
|
||
0x3b6, // ζ // GREEK SMALL LETTER ZETA
|
||
0x3b7, // η // GREEK SMALL LETTER ETA
|
||
0x3b8, // θ // GREEK SMALL LETTER THETA
|
||
0x3b9, // ι // GREEK SMALL LETTER IOTA
|
||
0x3ba, // κ // GREEK SMALL LETTER KAPPA
|
||
0x3bb, // λ // GREEK SMALL LETTER LAMBDA
|
||
0x3bc, // μ // GREEK SMALL LETTER MU
|
||
0x3bd, // ν // GREEK SMALL LETTER NU
|
||
0x3be, // ξ // GREEK SMALL LETTER KSI
|
||
0x3bf, // ο // GREEK SMALL LETTER OMICRON
|
||
0x3c0, // π // GREEK SMALL LETTER PI
|
||
0x3c1, // ρ // GREEK SMALL LETTER RHO
|
||
0x3c3, // σ // GREEK SMALL LETTER SIGMA
|
||
0x3c4, // τ // GREEK SMALL LETTER TAU
|
||
0x3c5, // υ // GREEK SMALL LETTER UPSILON
|
||
0x3c6, // φ // GREEK SMALL LETTER PHI
|
||
0x3c7, // χ // GREEK SMALL LETTER KHI
|
||
0x3c8, // ψ // GREEK SMALL LETTER PSI
|
||
0x3c9, // ω // GREEK SMALL LETTER OMEGA
|
||
0x454, // є // CYRILLIC SMALL LETTER UKRAINIAN LE - SMALL IN (in)
|
||
0x1d07, // ᴇ // LATIN LETTER SMALL CAPITAL E
|
||
0x2026, // … // HORIZONTAL ELLIPSIS
|
||
0x212f, // ℯ // SCRIPT SMALL E
|
||
0x2190, // ← // BACKWARD ARROW (leftarrow)
|
||
0x2191, // ↑ // TOP ARROW (uparrow)
|
||
0x2192, // → // FORWARD ARROW (rightarrow)
|
||
0x2193, // ↓ // BOTTOM ARROW (downarrow)
|
||
0x2194, // ↔ // BACKWARD FORWARD ARROW (leftrightarrow)
|
||
0x2195, // ↕ // TOP BOTTOM ARROW (updownarrow)
|
||
0x2196, // ↖ // NORDWEST ARROW (nwarrow)
|
||
0x2197, // ↗ // NORDEST ARROW (nearrow)
|
||
0x2198, // ↘ // SOUTHWEST ARROW (swarrow)
|
||
0x2199, // ↙ // SOUTHEST ARROW (searrow)
|
||
0x21d0, // ⇐ // DOUBLE BACKWARD ARROW (Leftarrow)
|
||
0x21d1, // ⇑ // DOUBLE TOP ARROW (Uparrow)
|
||
0x21d2, // ⇒ // DOUBLE FORWARD ARROW (Rightarrow)
|
||
0x21d3, // ⇓ // DOUBLE BOTTOM ARROW (Downarrow)
|
||
0x2200, // ∀ // FORALL
|
||
0x2202, // ∂ // PARTIAL
|
||
0x2203, // ∃ // EXISTS (exists)
|
||
0x2204, // ∄ // NOT EXISTS (nexists)
|
||
0x2208, // ∈ // BIG IN (In)
|
||
0x2209, // ∉ // BIG NOT IN (Notin)
|
||
0x2211, // ∑ // N-ARY SUMMATION
|
||
0x221a, // √ // SQUARE ROOT
|
||
0x221e, // ∞ // INFINITY
|
||
0x2229, // ∩ // SMALL INTERSECTION (cap)
|
||
0x222a, // ∪ // SMALL UNION (cup)
|
||
0x222b, // ∫ // INTEGRAL
|
||
0x2248, // ≈ // ALMOST EQUAL TO
|
||
0x2260, // ≠ // NOT EQUAL TO
|
||
0x2261, // ≡ // IS CONGRUENT TO
|
||
0x2264, // ≤ // LESS-THAN OR EQUAL TO
|
||
0x2265, // ≥ // GREATER-THAN OR EQUAL TO
|
||
0x2282, // ⊂ // IS INCLUDED (subset)
|
||
0x2284, // ⊄ // IS NOT INCLUDED (nsubset)
|
||
0x22c2, // ⋂ // BIG INTERSECTION (Cap)
|
||
0x22c3, // ⋃ // BIG UNION (Cup)
|
||
0x2505, // ┅ // BOX DRAWING EQU HEAVY DASH HORIZONTAL
|
||
0x27e6, // ⟦ // MATHEMATICAL LEFT INT BRACKET SET
|
||
0x27e7, // ⟧ // MATHEMATICAL RIGHT INT BRACKET SET
|
||
0xFFFD, // <20> // REPLACEMENT CHARACTER
|
||
0x1d422, // 𝐢 // MATHEMATICAL BOLD SMALL I"
|
||
};
|
||
|
||
int NumberOfSimpleCodePoints = sizeof(SimpleCodePoints)/sizeof(SimpleCodePoints[0]);
|
||
int NumberOfExtendedCodePoints = sizeof(ExtendedCodePoints)/sizeof(ExtendedCodePoints[0]);
|
||
|
||
#endif
|