1. Hello!

    First of all, welcome to MapleLegends! You are currently viewing the forums as a guest, so you can only view the first post of every topic. We highly recommend registering so you can be part of our community.

    By registering to our forums you can introduce yourself and make your first friends, talk in the shoutbox, contribute, and much more!

    This process only takes a few minutes and you can always decide to lurk even after!

    - MapleLegends Administration-
  2. Experiencing crashes with 'Unknown Error'? Make sure you are on the latest MapleLegends version. The current latest version is found by clicking here.
    Dismiss Notice

Typography in GunBound

Discussion in 'Guides' started by jg, Jan 16, 2020.

  1. jg
    Offline

    jg Snail

    1
    0
    0
    Jan 13, 2020
    8:57 AM
    0_header_typography.png
    Ever wondered..

    • How some rooms or guilds have special symbols in their titles
    • How some text appears to be "wider"
    • Why most Gunbound clients do not seem to properly support accented characters (e.g. éèâîôñüïç)
    • Why GBS/GLS renders text so differently
    • Why the typical "backslash" character comes out as "₩"
    Lets take a look at a bit of Gunbound typography!


    Homegrown Text Renderer
    Fundamentally, Gunbound does not appear to call any DirectX DrawText functions. Instead it implements its own text drawing functions, which uses the font file from font.fnt inside graphics.xfs .

    In that file, there are about 32,385 letters stored as 16x16 1-bit grayscale images which look like this:

    1_standard_font.png
    [​IMG]

    Each font* has a standard height of 12px. Normal text has a width of 6px, and extended characters (symbols etc.) have a width of 12px. As the font is a bitmap, font sizes in Gunbound cannot be changed. Gunbound also has no glyphs for italicized or bold text [1].

    Since the embedded font file is localized for Korea, entering backslash (5C) prints a , as a Korean would expect from their keyboard.

    2_keyboard_kr.jpg
    [​IMG]

    Source: https://www.reddit.com/r/Mechanical...orean_board_w_korean_keycaps_txcp_all_hangul/

    *For the monospaced series

    EUC-KR
    As Softnyx was based in Korea, their custom text renderer also used "EUC-KR", which was their de-facto local character set when the game was being developed.

    Basic characters (Bytes 0x01 to 0x7F) were drawn normally like their ASCII counterparts.

    If a character was higher 0x7F , the client will "consume" the next character to determine its final appearance ("extended character").

    For example, this message in game:

    hello☆

    would have a hex representation as:

    68 65 6C 6C 6F A1 D9

    Outside of Gunbound, it probably appears as hello¡Ù; the ¡Ù will automatically appear as when pasted into the client.

    It is possible to find any arbitrary character in the EUC-KR table below. The left axis corresponds to the most significant byte, and the top/horizontal axis is for the least significant byte (the byte being "consumed")

    https://encoding.spec.whatwg.org/euc-kr.html

    This rendering system works fine for most use cases, though it is broken for accented characters used in languages like Spanish. While the glyph data exists,it is impossible to render:

    For example, the â character is E2 00, however 00 is also interpreted as a string null terminator, and the client automatically stops parsing any subsequent text.

    A bit about GBS/GLS
    Spanish-oriented clients later had support for accented characters. Softnyx ripped out the EUC-KR system, and used only an ASCII page (255 characters instead of 32,385). They also added kerning support. One caveat of this system is the loss of symbols and other unique characters.

    3_kerned.png
    [​IMG]

    This new renderer was mostly an afterthought, and many graphic assets still used the output of the original text render, resulting in a client that feels less polished.

    4_proportional.png

    (Above: The "1" in the title is oddly out of place, and the font baseline is approx 2px lower)


    Exploring the character set
    Copy the contents within the angled brackets <> and paste in Gunbound to insert the characters.

    ▲ BLACK UP-POINTING TRIANGLE (U+25B2) a1e3 <¡ã>
    △ WHITE UP-POINTING TRIANGLE (U+25B3) a1e2 <¡â>
    ▶ BLACK RIGHT-POINTING TRIANGLE (U+25B6) a2ba <¢º>
    ▷ WHITE RIGHT-POINTING TRIANGLE (U+25B7) a2b9 <¢¹>
    ▼ BLACK DOWN-POINTING TRIANGLE (U+25BC) a1e5 <¡å>
    ▽ WHITE DOWN-POINTING TRIANGLE (U+25BD) a1e4 <¡ä>
    ◀ BLACK LEFT-POINTING TRIANGLE (U+25C0) a2b8 <¢¸>
    ◁ WHITE LEFT-POINTING TRIANGLE (U+25C1) a2b7 <¢·>
    ◆ BLACK DIAMOND (U+25C6) a1df <¡ß>
    ◇ WHITE DIAMOND (U+25C7) a1de <¡Þ>
    ◈ WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND (U+25C8) a2c2 <¢Â>
    ○ WHITE CIRCLE (U+25CB) a1db <¡Û>
    ◎ BULLSEYE (U+25CE) a1dd <¡Ý>
    ● BLACK CIRCLE (U+25CF) a1dc <¡Ü>
    ◐ CIRCLE WITH LEFT HALF BLACK (U+25D0) a2c4 <¢Ä>
    ◑ CIRCLE WITH RIGHT HALF BLACK (U+25D1) a2c5 <¢Å>
    ★ BLACK STAR (U+2605) a1da <¡Ú>
    ☆ WHITE STAR (U+2606) a1d9 <¡Ù>
    ☎ BLACK TELEPHONE (U+260E) a2cf <¢Ï>
    ☏ WHITE TELEPHONE (U+260F) a2ce <¢Î>
    ☜ WHITE LEFT POINTING INDEX (U+261C) a2d0 <¢Ð>
    ☞ WHITE RIGHT POINTING INDEX (U+261E) a2d1 <¢Ñ>
    ♀ FEMALE SIGN (U+2640) a1cf <¡Ï>
    ♂ MALE SIGN (U+2642) a1ce <¡Î>
    ♠ BLACK SPADE SUIT (U+2660) a2bc <¢¼>
    ♡ WHITE HEART SUIT (U+2661) a2bd <¢½>
    ♣ BLACK CLUB SUIT (U+2663) a2c0 <¢À>
    ♤ WHITE SPADE SUIT (U+2664) a2bb <¢»>
    ♥ BLACK HEART SUIT (U+2665) a2be <¢¾>
    ♧ WHITE CLUB SUIT (U+2667) a2bf <¢¿>
    ♨ HOT SPRINGS (U+2668) a2cd <¢Í>
    ♩ QUARTER NOTE (U+2669) a2db <¢Û>
    ♪ EIGHTH NOTE (U+266A) a2dc <¢Ü>
    ♬ BEAMED SIXTEENTH NOTES (U+266C) a2dd <¢Ý>
    ♭ MUSIC FLAT SIGN (U+266D) a2da <¢Ú>

    ! FULLWIDTH EXCLAMATION MARK (U+FF01) a3a1 <£¡>
    " FULLWIDTH QUOTATION MARK (U+FF02) a3a2 <£¢>
    # FULLWIDTH NUMBER SIGN (U+FF03) a3a3 <££>
    $ FULLWIDTH DOLLAR SIGN (U+FF04) a3a4 <£¤>
    % FULLWIDTH PERCENT SIGN (U+FF05) a3a5 <£¥>
    & FULLWIDTH AMPERSAND (U+FF06) a3a6 <£¦>
    ' FULLWIDTH APOSTROPHE (U+FF07) a3a7 <£§>
    ( FULLWIDTH LEFT PARENTHESIS (U+FF08) a3a8 <£¨>
    ) FULLWIDTH RIGHT PARENTHESIS (U+FF09) a3a9 <£©>
    * FULLWIDTH ASTERISK (U+FF0A) a3aa <£ª>
    + FULLWIDTH PLUS SIGN (U+FF0B) a3ab <£«>
    , FULLWIDTH COMMA (U+FF0C) a3ac <£¬>
    - FULLWIDTH HYPHEN-MINUS (U+FF0D) a3ad <£>
    . FULLWIDTH FULL STOP (U+FF0E) a3ae <£®>
    / FULLWIDTH SOLIDUS (U+FF0F) a3af <£¯>
    0 FULLWIDTH DIGIT ZERO (U+FF10) a3b0 <£°>
    1 FULLWIDTH DIGIT ONE (U+FF11) a3b1 <£±>
    2 FULLWIDTH DIGIT TWO (U+FF12) a3b2 <£²>
    3 FULLWIDTH DIGIT THREE (U+FF13) a3b3 <£³>
    4 FULLWIDTH DIGIT FOUR (U+FF14) a3b4 <£´>
    5 FULLWIDTH DIGIT FIVE (U+FF15) a3b5 <£µ>
    6 FULLWIDTH DIGIT SIX (U+FF16) a3b6 <£¶>
    7 FULLWIDTH DIGIT SEVEN (U+FF17) a3b7 <£·>
    8 FULLWIDTH DIGIT EIGHT (U+FF18) a3b8 <£¸>
    9 FULLWIDTH DIGIT NINE (U+FF19) a3b9 <£¹>
    : FULLWIDTH COLON (U+FF1A) a3ba <£º>
    ; FULLWIDTH SEMICOLON (U+FF1B) a3bb <£»>
    < FULLWIDTH LESS-THAN SIGN (U+FF1C) a3bc <£¼>
    = FULLWIDTH EQUALS SIGN (U+FF1D) a3bd <£½>
    > FULLWIDTH GREATER-THAN SIGN (U+FF1E) a3be <£¾>
    ? FULLWIDTH QUESTION MARK (U+FF1F) a3bf <£¿>
    @ FULLWIDTH COMMERCIAL AT (U+FF20) a3c0 <£À>
    A FULLWIDTH LATIN CAPITAL LETTER A (U+FF21) a3c1 <£Á>
    B FULLWIDTH LATIN CAPITAL LETTER B (U+FF22) a3c2 <£Â>
    C FULLWIDTH LATIN CAPITAL LETTER C (U+FF23) a3c3 <£Ã>
    D FULLWIDTH LATIN CAPITAL LETTER D (U+FF24) a3c4 <£Ä>
    E FULLWIDTH LATIN CAPITAL LETTER E (U+FF25) a3c5 <£Å>
    F FULLWIDTH LATIN CAPITAL LETTER F (U+FF26) a3c6 <£Æ>
    G FULLWIDTH LATIN CAPITAL LETTER G (U+FF27) a3c7 <£Ç>
    H FULLWIDTH LATIN CAPITAL LETTER H (U+FF28) a3c8 <£È>
    I FULLWIDTH LATIN CAPITAL LETTER I (U+FF29) a3c9 <£É>
    J FULLWIDTH LATIN CAPITAL LETTER J (U+FF2A) a3ca <£Ê>
    K FULLWIDTH LATIN CAPITAL LETTER K (U+FF2B) a3cb <£Ë>
    L FULLWIDTH LATIN CAPITAL LETTER L (U+FF2C) a3cc <£Ì>
    M FULLWIDTH LATIN CAPITAL LETTER M (U+FF2D) a3cd <£Í>
    N FULLWIDTH LATIN CAPITAL LETTER N (U+FF2E) a3ce <£Î>
    O FULLWIDTH LATIN CAPITAL LETTER O (U+FF2F) a3cf <£Ï>
    P FULLWIDTH LATIN CAPITAL LETTER P (U+FF30) a3d0 <£Ð>
    Q FULLWIDTH LATIN CAPITAL LETTER Q (U+FF31) a3d1 <£Ñ>
    R FULLWIDTH LATIN CAPITAL LETTER R (U+FF32) a3d2 <£Ò>
    S FULLWIDTH LATIN CAPITAL LETTER S (U+FF33) a3d3 <£Ó>
    T FULLWIDTH LATIN CAPITAL LETTER T (U+FF34) a3d4 <£Ô>
    U FULLWIDTH LATIN CAPITAL LETTER U (U+FF35) a3d5 <£Õ>
    V FULLWIDTH LATIN CAPITAL LETTER V (U+FF36) a3d6 <£Ö>
    W FULLWIDTH LATIN CAPITAL LETTER W (U+FF37) a3d7 <£×>
    X FULLWIDTH LATIN CAPITAL LETTER X (U+FF38) a3d8 <£Ø>
    Y FULLWIDTH LATIN CAPITAL LETTER Y (U+FF39) a3d9 <£Ù>
    Z FULLWIDTH LATIN CAPITAL LETTER Z (U+FF3A) a3da <£Ú>
    [ FULLWIDTH LEFT SQUARE BRACKET (U+FF3B) a3db <£Û>
    \ FULLWIDTH REVERSE SOLIDUS (U+FF3C) a1ac <¡¬>
    ] FULLWIDTH RIGHT SQUARE BRACKET (U+FF3D) a3dd <£Ý>
    ^ FULLWIDTH CIRCUMFLEX ACCENT (U+FF3E) a3de <£Þ>
    _ FULLWIDTH LOW LINE (U+FF3F) a3df <£ß>
    ` FULLWIDTH GRAVE ACCENT (U+FF40) a3e0 <£à>
    a FULLWIDTH LATIN SMALL LETTER A (U+FF41) a3e1 <£á>
    b FULLWIDTH LATIN SMALL LETTER B (U+FF42) a3e2 <£â>
    c FULLWIDTH LATIN SMALL LETTER C (U+FF43) a3e3 <£ã>
    d FULLWIDTH LATIN SMALL LETTER D (U+FF44) a3e4 <£ä>
    e FULLWIDTH LATIN SMALL LETTER E (U+FF45) a3e5 <£å>
    f FULLWIDTH LATIN SMALL LETTER F (U+FF46) a3e6 <£æ>
    g FULLWIDTH LATIN SMALL LETTER G (U+FF47) a3e7 <£ç>
    h FULLWIDTH LATIN SMALL LETTER H (U+FF48) a3e8 <£è>
    i FULLWIDTH LATIN SMALL LETTER I (U+FF49) a3e9 <£é>
    j FULLWIDTH LATIN SMALL LETTER J (U+FF4A) a3ea <£ê>
    k FULLWIDTH LATIN SMALL LETTER K (U+FF4B) a3eb <£ë>
    l FULLWIDTH LATIN SMALL LETTER L (U+FF4C) a3ec <£ì>
    m FULLWIDTH LATIN SMALL LETTER M (U+FF4D) a3ed <£í>
    n FULLWIDTH LATIN SMALL LETTER N (U+FF4E) a3ee <£î>
    o FULLWIDTH LATIN SMALL LETTER O (U+FF4F) a3ef <£ï>
    p FULLWIDTH LATIN SMALL LETTER P (U+FF50) a3f0 <£ð>
    q FULLWIDTH LATIN SMALL LETTER Q (U+FF51) a3f1 <£ñ>
    r FULLWIDTH LATIN SMALL LETTER R (U+FF52) a3f2 <£ò>
    s FULLWIDTH LATIN SMALL LETTER S (U+FF53) a3f3 <£ó>
    t FULLWIDTH LATIN SMALL LETTER T (U+FF54) a3f4 <£ô>
    u FULLWIDTH LATIN SMALL LETTER U (U+FF55) a3f5 <£õ>
    v FULLWIDTH LATIN SMALL LETTER V (U+FF56) a3f6 <£ö>
    w FULLWIDTH LATIN SMALL LETTER W (U+FF57) a3f7 <£÷>
    x FULLWIDTH LATIN SMALL LETTER X (U+FF58) a3f8 <£ø>
    y FULLWIDTH LATIN SMALL LETTER Y (U+FF59) a3f9 <£ù>
    z FULLWIDTH LATIN SMALL LETTER Z (U+FF5A) a3fa <£ú>
    { FULLWIDTH LEFT CURLY BRACKET (U+FF5B) a3fb <£û>
    | FULLWIDTH VERTICAL LINE (U+FF5C) a3fc <£ü>
    } FULLWIDTH RIGHT CURLY BRACKET (U+FF5D) a3fd <£ý>
    ~ FULLWIDTH TILDE (U+FF5E) a2a6 <¢¦>
    ¢ FULLWIDTH CENT SIGN (U+FFE0) a1cb <¡Ë>
    £ FULLWIDTH POUND SIGN (U+FFE1) a1cc <¡Ì>
    ¬ FULLWIDTH NOT SIGN (U+FFE2) a1fe <¡þ>
     ̄ FULLWIDTH MACRON (U+FFE3) a3fe <£þ>
    ¥ FULLWIDTH YEN SIGN (U+FFE5) a1cd <¡Í>
    ₩ FULLWIDTH WON SIGN (U+FFE6) a3dc <£Ü>

    ─ BOX DRAWINGS LIGHT HORIZONTAL (U+2500) a6a1 <¦¡>
    ━ BOX DRAWINGS HEAVY HORIZONTAL (U+2501) a6ac <¦¬>
    │ BOX DRAWINGS LIGHT VERTICAL (U+2502) a6a2 <¦¢>
    ┃ BOX DRAWINGS HEAVY VERTICAL (U+2503) a6ad <¦>
    ┌ BOX DRAWINGS LIGHT DOWN AND RIGHT (U+250C) a6a3 <¦£>
    ┍ BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY (U+250D) a6c8 <¦È>
    ┎ BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT (U+250E) a6c7 <¦Ç>
    ┏ BOX DRAWINGS HEAVY DOWN AND RIGHT (U+250F) a6ae <¦®>
    ┐ BOX DRAWINGS LIGHT DOWN AND LEFT (U+2510) a6a4 <¦¤>
    ┑ BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY (U+2511) a6c2 <¦Â>
    ┒ BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT (U+2512) a6c1 <¦Á>
    ┓ BOX DRAWINGS HEAVY DOWN AND LEFT (U+2513) a6af <¦¯>
    └ BOX DRAWINGS LIGHT UP AND RIGHT (U+2514) a6a6 <¦¦>
    ┕ BOX DRAWINGS UP LIGHT AND RIGHT HEAVY (U+2515) a6c6 <¦Æ>
    ┖ BOX DRAWINGS UP HEAVY AND RIGHT LIGHT (U+2516) a6c5 <¦Å>
    ┗ BOX DRAWINGS HEAVY UP AND RIGHT (U+2517) a6b1 <¦±>
    ┘ BOX DRAWINGS LIGHT UP AND LEFT (U+2518) a6a5 <¦¥>
    ┙ BOX DRAWINGS UP LIGHT AND LEFT HEAVY (U+2519) a6c4 <¦Ä>
    ┚ BOX DRAWINGS UP HEAVY AND LEFT LIGHT (U+251A) a6c3 <¦Ã>
    ┛ BOX DRAWINGS HEAVY UP AND LEFT (U+251B) a6b0 <¦°>
    ├ BOX DRAWINGS LIGHT VERTICAL AND RIGHT (U+251C) a6a7 <¦§>
    ┝ BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY (U+251D) a6bc <¦¼>
    ┞ BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT (U+251E) a6c9 <¦É>
    ┟ BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT (U+251F) a6ca <¦Ê>
    ┠ BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT (U+2520) a6b7 <¦·>
    ┡ BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY (U+2521) a6cb <¦Ë>
    ┢ BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY (U+2522) a6cc <¦Ì>
    ┣ BOX DRAWINGS HEAVY VERTICAL AND RIGHT (U+2523) a6b2 <¦²>
    ┤ BOX DRAWINGS LIGHT VERTICAL AND LEFT (U+2524) a6a9 <¦©>
    ┥ BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY (U+2525) a6be <¦¾>
    ┦ BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT (U+2526) a6cd <¦Í>
    ┧ BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT (U+2527) a6ce <¦Î>
    ┨ BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT (U+2528) a6b9 <¦¹>
    ┩ BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY (U+2529) a6cf <¦Ï>
    ┪ BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY (U+252A) a6d0 <¦Ð>
    ┫ BOX DRAWINGS HEAVY VERTICAL AND LEFT (U+252B) a6b4 <¦´>
    ┬ BOX DRAWINGS LIGHT DOWN AND HORIZONTAL (U+252C) a6a8 <¦¨>
    ┭ BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT (U+252D) a6d1 <¦Ñ>
    ┮ BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT (U+252E) a6d2 <¦Ò>
    ┯ BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY (U+252F) a6b8 <¦¸>
    ┰ BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT (U+2530) a6bd <¦½>
    ┱ BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY (U+2531) a6d3 <¦Ó>
    ┲ BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY (U+2532) a6d4 <¦Ô>
    ┳ BOX DRAWINGS HEAVY DOWN AND HORIZONTAL (U+2533) a6b3 <¦³>
    ┴ BOX DRAWINGS LIGHT UP AND HORIZONTAL (U+2534) a6aa <¦ª>
    ┵ BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT (U+2535) a6d5 <¦Õ>
    ┶ BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT (U+2536) a6d6 <¦Ö>
    ┷ BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY (U+2537) a6ba <¦º>
    ┸ BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT (U+2538) a6bf <¦¿>
    ┹ BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY (U+2539) a6d7 <¦×>
    ┺ BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY (U+253A) a6d8 <¦Ø>
    ┻ BOX DRAWINGS HEAVY UP AND HORIZONTAL (U+253B) a6b5 <¦µ>
    ┼ BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL (U+253C) a6ab <¦«>
    ┽ BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT (U+253D) a6d9 <¦Ù>
    ┾ BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT (U+253E) a6da <¦Ú>
    ┿ BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY (U+253F) a6bb <¦»>
    ╀ BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT (U+2540) a6db <¦Û>
    ╁ BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT (U+2541) a6dc <¦Ü>
    ╂ BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT (U+2542) a6c0 <¦À>
    ╃ BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT (U+2543) a6dd <¦Ý>
    ╄ BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT (U+2544) a6de <¦Þ>
    ╅ BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT (U+2545) a6df <¦ß>
    ╆ BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT (U+2546) a6e0 <¦à>
    ╇ BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY (U+2547) a6e1 <¦á>
    ╈ BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY (U+2548) a6e2 <¦â>
    ╉ BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY (U+2549) a6e3 <¦ã>
    ╊ BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY (U+254A) a6e4 <¦ä>
    ╋ BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL (U+254B) a6b6 <¦¶>
    ▒ MEDIUM SHADE (U+2592) a2c6 <¢Æ>
    ■ BLACK SQUARE (U+25A0) a1e1 <¡á>
    □ WHITE SQUARE (U+25A1) a1e0 <¡à>
    ▣ WHITE SQUARE CONTAINING BLACK SMALL SQUARE (U+25A3) a2c3 <¢Ã>
    ▤ SQUARE WITH HORIZONTAL FILL (U+25A4) a2c7 <¢Ç>
    ▥ SQUARE WITH VERTICAL FILL (U+25A5) a2c8 <¢È>
    ▦ SQUARE WITH ORTHOGONAL CROSSHATCH FILL (U+25A6) a2cb <¢Ë>
    ▧ SQUARE WITH UPPER LEFT TO LOWER RIGHT FILL (U+25A7) a2ca <¢Ê>
    ▨ SQUARE WITH UPPER RIGHT TO LOWER LEFT FILL (U+25A8) a2c9 <¢É>
    ▩ SQUARE WITH DIAGONAL CROSSHATCH FILL (U+25A9) a2cc <¢Ì>

    ① CIRCLED DIGIT ONE (U+2460) a8e7 <¨ç>
    ② CIRCLED DIGIT TWO (U+2461) a8e8 <¨è>
    ③ CIRCLED DIGIT THREE (U+2462) a8e9 <¨é>
    ④ CIRCLED DIGIT FOUR (U+2463) a8ea <¨ê>
    ⑤ CIRCLED DIGIT FIVE (U+2464) a8eb <¨ë>
    ⑥ CIRCLED DIGIT SIX (U+2465) a8ec <¨ì>
    ⑦ CIRCLED DIGIT SEVEN (U+2466) a8ed <¨í>
    ⑧ CIRCLED DIGIT EIGHT (U+2467) a8ee <¨î>
    ⑨ CIRCLED DIGIT NINE (U+2468) a8ef <¨ï>
    ⑩ CIRCLED NUMBER TEN (U+2469) a8f0 <¨ð>
    ⑪ CIRCLED NUMBER ELEVEN (U+246A) a8f1 <¨ñ>
    ⑫ CIRCLED NUMBER TWELVE (U+246B) a8f2 <¨ò>
    ⑬ CIRCLED NUMBER THIRTEEN (U+246C) a8f3 <¨ó>
    ⑭ CIRCLED NUMBER FOURTEEN (U+246D) a8f4 <¨ô>
    ⑮ CIRCLED NUMBER FIFTEEN (U+246E) a8f5 <¨õ>
    ⑴ PARENTHESIZED DIGIT ONE (U+2474) a9e7 <©ç>
    ⑵ PARENTHESIZED DIGIT TWO (U+2475) a9e8 <©è>
    ⑶ PARENTHESIZED DIGIT THREE (U+2476) a9e9 <©é>
    ⑷ PARENTHESIZED DIGIT FOUR (U+2477) a9ea <©ê>
    ⑸ PARENTHESIZED DIGIT FIVE (U+2478) a9eb <©ë>
    ⑹ PARENTHESIZED DIGIT SIX (U+2479) a9ec <©ì>
    ⑺ PARENTHESIZED DIGIT SEVEN (U+247A) a9ed <©í>
    ⑻ PARENTHESIZED DIGIT EIGHT (U+247B) a9ee <©î>
    ⑼ PARENTHESIZED DIGIT NINE (U+247C) a9ef <©ï>
    ⑽ PARENTHESIZED NUMBER TEN (U+247D) a9f0 <©ð>
    ⑾ PARENTHESIZED NUMBER ELEVEN (U+247E) a9f1 <©ñ>
    ⑿ PARENTHESIZED NUMBER TWELVE (U+247F) a9f2 <©ò>
    ⒀ PARENTHESIZED NUMBER THIRTEEN (U+2480) a9f3 <©ó>
    ⒁ PARENTHESIZED NUMBER FOURTEEN (U+2481) a9f4 <©ô>
    ⒂ PARENTHESIZED NUMBER FIFTEEN (U+2482) a9f5 <©õ>
    ⒜ PARENTHESIZED LATIN SMALL LETTER A (U+249C) a9cd <©Í>
    ⒝ PARENTHESIZED LATIN SMALL LETTER B (U+249D) a9ce <©Î>
    ⒞ PARENTHESIZED LATIN SMALL LETTER C (U+249E) a9cf <©Ï>
    ⒟ PARENTHESIZED LATIN SMALL LETTER D (U+249F) a9d0 <©Ð>
    ⒠ PARENTHESIZED LATIN SMALL LETTER E (U+24A0) a9d1 <©Ñ>
    ⒡ PARENTHESIZED LATIN SMALL LETTER F (U+24A1) a9d2 <©Ò>
    ⒢ PARENTHESIZED LATIN SMALL LETTER G (U+24A2) a9d3 <©Ó>
    ⒣ PARENTHESIZED LATIN SMALL LETTER H (U+24A3) a9d4 <©Ô>
    ⒤ PARENTHESIZED LATIN SMALL LETTER I (U+24A4) a9d5 <©Õ>
    ⒥ PARENTHESIZED LATIN SMALL LETTER J (U+24A5) a9d6 <©Ö>
    ⒦ PARENTHESIZED LATIN SMALL LETTER K (U+24A6) a9d7 <©×>
    ⒧ PARENTHESIZED LATIN SMALL LETTER L (U+24A7) a9d8 <©Ø>
    ⒨ PARENTHESIZED LATIN SMALL LETTER M (U+24A8) a9d9 <©Ù>
    ⒩ PARENTHESIZED LATIN SMALL LETTER N (U+24A9) a9da <©Ú>
    ⒪ PARENTHESIZED LATIN SMALL LETTER O (U+24AA) a9db <©Û>
    ⒫ PARENTHESIZED LATIN SMALL LETTER P (U+24AB) a9dc <©Ü>
    ⒬ PARENTHESIZED LATIN SMALL LETTER Q (U+24AC) a9dd <©Ý>
    ⒭ PARENTHESIZED LATIN SMALL LETTER R (U+24AD) a9de <©Þ>
    ⒮ PARENTHESIZED LATIN SMALL LETTER S (U+24AE) a9df <©ß>
    ⒯ PARENTHESIZED LATIN SMALL LETTER T (U+24AF) a9e0 <©à>
    ⒰ PARENTHESIZED LATIN SMALL LETTER U (U+24B0) a9e1 <©á>
    ⒱ PARENTHESIZED LATIN SMALL LETTER V (U+24B1) a9e2 <©â>
    ⒲ PARENTHESIZED LATIN SMALL LETTER W (U+24B2) a9e3 <©ã>
    ⒳ PARENTHESIZED LATIN SMALL LETTER X (U+24B3) a9e4 <©ä>
    ⒴ PARENTHESIZED LATIN SMALL LETTER Y (U+24B4) a9e5 <©å>
    ⒵ PARENTHESIZED LATIN SMALL LETTER Z (U+24B5) a9e6 <©æ>
    ⓐ CIRCLED LATIN SMALL LETTER A (U+24D0) a8cd <¨Í>
    ⓑ CIRCLED LATIN SMALL LETTER B (U+24D1) a8ce <¨Î>
    ⓒ CIRCLED LATIN SMALL LETTER C (U+24D2) a8cf <¨Ï>
    ⓓ CIRCLED LATIN SMALL LETTER D (U+24D3) a8d0 <¨Ð>
    ⓔ CIRCLED LATIN SMALL LETTER E (U+24D4) a8d1 <¨Ñ>
    ⓕ CIRCLED LATIN SMALL LETTER F (U+24D5) a8d2 <¨Ò>
    ⓖ CIRCLED LATIN SMALL LETTER G (U+24D6) a8d3 <¨Ó>
    ⓗ CIRCLED LATIN SMALL LETTER H (U+24D7) a8d4 <¨Ô>
    ⓘ CIRCLED LATIN SMALL LETTER I (U+24D8) a8d5 <¨Õ>
    ⓙ CIRCLED LATIN SMALL LETTER J (U+24D9) a8d6 <¨Ö>
    ⓚ CIRCLED LATIN SMALL LETTER K (U+24DA) a8d7 <¨×>
    ⓛ CIRCLED LATIN SMALL LETTER L (U+24DB) a8d8 <¨Ø>
    ⓜ CIRCLED LATIN SMALL LETTER M (U+24DC) a8d9 <¨Ù>
    ⓝ CIRCLED LATIN SMALL LETTER N (U+24DD) a8da <¨Ú>
    ⓞ CIRCLED LATIN SMALL LETTER O (U+24DE) a8db <¨Û>
    ⓟ CIRCLED LATIN SMALL LETTER P (U+24DF) a8dc <¨Ü>
    ⓠ CIRCLED LATIN SMALL LETTER Q (U+24E0) a8dd <¨Ý>
    ⓡ CIRCLED LATIN SMALL LETTER R (U+24E1) a8de <¨Þ>
    ⓢ CIRCLED LATIN SMALL LETTER S (U+24E2) a8df <¨ß>
    ⓣ CIRCLED LATIN SMALL LETTER T (U+24E3) a8e0 <¨à>
    ⓤ CIRCLED LATIN SMALL LETTER U (U+24E4) a8e1 <¨á>
    ⓥ CIRCLED LATIN SMALL LETTER V (U+24E5) a8e2 <¨â>
    ⓦ CIRCLED LATIN SMALL LETTER W (U+24E6) a8e3 <¨ã>
    ⓧ CIRCLED LATIN SMALL LETTER X (U+24E7) a8e4 <¨ä>
    ⓨ CIRCLED LATIN SMALL LETTER Y (U+24E8) a8e5 <¨å>
    ⓩ CIRCLED LATIN SMALL LETTER Z (U+24E9) a8e6 <¨æ>
    ㈀ PARENTHESIZED HANGUL KIYEOK (U+3200) a9b1 <©±>
    ㈁ PARENTHESIZED HANGUL NIEUN (U+3201) a9b2 <©²>
    ㈂ PARENTHESIZED HANGUL TIKEUT (U+3202) a9b3 <©³>
    ㈃ PARENTHESIZED HANGUL RIEUL (U+3203) a9b4 <©´>
    ㈄ PARENTHESIZED HANGUL MIEUM (U+3204) a9b5 <©µ>
    ㈅ PARENTHESIZED HANGUL PIEUP (U+3205) a9b6 <©¶>
    ㈆ PARENTHESIZED HANGUL SIOS (U+3206) a9b7 <©·>
    ㈇ PARENTHESIZED HANGUL IEUNG (U+3207) a9b8 <©¸>
    ㈈ PARENTHESIZED HANGUL CIEUC (U+3208) a9b9 <©¹>
    ㈉ PARENTHESIZED HANGUL CHIEUCH (U+3209) a9ba <©º>
    ㈊ PARENTHESIZED HANGUL KHIEUKH (U+320A) a9bb <©»>
    ㈋ PARENTHESIZED HANGUL THIEUTH (U+320B) a9bc <©¼>
    ㈌ PARENTHESIZED HANGUL PHIEUPH (U+320C) a9bd <©½>
    ㈍ PARENTHESIZED HANGUL HIEUH (U+320D) a9be <©¾>
    ㈎ PARENTHESIZED HANGUL KIYEOK A (U+320E) a9bf <©¿>
    ㈏ PARENTHESIZED HANGUL NIEUN A (U+320F) a9c0 <©À>
    ㈐ PARENTHESIZED HANGUL TIKEUT A (U+3210) a9c1 <©Á>
    ㈑ PARENTHESIZED HANGUL RIEUL A (U+3211) a9c2 <©Â>
    ㈒ PARENTHESIZED HANGUL MIEUM A (U+3212) a9c3 <©Ã>
    ㈓ PARENTHESIZED HANGUL PIEUP A (U+3213) a9c4 <©Ä>
    ㈔ PARENTHESIZED HANGUL SIOS A (U+3214) a9c5 <©Å>
    ㈕ PARENTHESIZED HANGUL IEUNG A (U+3215) a9c6 <©Æ>
    ㈖ PARENTHESIZED HANGUL CIEUC A (U+3216) a9c7 <©Ç>
    ㈗ PARENTHESIZED HANGUL CHIEUCH A (U+3217) a9c8 <©È>
    ㈘ PARENTHESIZED HANGUL KHIEUKH A (U+3218) a9c9 <©É>
    ㈙ PARENTHESIZED HANGUL THIEUTH A (U+3219) a9ca <©Ê>
    ㈚ PARENTHESIZED HANGUL PHIEUPH A (U+321A) a9cb <©Ë>
    ㈛ PARENTHESIZED HANGUL HIEUH A (U+321B) a9cc <©Ì>
    ㈜ PARENTHESIZED HANGUL CIEUC U (U+321C) a2df <¢ß>
    ㉠ CIRCLED HANGUL KIYEOK (U+3260) a8b1 <¨±>
    ㉡ CIRCLED HANGUL NIEUN (U+3261) a8b2 <¨²>
    ㉢ CIRCLED HANGUL TIKEUT (U+3262) a8b3 <¨³>
    ㉣ CIRCLED HANGUL RIEUL (U+3263) a8b4 <¨´>
    ㉤ CIRCLED HANGUL MIEUM (U+3264) a8b5 <¨µ>
    ㉥ CIRCLED HANGUL PIEUP (U+3265) a8b6 <¨¶>
    ㉦ CIRCLED HANGUL SIOS (U+3266) a8b7 <¨·>
    ㉧ CIRCLED HANGUL IEUNG (U+3267) a8b8 <¨¸>
    ㉨ CIRCLED HANGUL CIEUC (U+3268) a8b9 <¨¹>
    ㉩ CIRCLED HANGUL CHIEUCH (U+3269) a8ba <¨º>
    ㉪ CIRCLED HANGUL KHIEUKH (U+326A) a8bb <¨»>
    ㉫ CIRCLED HANGUL THIEUTH (U+326B) a8bc <¨¼>
    ㉬ CIRCLED HANGUL PHIEUPH (U+326C) a8bd <¨½>
    ㉭ CIRCLED HANGUL HIEUH (U+326D) a8be <¨¾>
    ㉮ CIRCLED HANGUL KIYEOK A (U+326E) a8bf <¨¿>
    ㉯ CIRCLED HANGUL NIEUN A (U+326F) a8c0 <¨À>
    ㉰ CIRCLED HANGUL TIKEUT A (U+3270) a8c1 <¨Á>
    ㉱ CIRCLED HANGUL RIEUL A (U+3271) a8c2 <¨Â>
    ㉲ CIRCLED HANGUL MIEUM A (U+3272) a8c3 <¨Ã>
    ㉳ CIRCLED HANGUL PIEUP A (U+3273) a8c4 <¨Ä>
    ㉴ CIRCLED HANGUL SIOS A (U+3274) a8c5 <¨Å>
    ㉵ CIRCLED HANGUL IEUNG A (U+3275) a8c6 <¨Æ>
    ㉶ CIRCLED HANGUL CIEUC A (U+3276) a8c7 <¨Ç>
    ㉷ CIRCLED HANGUL CHIEUCH A (U+3277) a8c8 <¨È>
    ㉸ CIRCLED HANGUL KHIEUKH A (U+3278) a8c9 <¨É>
    ㉹ CIRCLED HANGUL THIEUTH A (U+3279) a8ca <¨Ê>
    ㉺ CIRCLED HANGUL PHIEUPH A (U+327A) a8cb <¨Ë>
    ㉻ CIRCLED HANGUL HIEUH A (U+327B) a8cc <¨Ì>
    ㉾ CIRCLED HANGUL IEUNG U (U+327E) a2e8 <¢è>
    ㉿ KOREAN STANDARD SYMBOL (U+327F) a2de <¢Þ>

    ― HORIZONTAL BAR (U+2015) a1aa <¡ª>
    ‘ LEFT SINGLE QUOTATION MARK (U+2018) a1ae <¡®>
    ’ RIGHT SINGLE QUOTATION MARK (U+2019) a1af <¡¯>
    “ LEFT DOUBLE QUOTATION MARK (U+201C) a1b0 <¡°>
    ” RIGHT DOUBLE QUOTATION MARK (U+201D) a1b1 <¡±>
    † DAGGER (U+2020) a2d3 <¢Ó>
    ‡ DOUBLE DAGGER (U+2021) a2d4 <¢Ô>
    ‥ TWO DOT LEADER (U+2025) a1a5 <¡¥>
    … HORIZONTAL ELLIPSIS (U+2026) a1a6 <¡¦>
    ‰ PER MILLE SIGN (U+2030) a2b6 <¢¶>
    ′ PRIME (U+2032) a1c7 <¡Ç>
    ″ DOUBLE PRIME (U+2033) a1c8 <¡È>
    ※ REFERENCE MARK (U+203B) a1d8 <¡Ø>
    ⁴ SUPERSCRIPT FOUR (U+2074) a9f9 <©ù>
    ⁿ SUPERSCRIPT LATIN SMALL LETTER N (U+207F) a9fa <©ú>
    ₁ SUBSCRIPT ONE (U+2081) a9fb <©û>
    ₂ SUBSCRIPT TWO (U+2082) a9fc <©ü>
    ₃ SUBSCRIPT THREE (U+2083) a9fd <©ý>
    ₄ SUBSCRIPT FOUR (U+2084) a9fe <©þ>
    € EURO SIGN (U+20AC) a2e6 <¢æ>
    ℃ DEGREE CELSIUS (U+2103) a1c9 <¡É>
    ℉ DEGREE FAHRENHEIT (U+2109) a2b5 <¢µ>
    ℓ SCRIPT SMALL L (U+2113) a7a4 <§¤>
    № NUMERO SIGN (U+2116) a2e0 <¢à>
    ℡ TELEPHONE SIGN (U+2121) a2e5 <¢å>
    ™ TRADE MARK SIGN (U+2122) a2e2 <¢â>
    Ω OHM SIGN (U+2126) a7d9 <§Ù>
    Å ANGSTROM SIGN (U+212B) a1ca <¡Ê>
    ⅓ VULGAR FRACTION ONE THIRD (U+2153) a8f7 <¨÷>
    ⅔ VULGAR FRACTION TWO THIRDS (U+2154) a8f8 <¨ø>
    ⅛ VULGAR FRACTION ONE EIGHTH (U+215B) a8fb <¨û>
    ⅜ VULGAR FRACTION THREE EIGHTHS (U+215C) a8fc <¨ü>
    ⅝ VULGAR FRACTION FIVE EIGHTHS (U+215D) a8fd <¨ý>
    ⅞ VULGAR FRACTION SEVEN EIGHTHS (U+215E) a8fe <¨þ>
    Ⅰ ROMAN NUMERAL ONE (U+2160) a5b0 <¥°>
    Ⅱ ROMAN NUMERAL TWO (U+2161) a5b1 <¥±>
    Ⅲ ROMAN NUMERAL THREE (U+2162) a5b2 <¥²>
    Ⅳ ROMAN NUMERAL FOUR (U+2163) a5b3 <¥³>
    Ⅴ ROMAN NUMERAL FIVE (U+2164) a5b4 <¥´>
    Ⅵ ROMAN NUMERAL SIX (U+2165) a5b5 <¥µ>
    Ⅶ ROMAN NUMERAL SEVEN (U+2166) a5b6 <¥¶>
    Ⅷ ROMAN NUMERAL EIGHT (U+2167) a5b7 <¥·>
    Ⅸ ROMAN NUMERAL NINE (U+2168) a5b8 <¥¸>
    Ⅹ ROMAN NUMERAL TEN (U+2169) a5b9 <¥¹>
    ⅰ SMALL ROMAN NUMERAL ONE (U+2170) a5a1 <¥¡>
    ⅱ SMALL ROMAN NUMERAL TWO (U+2171) a5a2 <¥¢>
    ⅲ SMALL ROMAN NUMERAL THREE (U+2172) a5a3 <¥£>
    ⅳ SMALL ROMAN NUMERAL FOUR (U+2173) a5a4 <¥¤>
    ⅴ SMALL ROMAN NUMERAL FIVE (U+2174) a5a5 <¥¥>
    ⅵ SMALL ROMAN NUMERAL SIX (U+2175) a5a6 <¥¦>
    ⅶ SMALL ROMAN NUMERAL SEVEN (U+2176) a5a7 <¥§>
    ⅷ SMALL ROMAN NUMERAL EIGHT (U+2177) a5a8 <¥¨>
    ⅸ SMALL ROMAN NUMERAL NINE (U+2178) a5a9 <¥©>
    ⅹ SMALL ROMAN NUMERAL TEN (U+2179) a5aa <¥ª>
    ㎀ SQUARE PA AMPS (U+3380) a7c9 <§É>
    ㎁ SQUARE NA (U+3381) a7ca <§Ê>
    ㎂ SQUARE MU A (U+3382) a7cb <§Ë>
    ㎃ SQUARE MA (U+3383) a7cc <§Ì>
    ㎄ SQUARE KA (U+3384) a7cd <§Í>
    ㎈ SQUARE CAL (U+3388) a7ba <§º>
    ㎉ SQUARE KCAL (U+3389) a7bb <§»>
    ㎊ SQUARE PF (U+338A) a7dc <§Ü>
    ㎋ SQUARE NF (U+338B) a7dd <§Ý>
    ㎌ SQUARE MU F (U+338C) a7de <§Þ>
    ㎍ SQUARE MU G (U+338D) a7b6 <§¶>
    ㎎ SQUARE MG (U+338E) a7b7 <§·>
    ㎏ SQUARE KG (U+338F) a7b8 <§¸>
    ㎐ SQUARE HZ (U+3390) a7d4 <§Ô>
    ㎑ SQUARE KHZ (U+3391) a7d5 <§Õ>
    ㎒ SQUARE MHZ (U+3392) a7d6 <§Ö>
    ㎓ SQUARE GHZ (U+3393) a7d7 <§×>
    ㎔ SQUARE THZ (U+3394) a7d8 <§Ø>
    ㎕ SQUARE MU L (U+3395) a7a1 <§¡>
    ㎖ SQUARE ML (U+3396) a7a2 <§¢>
    ㎗ SQUARE DL (U+3397) a7a3 <§£>
    ㎘ SQUARE KL (U+3398) a7a5 <§¥>
    ㎙ SQUARE FM (U+3399) a7ab <§«>
    ㎚ SQUARE NM (U+339A) a7ac <§¬>
    ㎛ SQUARE MU M (U+339B) a7ad <§>
    ㎜ SQUARE MM (U+339C) a7ae <§®>
    ㎝ SQUARE CM (U+339D) a7af <§¯>
    ㎞ SQUARE KM (U+339E) a7b0 <§°>
    ㎟ SQUARE MM SQUARED (U+339F) a7b1 <§±>
    ㎠ SQUARE CM SQUARED (U+33A0) a7b2 <§²>
    ㎡ SQUARE M SQUARED (U+33A1) a7b3 <§³>
    ㎢ SQUARE KM SQUARED (U+33A2) a7b4 <§´>
    ㎣ SQUARE MM CUBED (U+33A3) a7a7 <§§>
    ㎤ SQUARE CM CUBED (U+33A4) a7a8 <§¨>
    ㎥ SQUARE M CUBED (U+33A5) a7a9 <§©>
    ㎦ SQUARE KM CUBED (U+33A6) a7aa <§ª>
    ㎧ SQUARE M OVER S (U+33A7) a7bd <§½>
    ㎨ SQUARE M OVER S SQUARED (U+33A8) a7be <§¾>
    ㎩ SQUARE PA (U+33A9) a7e5 <§å>
    ㎪ SQUARE KPA (U+33AA) a7e6 <§æ>
    ㎫ SQUARE MPA (U+33AB) a7e7 <§ç>
    ㎬ SQUARE GPA (U+33AC) a7e8 <§è>
    ㎭ SQUARE RAD (U+33AD) a7e1 <§á>
    ㎮ SQUARE RAD OVER S (U+33AE) a7e2 <§â>
    ㎯ SQUARE RAD OVER S SQUARED (U+33AF) a7e3 <§ã>
    ㎰ SQUARE PS (U+33B0) a7bf <§¿>
    ㎱ SQUARE NS (U+33B1) a7c0 <§À>
    ㎲ SQUARE MU S (U+33B2) a7c1 <§Á>
    ㎳ SQUARE MS (U+33B3) a7c2 <§Â>
    ㎴ SQUARE PV (U+33B4) a7c3 <§Ã>
    ㎵ SQUARE NV (U+33B5) a7c4 <§Ä>
    ㎶ SQUARE MU V (U+33B6) a7c5 <§Å>
    ㎷ SQUARE MV (U+33B7) a7c6 <§Æ>
    ㎸ SQUARE KV (U+33B8) a7c7 <§Ç>
    ㎹ SQUARE MV MEGA (U+33B9) a7c8 <§È>
    ㎺ SQUARE PW (U+33BA) a7ce <§Î>
    ㎻ SQUARE NW (U+33BB) a7cf <§Ï>
    ㎼ SQUARE MU W (U+33BC) a7d0 <§Ð>
    ㎽ SQUARE MW (U+33BD) a7d1 <§Ñ>
    ㎾ SQUARE KW (U+33BE) a7d2 <§Ò>
    ㎿ SQUARE MW MEGA (U+33BF) a7d3 <§Ó>
    ㏀ SQUARE K OHM (U+33C0) a7da <§Ú>
    ㏁ SQUARE M OHM (U+33C1) a7db <§Û>
    ㏂ SQUARE AM (U+33C2) a2e3 <¢ã>
    ㏃ SQUARE BQ (U+33C3) a7ec <§ì>
    ㏄ SQUARE CC (U+33C4) a7a6 <§¦>
    ㏅ SQUARE CD (U+33C5) a7e0 <§à>
    ㏆ SQUARE C OVER KG (U+33C6) a7ef <§ï>
    ㏇ SQUARE CO (U+33C7) a2e1 <¢á>
    ㏈ SQUARE DB (U+33C8) a7bc <§¼>
    ㏉ SQUARE GY (U+33C9) a7ed <§í>
    ㏊ SQUARE HA (U+33CA) a7b5 <§µ>
    ㏏ SQUARE KT (U+33CF) a7b9 <§¹>
    ㏐ SQUARE LM (U+33D0) a7ea <§ê>
    ㏓ SQUARE LX (U+33D3) a7eb <§ë>
    ㏖ SQUARE MOL (U+33D6) a7df <§ß>
    ㏘ SQUARE PM (U+33D8) a2e4 <¢ä>
    ㏛ SQUARE SR (U+33DB) a7e4 <§ä>
    ㏜ SQUARE SV (U+33DC) a7ee <§î>
    ㏝ SQUARE WB (U+33DD) a7e9 <§é>

    ← LEFTWARDS ARROW (U+2190) a1e7 <¡ç>
    ↑ UPWARDS ARROW (U+2191) a1e8 <¡è>
    → RIGHTWARDS ARROW (U+2192) a1e6 <¡æ>
    ↓ DOWNWARDS ARROW (U+2193) a1e9 <¡é>
    ↔ LEFT RIGHT ARROW (U+2194) a1ea <¡ê>
    ↕ UP DOWN ARROW (U+2195) a2d5 <¢Õ>
    ↖ NORTH WEST ARROW (U+2196) a2d8 <¢Ø>
    ↗ NORTH EAST ARROW (U+2197) a2d6 <¢Ö>
    ↘ SOUTH EAST ARROW (U+2198) a2d9 <¢Ù>
    ↙ SOUTH WEST ARROW (U+2199) a2d7 <¢×>
    ⇒ RIGHTWARDS DOUBLE ARROW (U+21D2) a2a1 <¢¡>
    ⇔ LEFT RIGHT DOUBLE ARROW (U+21D4) a2a2 <¢¢>
    ∀ FOR ALL (U+2200) a2a3 <¢£>
    ∂ PARTIAL DIFFERENTIAL (U+2202) a1d3 <¡Ó>
    ∃ THERE EXISTS (U+2203) a2a4 <¢¤>
    ∇ NABLA (U+2207) a1d4 <¡Ô>
    ∈ ELEMENT OF (U+2208) a1f4 <¡ô>
    ∋ CONTAINS AS MEMBER (U+220B) a1f5 <¡õ>
    ∏ N-ARY PRODUCT (U+220F) a2b3 <¢³>
    ∑ N-ARY SUMMATION (U+2211) a2b2 <¢²>
    √ SQUARE ROOT (U+221A) a1ee <¡î>
    ∝ PROPORTIONAL TO (U+221D) a1f0 <¡ð>
    ∞ INFINITY (U+221E) a1c4 <¡Ä>
    ∠ ANGLE (U+2220) a1d0 <¡Ð>
    ∥ PARALLEL TO (U+2225) a1ab <¡«>
    ∧ LOGICAL AND (U+2227) a1fc <¡ü>
    ∨ LOGICAL OR (U+2228) a1fd <¡ý>
    ∩ INTERSECTION (U+2229) a1fb <¡û>
    ∪ UNION (U+222A) a1fa <¡ú>
    ∫ INTEGRAL (U+222B) a1f2 <¡ò>
    ∬ DOUBLE INTEGRAL (U+222C) a1f3 <¡ó>
    ∮ CONTOUR INTEGRAL (U+222E) a2b1 <¢±>
    ∴ THEREFORE (U+2234) a1c5 <¡Å>
    ∵ BECAUSE (U+2235) a1f1 <¡ñ>
    ∼ TILDE OPERATOR (U+223C) a1ad <¡>
    ∽ REVERSED TILDE (U+223D) a1ef <¡ï>
    ≒ APPROXIMATELY EQUAL TO OR THE IMAGE OF (U+2252) a1d6 <¡Ö>
    ≠ NOT EQUAL TO (U+2260) a1c1 <¡Á>
    ≡ IDENTICAL TO (U+2261) a1d5 <¡Õ>
    ≤ LESS-THAN OR EQUAL TO (U+2264) a1c2 <¡Â>
    ≥ GREATER-THAN OR EQUAL TO (U+2265) a1c3 <¡Ã>
    ≪ MUCH LESS-THAN (U+226A) a1ec <¡ì>
    ≫ MUCH GREATER-THAN (U+226B) a1ed <¡í>
    ⊂ SUBSET OF (U+2282) a1f8 <¡ø>
    ⊃ SUPERSET OF (U+2283) a1f9 <¡ù>
    ⊆ SUBSET OF OR EQUAL TO (U+2286) a1f6 <¡ö>
    ⊇ SUPERSET OF OR EQUAL TO (U+2287) a1f7 <¡÷>
    ⊙ CIRCLED DOT OPERATOR (U+2299) a2c1 <¢Á>
    ⊥ UP TACK (U+22A5) a1d1 <¡Ñ>
    ⌒ ARC (U+2312) a1d2 <¡Ò>


    Notes / Trivia:
    [​IMG]

    5_shadow.png

    [1] Gunbound creates a text glow/shadow by drawing the same text 4 more times, offset by 1px around the origin.

    At some point, the lowercase l character was revised to prevent character substitution with the uppercase i character. (citation needed)

    An extended character is essentially two standard characters, combined together. When moving the caret with the keyboard arrow keys, you have to press twice to move past an extended character.

    It is possible to force the GBS/GLS text renderer to load the monospace "standard" font used in normal GunBound by rebuilding a FNT file and setting a fixed glyph width and kerning. Again, the issue of missing extended symbols remains, but at least the client will appear more aligned with its designer's original intent.



    Todo:

    AltGr — I don't have an AltGr key

    IME



    Cheers

    jg (jg_test)
     
    • Informative Informative x 1

Share This Page