字型檔案格式分析 底層資料流處理

2021-05-24 05:49:43 字數 522 閱讀 1125

最近分析字型檔案格式,是時候搭個稍微過得去的框架來整理一下**。

主要處理幾個需求:

1,跨平台。

2,只分析truetype格式

3,解析幾個表:cmap(編碼,圖元索引對映),glyf(僅取資料),os/2表。繪製圖元指令有時候就再看看。

初步的設計:

1,使用者管理幾個主要的資料memory, face。

2,最底層是system,封裝一些與平台相關的api;倒數第二層是stream,主要封裝一些對資料流的操作,同級的是資料層,真正有意義的資料,儲存關於字型相關的資訊,以及資料流,都是由使用者來管理。最上層是對各個表的解析。

3,主要提供資料的操作,不提供資料的管理,管理由使用者處理。

底層system初步**如下:

ttsystem.h

ttsystem.c

資料流操作初步**如下:

ttstream.h

ttstream.c

目前只有tt_stream 的資料

ttdata.h

BDF 字型檔案格式

提交者 addylee 日期 2009 7 13 23 12 閱讀 316 www.osplay.org 摘要 bdf是adobe制定的點陣字型檔案,也是xwindow系統中使用的字型檔案,我在學校過程中發現,網上資料比較少,中文資料基本沒有,因此我在閱讀相關英文資料的基礎上,根據自己的理解寫了這篇...

redis set底層資料結構

redis的集合物件set的底層儲存結構特別神奇,我估計一般人想象不到,底層使用了intset和hashtable兩種資料結構儲存的,intset我們可以理解為陣列,hashtable就是普通的雜湊表 key為set的值,value為null 是不是覺得用hashtable儲存set是一件很神奇的事...

C vector底層資料結構

vector 其底層資料結構是陣列,由於陣列的特點,vector也具有以下特性 1 o 1 時間的快速訪問 2 順序儲存,所以插入到非尾結點位置所需時間複雜度為o n 刪除也一樣 3 擴容規則 當我們新建乙個vector的時候,會首先分配給他一片連續的記憶體空間,如std vector vec,當通...