2013-05-09 93 views
0

我在解決這個問題的標題時遇到了一些麻煩,所以我知道這聽起來有點愚蠢。使用鍵盤可以輸入哪些Unicode字符?

我工作的一個web字體生成。我有超過1,000個SVG(並且正在增長),並且使用FontForge腳本,計劃將這些文件中的每一個文件分配給一個字符位置。

旁邊的藍色到這裏這紅色的X矩形就是我所說的「字符位置」:

character position

問題:

這些位置中的每一個都有一個代碼記者。有些直接打印,有些則不打印。我知道控制字符from this table here不能打印。但還有其他字符不會打印,例如soft-hyphen(U + 00AD)。我偶然發現了這一個。

我不想讓最終用戶挑選他們想要的任何字符位置,因爲那樣的話,填補了這些位置的圖標將不會在瀏覽器中顯示。我一遍又一遍地查看Unicode網站,看看他們是否有列表或其他東西,但沒有任何幫助。

那麼,有沒有辦法,我可以確切地知道哪些字符位置是安全的圖標來使用,或哪些不是?

+0

我真的不明白的問題。您可以使用鍵盤或其他方式以某種方式將*所有*字符輸入計算機。你想濫用字體中的代碼點,以獲得與他們佔據的代碼點無關的隨機圖標嗎?然後使用其中一個*私有代碼點區域* Unicode定義,不要重載具有指定含義的代碼點。 – deceze 2013-05-09 15:22:16

回答

2

我只能猜測你的意圖,但我猜你正在尋找什麼都是Unicode的Private Use Areas。這些是具有沒有分配含義的代碼點範圍。您可以使用這些代碼點來分配您自己的圖標,符號或含義。它就在你和字體的用戶之間,這些代碼點意味着什麼,你可以自由使用它們。

你應該從未超載的代碼點意思。如果代碼點被指定爲「%」,則該代碼點中唯一應該存在的字符是「%」。這個代碼點的使用是多麼罕見或常見並不重要,因爲如果發生碰撞,情況很難解決。私人使用區域的存在是爲了防止這種衝突。

+0

做出你所說的話很有意義。我將不得不運行一些測試,因爲我聽說有些應用程序(包括瀏覽器)無法在私有區域渲染。 – 2013-05-09 19:53:11

+0

+1這個。如果你必須使用沒有語義含義的符號字體,PUA是正確的選擇。 – bobince 2013-05-09 22:58:13

+0

我一直在做一些測試,並且這兩個PUA都有問題。 Illustrator沒有看到字體中的最後一個字符。如果我放入任何空白的C0碼點,Opera將不會渲染任何東西,而是顯示正方形。 Webdings和Wingdings字體只是將它們的圖標放在latin1代碼點中。 – 2013-05-13 00:15:24