我收到了QuarkXPress文档,该文档包含许多不寻常的字体,这些字体也已发送给我。字体位于一个名为fonts的文件夹中,然后全部压缩到包含文档和fonts文件夹的单个存档中。我相信这是在运行Mac OS X的计算机上完成的。
我已经解压缩了存档,但是fonts文件夹中的所有文件都没有大小-即它们是0字节的文件。但是,还有一个__MACOSX文件夹,其中包含一个字体子文件夹。在这里,我可以看到所有字体文件(以._前缀),它们都有一个大小,即不是0字节。大概这些是我需要的实际字体文件,但是我不知道如何在Windows上安装它们。
我尝试将文件重命名为.ttf和.otf扩展名,然后安装它们,但这似乎不起作用-我仅收到“无效字体文件”消息。
还有其他想法吗?
对于某些Mac字体,字体信息完全存储在文件的资源分支中。在Mac OS X上,此类字体看起来像Finder中的普通文件,但是从ls(以及其他使用POSIX层的工具)之类的工具中,这些字体看起来像零字节文件。
在__MACOSX/._*
从压缩文件文件的AppleDouble编码的资源派生和一些额外的组合版本搜索从原来的文件的信息。当Mac OS X在不支持资源分支和Finder信息的文件系统上存储具有资源分支或Finder信息的文件时,Mac OS X将使用AppleDouble文件(此处将Zip视为文件系统)。
我不是Windows用户,因此我的搜索没有打开任何预制的工具。我确实找到了一套可能有效的工具。最好在Mac上运行它们,但它们也可能在Windows上运行。
如果您可以使用Mac
如果您没有Mac的访问权限,则仍然可以使用fondu,但是您需要自己编译fondu(看起来可以在Linux上构建它,因此也可以在中构建它)。 (例如Cygwin)。下一个问题是fondu似乎无法读取AppleDouble文件,因此您将必须找到一些可以从AppleDouble编码._*
文件中提取裸露资源派生的东西。我不确定哪个Windows特定工具可以解码AppleDouble,但是Mac :: AppleSingleDouble Perl模块可以做到:
perl -MMac::AppleSingleDouble -e 'for(@ARGV) {
$a = new Mac::AppleSingleDouble($_);
if(open $f, ">", $_.".rsrc") {
binmode $f;
print $f $a->get_entry(2);
close $f;
}
}'__MACOSX/._Webdings
# now I have a __MACOSX/._Webdings.rsrc file from which fondu can extract Webdings.ttf
如果您熟悉构建Unix-oid工具,则构建fondu应该很容易。对于Perl,您应该能够使用大多数Perl安装附带的cpan工具(或者,如果您熟悉Perl模块的布局和安装,只需下载AppleSingleDouble.pm文件并将其放在适当的位置即可)。地方)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句