各位超級久不見。忙著學語言...(鞠躬)。不過也正是因為忙著學語言,才有今天這個主題。
基本上來說,我的語言筆記會呈現一定的樣式。例如說單字筆記就一定會是單字、翻譯、解釋以及例句。課文筆記一定有課文,還有(可能)每個字的解釋,相關文法等。如果說可以用一個統一的格式來表示,然後利用文件產生器來生產pdf檔的話應該很棒對吧~就說我超懶的!
要產生這樣的pdf文件,就必須要進行排版;要排版則需要有文字的語言資訊,才可以恰當的做斷行。同時,也必須確保繪製系統可以選擇系統內相對應的字型,也要有恰當的文字排列引擎等等。要收集這些資訊很曠日費時,很麻煩,要懂unicode,要懂fontconfig...所幸我們現在有pango來替我們把這些資訊整理好列出以供我們使用。
程式碼請見:https://github.com/inorindesu/pango-itemizer/blob/master/main.c
程式流程大略是
- 把一些原料搬進廠房
- 把原料切成恰當的等分
(utf8界線切割) - 把切割好的原料傳給 pango_itemize 做處理
- 把pango_itemize 處理好的 PangoItem 放到出貨區
- 收拾
沒有留言:
張貼留言