首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PDF块工具呈现PDF模板时不支持字体

使用PDF块工具呈现PDF模板时不支持字体
EN

Stack Overflow用户
提问于 2018-04-03 05:42:22
回答 1查看 554关注 0票数 0

我使用Pdflib模块将内容呈现为PDF模板,并与PDF块插件一起使用。我创建了PDF块,并向其添加了字体,如Arial、杯状字体等,但在呈现时会出现错误。

代码语言:javascript
复制
Warning: Font 'Arial' with encoding 'unicode': Font file (AFM, PFM, TTF, OTF etc.) or host font not found  

我在我的服务器上安装了字体,我可以在usr/share/fonts文件夹中看到它,文件夹中的所有文件都有.ttf扩展名。我使用下面的代码来呈现数据

代码语言:javascript
复制
if ($p->fill_textblock($page, $elem, $data->{$elem},"encoding=unicode") == -1) {
            printf ("Warning: %s\n", $p->get_errmsg());
        }

如果我在Perl代码中使用字体,它可以正常工作。

代码语言:javascript
复制
my $font = 'Arial';
 my $text_optlist ="font=".$font." encoding=unicode";
    foreach my $elem(keys %{$data}){
        if ($p->fill_textblock($page, $elem, $data->{$elem},$text_optlist) == -1) {
            printf ("Warning: %s\n", $p->get_errmsg());
        }

但是,由于积木不起作用,我不知道它有什么问题。如有任何帮助,将不胜感激。

谢谢吉泰什

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-03 08:59:46

我在我的服务器上安装了字体,我可以在usr/share/fonts文件夹中看到它,文件夹中的所有文件都有.ttf扩展名

您必须使字体可用于PDFlib。请参阅PDFlib 9.1教程,第6.4.4章“搜索字体”以及第3.1.4章“资源配置和文件搜索”。

用几句话来说: PDFlib搜索您用" SearchPath“选项指定的SearchPath控制器(y/ies)中的字体文件。/usr/share/fonts不是PDFlib搜索字体文件的默认目录。

当您希望PDFlib在此目录中搜索时,应将此目录添加为SearchPath目录。

代码语言:javascript
复制
$p->set_option("searchpath={{/usr/share/fonts} {/maybe/some/other/dir}}");

还请参阅PDFlib perl示例(如starter_block.pl),它也演示了Searchpath。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49623001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档