為了像文書處理器那樣實現文字對齊,必須將 'linebreak' 設定為 'false',將 'parbreak' 設定為 'true'。對於每個新行,必須使用 "\n\n"(兩個換行符,而不是文件中所述的回車符)。如果要在完成的文件中建立兩個新行,"\n\n\n\n" 將無法作用。必須使用 "\n\n \n\n"。
要讓每一行都對齊,應該在文字末尾附加 "\n "(換行符和一個空格)。要使此方法有效,'linebreak' 必須為 'true'。
(PECL ps >= 1.1.0)
ps_show_boxed — 在方框中輸出文字
$psdoc
,$text
,$left
,$bottom
,$width
,$height
,$hmode
,$feature
= ?在給定方框內輸出文字。方框左下角的座標為 (left
, bottom
)。會在需要時插入換行符號。多個空格會被視為一個空格。定位字元會被視為空格。
如果參數 hyphenation
設定為 true
且參數 hyphendict
包含有效的連字字典檔名,則文字將會斷字。行距取自 leading
的值。段落之間可以像 TeX 一樣以空行分隔。如果 parindent
的值設定為大於 0.0,則前 n 行會縮排。行數 n 由參數 numindentlines
設定。若要避免前 m 個段落縮排,請將 parindentskip
的值設定為正數。
psdoc
ps_new() 返回的 PostScript 檔案資源識別碼。
text
要輸出到給定方框的文字。
left
方框左下角的 x 座標。
bottom
方框左下角的 y 座標。
width
方框的寬度。
height
方框的高度。
hmode
參數 hmode
可以是 justify
、fulljustify
、right
、left
或 center
。justify
和 fulljustify
的差異僅影響方框的最後一行。在 fulljustify
模式下,最後一行將會左右對齊,除非它也是段落的最後一行。在 justify
模式下,它將永遠左對齊。
feature
ps_show_boxed() 的輸出可以使用多個參數和值進行配置,這些參數和值必須使用 ps_set_parameter() 或 ps_set_value() 設定。除了影響文字輸出的參數和值之外,還會評估以下參數和值。
兩個連續行的基準線之間的距離。
用於斷字模式的字典檔名(見下文)。
連字號前後至少必須保留的字元數。這表示只有長度至少為此值兩倍的單詞才會被斷字。預設值為 3。設定值為 0 將會使用預設值。
設定段落前 m 行縮排的像素量。m 可以使用 numindentlines
值設定。
設定段落之間額外像素間距。預設為 0
,這將會產生正常的行距。
從段落開頭算起,將被縮排的行數。預設為 1
。
方塊中第一行不會縮排的段落數。預設為 0
。這對於章節標題之後的段落或在第二個方塊中繼續的文字很有用。在這兩種情況下,都應該將此值設定為 1
。
設定行號的編號方式。可能的值為 box
,用於為整個方塊中的行編號,或 paragraph
,用於為每個段落中的行編號。
編號行左側包含行號的欄位的寬度。行號將會在此欄位中靠右對齊。預設為 20
。
行號欄位與行本身之間的間距。預設為 5
。
如果參數 hyphenation
設定為 true 且已設定有效的斷字字典,則文字會斷字。 pslib 沒有內建斷字字典,而是使用 openoffice、scribus 或 koffice 的字典。如果已安裝這些軟體,您可以在以下其中一個目錄中找到不同語言的字典:
無法寫入的字元數。
為了像文書處理器那樣實現文字對齊,必須將 'linebreak' 設定為 'false',將 'parbreak' 設定為 'true'。對於每個新行,必須使用 "\n\n"(兩個換行符,而不是文件中所述的回車符)。如果要在完成的文件中建立兩個新行,"\n\n\n\n" 將無法作用。必須使用 "\n\n \n\n"。
要讓每一行都對齊,應該在文字末尾附加 "\n "(換行符和一個空格)。要使此方法有效,'linebreak' 必須為 'true'。
請注意,即使函式名稱暗示如此,文字周圍也不會繪製方框。
繪製方框後,您可以使用以下方法取得新的 x 和 y 位置
<?php
$x=ps_get_value($ps,'textx',NULL);
$y=ps_get_value($ps,'texty',NULL);
?>
textx 指向 ps_show_boxed 寫入的最後一個字元的結尾,texty 指向寫入的最後一行的基準線(這意味著,例如,如果最後一行有一個「g」,則 g 下半部的 y 座標將低於 texty 的值。我希望你明白我的意思)