2016-06-20 56 views
0

我有興趣使用自己的代碼創建自己的.ttf文件。我做了一些研究,發現蘋果的.ttf文件規範。 雖然我很難理解它。下面是一段摘錄:以編程方式創建.ttf(真實字體)文件

「TrueType字體文件由一系列連接的表組成,一個表是一串字,每個表必須長對齊,必要時用零填充。 https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6.html

我用notepad ++打開了一個.ttf文件,希望看到上面描述的表格,但是隻是有一堆難以理解的東西。見附件截圖。

Screenshot

我的問題:什麼是這些表?

任何人都可以擴展我需要做什麼來創建這些表嗎?我更新寫代碼,所以也許問題是我缺乏編碼知識。如果是這樣的話,是否有人可以指出我可以在這些桌子上教育自己的參考?

感謝您的幫助。

+0

該規範所指的「表」是用您選擇的語言設置的編程表。使用Java或C/C++,Python,Ruby,VBA打開'.ttf'文件並將文件中的數據讀入您在程序中設置的表變量。這是使用它的最簡單方法。這聽起來像是你期望打開'.ttf'文件並查看你想要的MSWord文檔。這是一個數據文件,不會那樣工作。 – PeterT

+0

我明白了。這就說得通了。我是否正確地認爲,我可以將.ttf文件中的數據讀入表變量,然後將該數據輸出到文本文件? (我正在尋找一種方法來查看如何構建.ttf文件的示例,以便我可以在一個屏幕上閱讀蘋果規範並在另一個屏幕上顯示示例。) – brownfox

+0

我將使用java。 – brownfox

回答

0

我找到了答案,我的問題:

http://www.fileformat.info/tool/hexdump.htm

我在這裏上傳了一個名爲.ttf文件和站點它轉換爲十六進制形式顯示。現在我可以在一個窗口中閱讀.ttf規範,並且有一個規範在另一個窗口中實現的例子。

最初我在尋找一個二進制顯示器,但這個十六進制顯示器更適合查看。

使用這個十六進制轉儲和.ttx文件一起使.ttf文件格式更容易理解。

更新:

我找到了另一個答案。有一個名爲'ufo-extractor'的python包,可將.otf或.ttf文件轉換爲.ufo文件。 .ufo文件是一個人類可讀的字體文件。請參閱: http://unifiedfontobject.org/

1

看看OpenType Cookbook關於如何編程字體。如果你想簡單地看看你提到的表格,你需要一個像TTX/FontTools這樣的工具來把二進制錶轉換成更可讀的東西(在這種情況下是一個XML文件)。

+0

謝謝! .ttf/ttx轉換器非常有助於查看.ttf文件中的內容。 – brownfox

相關問題