我想在我的 PDFlib 腳本中使用宏和行內 optlists 并且它似乎可以作業,但是只要文本源中有一個“<”符號,我就會從 PDFlib 收到一個錯誤,說有一個未定義的宏。
假設我們有以下文本:
$text = '<font='.$fontBold.'>Lorem ipsum<font='.$fontRegular.'> dolor sit amet < 0,11m2';
如果我這樣做,一切正常,文本將顯示為:“ Lorem Ipsum dolor sat amet < 0,11m2”
但是,一旦我更改<為相應的符號“<”,就會收到錯誤訊息,Unknown option '0,11' in ...因為 PDFlib 認為在那里定義了一個新宏。
有什么辦法可以避免這種情況嗎?因為顯然我不想在我的文本中使用“<”。
uj5u.com熱心網友回復:
這實際上很簡單:
<默認情況下,該字符是 create_textflow 中行內選項的起始字符。如果你現在想將這些字符作為文本輸出,這自然會導致沖突,你可以按如下方式解決:
- 您可以將
<字符指定為字符參考。為此,charref=true必須設定該選項并在文本中指定<。 - 您使用另一個字符作為開始或結束文本流字符并定義
begoptlistchar和endoptlistchar - 您不使用行內選項,然后您可以使用一個或多個
add_textflow()呼叫來組合文本流句柄。
請參閱 PDFlib 教程,第 9.2.2 章“9.2.3 行內選項串列和宏”:
括號選項串列的字符可以用 begoptlistchar 和 endoptlistchar 選項重新定義。為 begoptlistchar 選項提供關鍵字 none 將完全禁用對選項串列的搜索。如果文本不包含任何行內選項串列,并且您想確保 ?<? 和 ?>? 將作為常規字符處理,這將很有用。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/379945.html
上一篇:如何使用javascript在php的輸入框中生成隨機值
下一篇:我復制了代碼并得到了不同的輸出
