How to add characters defined in the Supplementary Planes...

Before asking a question on FontCreator look here for possible solutions and tutorials. Please do not post support requests here.
Post Reply
Erwin Denissen
Moderator
Moderator
Posts: 11107
Joined: Fri Oct 04, 2002 12:41 am
Location: Bilthoven, The Netherlands
Contact:

How to add characters defined in the Supplementary Planes...

Post by Erwin Denissen »

[updated February 24, 2010]

Note: This tutorial has specific parts for the two editions of FontCreator. In the Professional Edition, you can insert characters through the Insert Character feature. This ensures all required mappings and platforms are automatically updated. You can accomplish the same with the Home Edition, but it requires more steps.

[updated September 21, 2009]

How to add characters defined in the Supplementary Planes to an existing font?

Within a font the glyphs are mapped to characters. Almost all Unicode fonts have their glyphs assigned to code points from 0x0000 to 0xFFFF. This range is called the Basic Multilingual Plane (BMP) or Plane 0. Another 16 planes have been defined to include other scripts. All planes contain 16 bits of code points, thus Unicode characters may be encoded at any code point from U+0000 to U+10FFFF.

Plane 1 (0x010000 to 0x01FFFF) is the Supplementary Multilingual Plane (SMP) for scripts and symbols. Plane 2 (0x020000 to 0x02FFFF) is the Supplementary Ideographic Plane (SIP)
Planes 3 to 13 are reserved for future allocations
Plane 14 (0x0E0000 to 0x0EFFFF) is the Supplementary Special-purpose Plane (SSP)
Planes 15 and 16 are reserved for private use

The Unicode Consortium has defined several blocks inside the planes:
http://www.unicode.org/Public/UNIDATA/Blocks.txt
More information about SMP, SIP and SSP can be found here:
http://www.unicode.org/roadmaps/


There are only a few fonts that contain characters from planes 1 to 16. Here are a few fonts available for download that contain characters from plane 1:
Code2001 from James Kass
http://code2000.net/
James Kass has made his own software to generate his fonts.

ALPHABETUM from Juan José Marcos
http://guindo.pntic.mec.es/~jmag0042/alphaeng.html
Juan José Marcos used FontCreator to create this font

Andagii and Penuturesu created by Mark Williamson
http://www.i18nguy.com/unicode/unicode-font.html

Finally after this (long) introduction let’s explain how to map glyphs to the Supplementary Multilingual Plane.
The first step is to decide which character we want to add. I randomly picked a character: OSMANYA LETTER GA. Of course the outlines should look like the character we want to add, so we need an example. Fortunately the Unicode Consortium has code charts:
http://www.unicode.org/charts/
For the OSMANYA LETTER GA character we need to go to the Osmanya code chart:
http://www.unicode.org/charts/PDF/U10480.pdf
Besides the outline we also see it's code point: 1048C

Now we have enough information to actually add the character.

Steps for FontCreator Home Edition

Add a glyph to the font (Insert -> Glyphs).
sp001.png
sp001.png (17.03 KiB) Viewed 31386 times
Create the outlines in the Glyph Edit window.
sp002.png
sp002.png (13.89 KiB) Viewed 31387 times
Add the Windows Unicode UCS-4 platform through the Platform Manager (Format -> Platform Manager).
UCS-4 is a a four-byte per character encoding defined in ISO-10646; UCS stands for Universal Character Set which encompasses most of the world's writing systems.
sp003.png
sp003.png (22.39 KiB) Viewed 31389 times
Press the 'Add' button, select 'Windows Unicode UCS-4' and press the 'OK' button.
sp004.png
sp004.png (35.07 KiB) Viewed 31389 times
Note: no naming fields are needed for this platform.

From the ‘Character to Glyph Index Mappings’ window (select Format from the main menu then click Mappings), select the press the 'Windows Unicode UCS-4' platform. Before adding the mapping, make sure the encoding format is set to ‘Segmented coverage’. Now select the glyph we just created and add code point $1048C (decimal value is 66700). There are two ways to add the mapping:

1) put this value in the value edit field and press the ‘Add’ button.
sp005.png
sp005.png (49.08 KiB) Viewed 31388 times
2) press the ‘Select’ button and then successively select the appropriate block (Osmanya), the character (OSMANYA LETTER GA) and finally press the ‘Ok’ button.
sp006.png
sp006.png (37.67 KiB) Viewed 31391 times

Steps for FontCreator Professional Edition

Select Insert Characters from the Insert menu, and then in the bottom line enter the codepoint for the character (OSMANYA LETTER GA):

Remaining steps; equal for both editions of FontCreator

Now open the Font Settings window (Format -> Settings) to update the range settings. First (on the Header page) set the Contents and Layout version to 3 or higher.
sp007.png
sp007.png (43.11 KiB) Viewed 31387 times
Then on the Ranges tab, select the 'Calculate' button within the Unicode Character Ranges area. This should check range named 'Non-Plane 0 - implies that...'. Press the 'OK' button to return to the main window.
sp008.png
sp008.png (33.87 KiB) Viewed 31394 times
Finally your font can be saved and installed. You should be able to test your font with applications that support planes 1 to 16.
To me it is unclear what applications (and even what operating systems) have support for these planes. Microsoft Word 2002 and higher have support for these planes. To add a character into a document, Type the character code (1048C) directly into a document, and then press ALT+X.

Image

Let me know if you have more information about this topic, so I can keep this document up to date.
Erwin Denissen
High-Logic
Proven Font Technology
Fonts
Posts: 84
Joined: Thu Sep 17, 2009 3:35 am

Re: How to add characters defined in the Supplementary Planes...

Post by Fonts »

Please give instructions for adding characters (not sure if this is the correct term, maybe it's glyphs) to the Private use area for Font Creator 6.0 Home Edition.

I followed the instructions for version 5.6 but options are different and did not work out.

Thanks
Erwin Denissen
Moderator
Moderator
Posts: 11107
Joined: Fri Oct 04, 2002 12:41 am
Location: Bilthoven, The Netherlands
Contact:

Re: How to add characters defined in the Supplementary Planes...

Post by Erwin Denissen »

I've updated the original post. Do let us know your results.
Erwin Denissen
High-Logic
Proven Font Technology
Fonts
Posts: 84
Joined: Thu Sep 17, 2009 3:35 am

Re: How to add characters defined in the Supplementary Planes...

Post by Fonts »

Hi

I followed your steps to map a new character to plane 15 which is for private use. I then typed in the Windows mapping (F0000) and then Alt-x.

This worked in Microsoft Word 2002 but not in Excel 2002.

Any further help will be apprciated since I need to install it in Excel.


Thanks.
Fonts
Posts: 84
Joined: Thu Sep 17, 2009 3:35 am

Re: How to add characters defined in the Supplementary Planes...

Post by Fonts »

Erwin

Refer to the posting above.

********* I am trying to make new glyphs to install into Excel as part of my work.

I've tried the following without much sucess

(1) Installed new glyphs in U+E000 which is the Private character area. This worked fine until I used another computer in which case every glyph turned into a box ????? I lost a lot of work here

(2) I then tried your instruction as per posting mentioned which involves adding the glyph into the Supplematry plane 15 for private use. This worked in Word but not in Excel ?????? I tried to copy from Word to Excel but the program crashed

(3) I tried to overwrite an existing mapped glyph such as U+5000 which is an Asian looking glyph. When I went to install, instead of getting my new glyph I still got the Asian glyph

I prefer to use method (1) somehow since it seems a lot safer and still uses Plane 0 (BMP)
Last edited by Fonts on Thu Oct 29, 2009 3:33 am, edited 1 time in total.
Erwin Denissen
Moderator
Moderator
Posts: 11107
Joined: Fri Oct 04, 2002 12:41 am
Location: Bilthoven, The Netherlands
Contact:

Re: How to add characters defined in the Supplementary Planes...

Post by Erwin Denissen »

Fonts wrote:********* I am trying to make new glyphs to install into Excel as part of my work.

I've tried the following without much sucess

(1) Installed new glyphs in U+E000 which is the Private character area. This worked fine until I used another computer in which case every glyph turned into a box ????? I lost a lot of work here
I still think this is the way to go. Did you also install this font on the other computer?
Erwin Denissen
High-Logic
Proven Font Technology
Fonts
Posts: 84
Joined: Thu Sep 17, 2009 3:35 am

Re: How to add characters defined in the Supplementary Planes...

Post by Fonts »

Hi
I tried again to map to the private use characters starting from U+E000 onwards and this seems to work when using another computer
Thanks
Post Reply