2009-02-20 7 views
6

Я пытаюсь использовать настоящую коллекцию типов «gulim.ttc» с 4 шрифтами в библиотеке GD.php и true type collection in gd

Как это:

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

Проблема в том, PHP/GD использует только первый шрифт из TTC-файла, но мне нужно третий под названием «Dotum».

Или, есть способ извлечь или преобразовать ttc-файл в ttf-файл?

+0

Я даже не уверен, что GD правильно поддерживает .ttc – Ross

+0

Bounty Примечание: я начал щедрость на этом, так как мне тоже нужен этот же ответ - ** для извлечения или преобразования ttc-файла в ttf-файл **. Для моей ситуации предпочтительным является решение .NET (или, может быть, просто GDI P/Invoke). Но любые указатели (код, ссылки, понимание/обсуждение), которые могут позволить мне сделать это программно, будут оценены - Отаку вчера –

ответ

4

вот некоторые ссылки на программу, которая разбивает TTC файлы в TTF: link

2

Не уверен, что если вы когда-нибудь найти что-нибудь, но у меня была такая же проблема, и нашел следующую жизнь спасительную связь ... это имеет наклонным , выравнивается по центру, выравнивается по правому краю, выравнивается по левому краю и подчеркивается. Единственное, чего не хватает, является смелым, что довольно просто.

php-imagestringright-center-italic

С сайта:! «Они даже работать со шрифтами загружаемой через ImageLoadFont, который является довольно удивительным, Вы можете даже гнездятся эффекты, чтобы создать, например, выравнивание по правому краю курсивом строки с микросхемой тени! "

Существует необязательный конечный параметр для каждой функции $ ImageString, который содержит строку, представляющую функцию, используемую для записи строки. Так, например, если мы хотим, чтобы написать правильную выровнен строки курсива, мы можем использовать следующий код:

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

Там какие-то разные методы здесь: 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 (возможно, для этого нужен переводчик Google).

+0

+1. Отличные ссылки. –