我需要以编程方式为我的应用程序安装(在Ubuntu中)数百种字体(在Ruby on rails上开发)并跟踪安装时安装的字体名称。
所以我需要UBUNTU中的工具或一些库,它将 TTF文件作为输入并提供字体名称作为输出。
即使在ruby中有某种方式(GEM或任何可以帮助的东西)找到给定TTF文件的字体名称,也会有很大的帮助。
先谢谢。
答案 0 :(得分:4)
我想应该有一种类型的红宝石字体解析器可以做到这一点,但如果你有一点技巧,你可能很容易自己做。您需要两个重要的信息:
阅读标题,找到“名称”表,在“名称”表中搜索nameID 4条目(“全名”,例如“My Cool Font Bold Italic”)。或者如果您只想要姓氏(“我的酷字体”),也可以使用nameID 1。
数据结构非常简单,即使初学者开发人员理解和解析也不会有太多麻烦。
答案 1 :(得分:2)
基本上我使用fop-ttfreader从TTF文件中获取详细信息..
fop-ttfreader fontfile.ttf xmlfile.xml
http://manpages.ubuntu.com/manpages/natty/man1/fop-ttfreader.1.html
所以现在可以解析这个xml文件并获取字体详细信息。
这似乎增加到2步,而不是像djangodude所建议的那样,它可以通过解析自己在一个简单的代码中完成。在我的情况下,这将是一个像耙子一样的过程..所以这帮助我完成了我的工作......:P
希望这可以帮助某人。
答案 2 :(得分:0)
ttfunk gem将完成大部分繁重的工作,而无需您自己进行任何解析:
require 'ttfunk'
file = TTFunk::File.open("some/path/myfont.ttf")
puts "name: #{file.name.font_name.join(', ')}"
(摘录自上述gem中的自述文件)