有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 [論壇 - 新手村]
正在瀏覽:
1 名遊客
有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2010/9/16 14:08 所屬群組:
已註冊使用者 等級: 25
HP : 0 / 619
![]() |
一個問題有問有機會,我產生了一個編輯對照資料的圖形介面操作需求,就是比對字形筆畫差異。我需要將一個現有的TTF檔案內(這裡以 教育部標準楷書 為例),所有的字元/符號向量圖,一次性的輸出到一個純文字檔案內,像是一個文字列表那樣,理論上純文字檔案內會列出一萬三千多個字元和符號。
我有先試過在"fontforge"裡頭找功能,但是我找不出所以然來,debian linux 套件庫還有沒有其他現成的處理TTF的圖形介面操作工具套件,有提供我所描述的功能?
2019/6/20 15:13
|
||||||||||
----------------
個人網路文字作品集: MacOSX10.5.8 安裝、設定、使用,個人經驗分享,正體中文版;以Windows思維用Linux,GNOME桌面篇;PDF http://www.scribd.com/ianian1979 全字庫注音輸入法表格檔2019 (搭配CNS11643中文全字庫規格的Unicode格式傳統注音輸入法對照表) https://sites.google.com/site/ianho7979/InputMethodTables |
|||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 36
HP : 179 / 898
![]() |
IanHo 寫到: 以下提的,不見得會符合您使用的情境, 我只是記錄目前研究到的,提供有興趣深究的人一個探索的起點。 ================================================================================ 關於您提到的
在「FontForge」可以存成「 Spline Font Database」這個格式,副檔名是「sfd」。 參考「維基百科/FontForge/支援的格式 (英文)」那簡單的說明, 它是「純文字」的格式。 操作方式,在「FontForge」的功能選單,找到「檔案/另存新檔 (File/Save as)」, 點選它,會出現一個新的對話框,只要副檔名是「sfd」,儲存時,就會存成「 Spline Font Database」這個格式。 ================================================================================ 另外這個格式,除了可以存成單一一個檔案,也可以拆開來,存在同一個資料夾。 操作方式,在「FontForge」的功能選單,找到「 (檔案/另存新檔 (File/Save as)」, 點選它,會出現一個新的對話框,會有一個選項「另存為目錄(Save as Directory)」可以打勾, 資料夾的副檔名會是「sfdir」,儲存時,就會拆開檔案,放到同一個資料夾裡。 資料夾裡會看到一個檔「font.props」和很多檔,副檔名是「glyph」,主檔名則是「該glyph name」。 未來要開啟,只要使用「FontForge」開啟那個資料夾就行了。 不過我不確定,上面提到的兩個格式是否能符合您原本想要的需求,
================================================================================ 另外我寫了專案「export-svg-worth-outputting」,有分「Native版」和「Python版」。 可以將所有的「字圖(Glyph)」,「匯出」成「svg檔」, 然後將所有的「svg檔」再「匯入」到另一個字型檔。 ================================================================================ ## 相關討論 * #2 回覆: LO既有圖形操作介面能否直接叫用未被設定unicode碼位的字形檔內的字圖? ## 相關筆記 * FontForge 使用筆記 * Ubuntu 問答集 / 字型安裝與設定 ================================================================================ 以上提供參考 報告完畢 ![]()
2019/9/22 4:01
|
||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2010/9/16 14:08 所屬群組:
已註冊使用者 等級: 25
HP : 0 / 619
![]() |
可能是我的描述不夠完整,我的意思是,如果該字形檔內包含了 壹貳參肆伍 這個五個向量圖,那麼我就希望fontforge能有一種功能,將該字形檔輸出純文字檔,裡頭包含有壹貳參肆伍 這個五個字元。然後該字形檔包含有多少向量字圖和符號,輸出的純文字檔就包含多少字源和符號!(不過沒有被定義unicode碼位的可能就被跳過了?)
samwhelp 寫到:
2019/9/23 1:19
|
||||||||||
----------------
個人網路文字作品集: MacOSX10.5.8 安裝、設定、使用,個人經驗分享,正體中文版;以Windows思維用Linux,GNOME桌面篇;PDF http://www.scribd.com/ianian1979 全字庫注音輸入法表格檔2019 (搭配CNS11643中文全字庫規格的Unicode格式傳統注音輸入法對照表) https://sites.google.com/site/ianho7979/InputMethodTables |
|||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 36
HP : 179 / 898
![]() |
IanHo 寫到: 其實我看不太懂上面這一段,您提到的需求。 ================================================================================ 額外一提,關於「svg」也是純文字檔的格式, 您可以使用純文字編輯器去開啟「svg檔」來觀看內容, 請參考「維基百科/可縮放向量圖形 (Wikipedia/Scalable Vector Graphics)」的說明。 我上面專案其中一個有範例「0061.svg(網址)」。 最近關於「svg」的討論案例「有誰熟svg嗎?」。 ================================================================================ 釐清一下,您要匯出的是類似下面這樣嗎? (方案三) 以下用「壹貳參肆伍」舉例 ================================================================================ ## 方案一 匯出來有很多個檔案,根據來源的字型檔,有哪些碼位,一個碼位一個「svg檔」。 (這個方案類似上面「#2」所寫的專案, 只不過主檔名不是用「Unicode」, 將「58F9」改成「壹」 將「8CB3」改成「貳」 將「53C3」改成「參」 將「8086」改成「肆」 將「4F0D」改成「伍」 ) 檔案列表 壹.svg 貳.svg 參.svg 肆.svg 伍.svg ================================================================================ ## 方案二 (這個方案類似上面「#2」提到的「sfdir」,您可以找到「a.glyph」和「b.glyph」,它們也都是純文字檔) 匯出來有很多個檔案,根據來源的字型檔,有哪些碼位,一個碼位一個檔。 檔案列表 壹.txt 貳.txt 參.txt 肆.txt 伍.txt 「壹.txt」的檔案內容如下 Unicode: 58F9 Char: 壹 Svg: <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 -200 1000 1000"> <g transform="matrix(1 0 0 -1 0 800)"> <path fill="currentColor" d="M403 569l-94 -310l210 -12z" /> </g> </svg> 「貳.txt」的檔案內容如下 Unicode: 8CB3 Char: 貳 Svg: <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 -200 1000 1000"> <g transform="matrix(1 0 0 -1 0 800)"> <path fill="currentColor" d="M403 569l-94 -310l210 -12z" /> </g> </svg> 其餘的以此類推... ================================================================================ ## 方案三 (這個方案類似上面「#2」提到的「sfd」) 匯出來只有一個檔案,叫做「all.txt」。 檔案列表 all.txt 「all.txt」的檔案內容如下 Unicode: 58F9 Char: 壹 Svg: <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 -200 1000 1000"> <g transform="matrix(1 0 0 -1 0 800)"> <path fill="currentColor" d="M403 569l-94 -310l210 -12z" /> </g> </svg> Unicode: 8CB3 Char: 貳 Svg: <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 -200 1000 1000"> <g transform="matrix(1 0 0 -1 0 800)"> <path fill="currentColor" d="M403 569l-94 -310l210 -12z" /> </g> </svg> Unicode: 53C3 Char: 參 Svg: <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 -200 1000 1000"> <g transform="matrix(1 0 0 -1 0 800)"> <path fill="currentColor" d="M403 569l-94 -310l210 -12z" /> </g> </svg> Unicode: 8086 Char: 肆 Svg: <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 -200 1000 1000"> <g transform="matrix(1 0 0 -1 0 800)"> <path fill="currentColor" d="M403 569l-94 -310l210 -12z" /> </g> </svg> Unicode: 4F0D Char: 伍 Svg: <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 -200 1000 1000"> <g transform="matrix(1 0 0 -1 0 800)"> <path fill="currentColor" d="M403 569l-94 -310l210 -12z" /> </g> </svg> ================================================================================ 以上釐清 報告完畢 ![]()
2019/9/23 4:11
|
||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2010/9/16 14:08 所屬群組:
已註冊使用者 等級: 25
HP : 0 / 619
![]() |
google之後發現,原來我將近五年前就問過這個問題了,
samwhelp提醒的fontforge另存新檔細節, 解決了我處理字形檔的加值應用時, 其中一個很細節的步驟所遭遇到的問題。 我是在MAC上處理的就是了, 其他前/後步驟,我另外找解決方案來搭配操作。
2/14 2:50:38
|
||||||||||
----------------
個人網路文字作品集: MacOSX10.5.8 安裝、設定、使用,個人經驗分享,正體中文版;以Windows思維用Linux,GNOME桌面篇;PDF http://www.scribd.com/ianian1979 全字庫注音輸入法表格檔2019 (搭配CNS11643中文全字庫規格的Unicode格式傳統注音輸入法對照表) https://sites.google.com/site/ianho7979/InputMethodTables |
|||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
版主
![]() ![]() 註冊日期:
2008/7/14 0:03 來自 螢幕的另一端
所屬群組:
網站管理員 已註冊使用者 討論區管理群 等級: 33
HP : 0 / 808
![]() |
IanHo 寫到: 你說的應該是 OCR (辨識圖片中的文字) 的功能吧 用linux ocr 此關鍵字,應該就能找到你要的東西 我簡單的 google 了一下,就有人討論這東西,你可試試 https://ephrain.net/mac-linux-%E4%BD%BF%E7%94%A8-tesseract-ocr-%E8%BE%A8%E8%AD%98%E5%9C%96%E7%89%87%E4%B8%AD%E7%9A%84%E6%96%87%E5%AD%97/ https://blog.desdelinux.net/zh-TW/como-escanear-documentos-y-aplicar-ocr-en-linux/ 至於說一張圖裡只有一個字,想要大量辨識大量的圖檔,那就是另一個議題了 可能沒有現成的工具,得要自己寫程式去呼叫 ocr 來辨識之後再輸出 想要完全不寫程式就有達到此目地,可能有點難。 若需求不是太複雜或太困難的話,我是可幫你寫個 script 來處理這事 前提是你要先找好適用的 ocr 程式,並清楚的知道怎麼樣使用了,並告訴我用法。 剩下的就是大量輸入和大量的輸出動作了,這部份我可簡單的幫你寫個 script 來處理
2/14 12:18:06
|
||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2010/9/16 14:08 所屬群組:
已註冊使用者 等級: 25
HP : 0 / 619
![]() |
五年後現在的我應該是可以把問題描述得比較明確吧?(只是猜測)
我「現在」的操作需求是,處理對象的舉例,中研院吳守禮全套臺語注音字形, 舉例,我要把其中的純臺語注音字形主檔(預設音,而非破音), 字形檔裡頭已經有跟unicode碼位對應的向量字圖的「字元」, 全部都輸出到純文字檔案內做列表,samwhelp提醒的fontforge操作細節, 相當於把TTF解壓成一個資料夾,然後資料夾內, 「有對應」unicode碼位的向量字圖檔,「檔案名稱」都有包含unicode碼位, google之後發現mac系統有一個操作小技巧,全選我需要的檔案,執行「複製」, 在純文字編輯器內執行「貼上」,「檔案名稱」就被列進文字檔裡頭了, 包含unicode碼位的檔案名稱字串,我就可以再挪去試算表裡頭加值應用。 因為我想要延續曾經編輯國語注音輸入法超大字集表格檔的思路, 來加值應用既有的臺語注音資料,我五年前問一半但我自己無解的討論串, 我現在找回來可以用到其中一個步驟了。 --- 補充, 我正在嘗試一個可能性,自己需求的方言學習教材自己編, 網路上找不到符合自己學習需求的書面資料類型的懶人包, 那我自己嘗試編輯看看。
2/14 21:44:27
|
||||||||||
----------------
個人網路文字作品集: MacOSX10.5.8 安裝、設定、使用,個人經驗分享,正體中文版;以Windows思維用Linux,GNOME桌面篇;PDF http://www.scribd.com/ianian1979 全字庫注音輸入法表格檔2019 (搭配CNS11643中文全字庫規格的Unicode格式傳統注音輸入法對照表) https://sites.google.com/site/ianho7979/InputMethodTables |
|||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員一級
![]() ![]() 註冊日期:
2013/12/14 11:40 所屬群組:
已註冊使用者 等級: 3
HP : 0 / 52
![]() |
Truetype 檔案裡面有 cmap 表
這張表是用來設定 unicode 與哪個 glyph 對應的 用 html + javascript 做了一個的工具來讀取 cmap 的資料(參考附件) 解壓縮後把 index.html 拉到瀏覽器就可以使用了 (離線使用即可,這不會傳資料到網路上)
2/16 17:00:11
|
||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員五級
![]() ![]() 註冊日期:
2012/4/22 10:50 所屬群組:
已註冊使用者 等級: 36
HP : 179 / 898
![]() |
IanHo 寫到: 我知道您不喜歡下指令操作,您傾向要在「圖形介面操作」,我能理解, 以下只是提供另一種操作方式,提供參考, 我並沒有要強迫您改變操作習慣的意思,有冒犯之處,請海涵。 ================================================================================ ## 前提 我測試的資料夾,有5個檔案,「壹.svg」,「貳.svg」,「參.svg」,「肆.svg」,「伍.svg」。 ================================================================================ ## 檔案列表 執行下面指令,
顯示
$ man ls ================================================================================ ## 重導 (覆蓋) 執行下面指令,就會將剛剛顯示的,重導到「../list.txt」這個檔案
執行下面指令,觀看「../list.txt」的內容。
就會顯示
除了使用「cat」,也可以改用「more」,「less」,等其他程式來觀看 ================================================================================ ## 重導 (附加) 執行下面指令,就會將剛剛顯示的,附加到「../list.txt」這個檔案 注意,下面是兩個「>」,也就是「>>」。
執行下面指令,觀看「../list.txt」的內容。
就會顯示
================================================================================ ## 排序 執行下面指令
顯示
================================================================================ ## 排序 (排除重複) 執行下面指令
顯示
$ man sort ================================================================================ ## 移除副檔名 執行下面指令
顯示
執行下面指令
顯示
================================================================================ ## 產生「csv檔」 執行下面指令
就會產生「../list.csv」這個檔案,除了可以使用「文字編輯器」開啟,也可以用「泛excel」程式來開啟。 ================================================================================ 以上提供參考 報告完畢
2/17 12:18:26
|
||||||||||
![]() |
回覆: 有無現成的把TTF包含字元輸出成純文字檔的圖形介面工具 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
版主
![]() ![]() 註冊日期:
2008/7/14 0:03 來自 螢幕的另一端
所屬群組:
網站管理員 已註冊使用者 討論區管理群 等級: 33
HP : 0 / 808
![]() |
IanHo 寫到: 看起來你已經有自己的解法了
2/17 18:14:54
|
||||||||||
![]() |
您可以查看帖子.
您不可發帖.
您不可回覆.
您不可編輯自己的帖子.
您不可刪除自己的帖子.
您不可發起投票調查.
您不可在投票調查中投票.
您不可上傳附件.
您不可不經審核直接發帖.