PHP和GD中的TrueType字体集合

6

我尝试在GD库中使用一个包含4种字体的TrueType集合"gulim.ttc"。

像这样:

$font = "fonts/gulim.ttc";
imagettftext($im, 20, 0, 0, 25, $white, $font, $string);

问题是,PHP/GD只使用ttc文件中的第一个字体,但我需要第三个字体名为“Dotum”。

或者,是否有一种方法可以提取或转换ttc文件为ttf文件?


我甚至不确定GD是否能够正确支持.ttc文件。 - Ross
赏金提示:我已经为此开启了一个悬赏,因为我也需要同样的答案——提取或转换ttc文件为ttf文件。对于我的情况,首选是.NET解决方案(或者只是GDI P/Invoke)。但如果有任何可以让我在程序中完成这个任务的指针(代码、链接、见解/讨论),将不胜感激。- Otaku昨天 - Todd Main
3个回答

4

以下是将TTC文件转换为TTF文件的程序链接:链接


2

不确定您是否找到了任何东西,但我遇到了同样的问题,并找到了以下救命链接... 它具有斜体、居中、右对齐、左对齐和下划线。唯一缺少的是加粗,不过这也很简单。

php-imagestringright-center-italic

来自该网站: “它们甚至适用于您通过ImageLoadFont加载的字体,这非常棒!您甚至可以嵌套效果,例如创建带有阴影的右对齐斜体字符串!”

每个函数都有一个可选的最后参数$ImageString,其中包含表示要使用的函数来写入字符串的字符串。因此,例如,如果我们想以斜体方式写入右对齐字符串,我们可以使用以下代码:

ImageStringRight($image, 5, 25, 'Right + Italic', $col, 5, 'ImageStringItalic');

2
这里有一些不同的方法:https://superuser.com/questions/114603/how-to-install-os-x-ttc-font-on-windows-error-ttc-does-not-appear-to-be。还有一个指向用C语言编写的源代码的指针。这是另一个链接:http://solaris.sunfish.suginami.tokyo.jp/tips/playground/truetype/ttc2ttf/ttc2ttf.cpp 目前所有的编码示例都似乎只有日文版...考虑到TTC文件基本上是为亚洲语言而设计的,这很有意义。无论如何,我也找到了这个网站:http://hdmr.org/d/read.php/1172771146(可能需要谷歌翻译)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接