2016-08-09 12 views
0

Я создаю PDF-файл с использованием PDFLib, и, к сожалению, я не могу заставить его использовать файл Georgia. Я могу использовать практически любой другой шрифт, кроме этого.Использование шрифта Georgia в PDFLib на Mac (El Capitan)

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

$searchPath = "/Library/Fonts"; 
$p->set_option("searchpath= {" . $searchPath . "}"); 
$scoreFont = $p->load_font("Georgia", "unicode", ""); 
if ($scoreFont == 0){ 
    die("Error: " . $p->get_errmsg()); 
} 

Всякий раз, когда я включаю это, это дает мне ошибку «Страница не работает».

Я не уверен, что это актуально, но я вижу файл Georgia.ttf в каталоге Library/Font, но не в каталоге System/Library/Font. У кого-нибудь есть опыт работы с этой проблемой? Любая помощь будет принята с благодарностью.

Спасибо заранее!

EDIT

Я проверил мои журналы Apache и я вижу, есть ошибка, в списке:

Tue Aug 09 11:23:48 2016] [notice] child pid 11501 exit signal Segmentation fault (11) 

Кроме того, я проверил файл журнала PDFLib и я вижу:

PDF_load_font[---------------------------------------------------------------- --------------] 
[ PDFlib 9.0.5 PHP5 binding on Mac OS X-10.6 64 (le) 2016-08-09 11:23:48  ] 
[ Classes: api=1 warning=1              ] 
[ Enter in vi to compile it:             ] 
[ %s/)$/);/g and %s/"(NULL)"/NULL/g and %s/\[[^]]*\]//g    ] 
[ Program should run on a little-endian platform        ] 
[------------------------------------------------------------------------------] 

PDF_set_option(p_0x1097619a8, "searchpath= {/Library/Fonts}") 
[New category:resource "SearchPath:/usr/local/PDFlib"] 
[New category:resource "SearchPath:/usr/local/PDFlib/PDFlib"] 
[New category:resource "SearchPath:/usr/local/PDFlib/PDFlib/9.0"] 
[New category:resource "SearchPath:/usr/local/PDFlib/PDFlib/9.0/resource/cmap"] 
[New category:resource "SearchPath:/usr/local/PDFlib/PDFlib/9.0/resource/codelist"] 
[New category:resource "SearchPath:/usr/local/PDFlib/PDFlib/9.0/resource/fonts"] 
[New category:resource "SearchPath:/usr/local/PDFlib/PDFlib/9.0/resource/glyphlst"] 
[New category:resource "SearchPath:/usr/local/PDFlib/PDFlib/9.0/resource/icc"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib/PDFlib"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib/PDFlib/9.0"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib/PDFlib/9.0/resource/cmap"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib/PDFlib/9.0/resource/codelist"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib/PDFlib/9.0/resource/fonts"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib/PDFlib/9.0/resource/glyphlst"] 
[New category:resource "SearchPath:/Users/{username}/PDFlib/PDFlib/9.0/resource/icc"] 
[New category:resource "SearchPath:/Library/Fonts"] 

Я не уверен, что на самом деле означает любая из этих записей. В журнале PDFLib - единственной директории, которая фактически существует в последней, -/Library/Fonts. И в этом каталоге находится файл Georgia.ttf.

Любые идеи?

Спасибо!

ответ

1

быстрый тест с приведенным выше кодом и текущим PDFlib 9.0.7 на OSX отлично работает. Поэтому может быть хорошей идеей, проверить файл журнала ошибок вашего веб-сервера/PHP. Возможно, ваш веб-сервер не дает сообщение в случае die() правильно.

Если вы не видите какой-либо причине ошибки в веб-сервер логфайл, вы можете включить регистрацию PDFlib,

$p->set_option("logging {filename {/tmp/PDFlib.log}}"); 

в качестве первого вызова PDFlib. Тогда вы должны увидеть, там, если load_font() не удалось (0) и возможное сообщение об ошибке.

EDIT: спасибо, что поделились более подробной информацией из ваших лог-файлов. Запись

Tue Aug 09 11:23:48 2016] [notice] child pid 11501 exit signal Segmentation fault (11) 

может быть признаком проблемы HostFont на Mac в сочетании с PHP и Web-сервером. Можете ли вы отключить поддержку hostfont. В образцах PDFlib PHP этот вызов закомментирован, поэтому просто позвоните:

+0

Спасибо за помощь. Я редактировал мой выше вопрос, чтобы добавить содержимое этих журналов после повторного запуска ошибки. Любые идеи в том, что они могут мне сказать? – jldavis76

+0

Ты, сэр, гений! Большое вам спасибо за помощь! – jldavis76