簡體   English   中英

如何在pdflib中加載字體?

[英]How to load a font in pdflib?

我正在嘗試在 Php 7.4.7 中加載 an.otf 字體,如下所示:

  1. 添加根據日志看起來可行的資源路徑:
$pdflib = new pdflib();
$pdflib->set_option('textformat=utf8');
$pdflib->set_option('SearchPath={{fullpath/to/my/fonts}}');

到目前為止,日志顯示沒有錯誤:

[New category:resource "SearchPath:fullpath/to/my/fonts"]
  1. 但是當像這樣加載字體時:
$font = $pdflib->load_font("My-Font-Regular", "unicode", "embedding");

我收到此錯誤:

[Last exception 2516 in load_font]["Font 'My-Font-Regular' with encoding 'unicode': Font file (AFM, PFM, TTF, OTF etc.) or host font not found"]

我已經嘗試將 utf-8 作為編碼,在添加搜索路徑和加載字體時提供完整路徑,在設置搜索路徑時提供單花括號和雙花括號,但我可以取得更多進展。

也試過沒有成功:

$pdflib->set_option("stringformat=utf8");

我找不到任何可接受的編碼文檔和 function 它甚至沒有在 pdflib 提供的文檔中描述。

任何幫助將不勝感激。

一般來說,這看起來不錯,但是在使用基於擴展的搜索時有一些潛在的缺陷:

  • 字體文件沒有支持的文件擴展名之一(如 .ttf、.otf 等)
  • 您使用的字體名稱與字體文件基本名稱不同。 在您的情況下, My-Font-Regular 您的字體文件是否具有此名稱,擴展名為.otf => My-Font-Regular.otf
  • 路徑fullpath/to/my/fonts (或子目錄)對您的 PHP 進程具有錯誤的讀取權限。
  • 在 Windows 上工作時,請注意應用完整的絕對路徑。 (有關詳細信息,請參閱 PDFlib 9 教程,第 2.8 章PHP 綁定部分PHP 中的文件名處理。)

有關詳細說明,請參閱 PDFlib 9 教程,第 6.4.4 章搜索 Fonts部分基於擴展的字體文件搜索

由於您已經啟用了日志記錄,您可以通過添加類 {filesearch=3}來啟用更多詳細信息。 有關詳細信息,請參閱 PDFlib 9 API 參考,第 1.3 章日志記錄 這可能會給你更多的細節。 我敢肯定,在 PDFlib 上打開支持案例並分享更多詳細信息也可能是一種選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM