溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么在java中利用itext設(shè)置pdf紙張的大小

發(fā)布時(shí)間:2021-01-30 14:02:43 來源:億速云 閱讀:706 作者:Leah 欄目:開發(fā)技術(shù)

這篇文章給大家介紹怎么在java中利用itext設(shè)置pdf紙張的大小,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

做快遞面單打印模板,快遞要求紙張大小100 x 150mm。

PageSize.A4=595 x 842

A4尺寸=210mm×297mm

故設(shè)置紙張大?。?/h4>
public static final Rectangle EXP = new RectangleReadOnly(283.0F, 425.0F);

補(bǔ)充:解決iText生成pdf文件過大的問題

為iText生成的pdf文件瘦身。

原來生成pdf文件,即使是純文本內(nèi)容,無論內(nèi)容再如何少,文件體積總是在7M多,導(dǎo)致傳輸速度很慢。經(jīng)排查,是在pdf生成的時(shí)候,選用了第三方中文字體造成的。

原生成PDF代碼中,有如下語句:

bfChinese = BaseFont.createFont("c://windows//fonts//SIMFANG.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);

這種情況下,iText會(huì)將字體TTF文件一同打包進(jìn)pdf文件中,造成文件很大。

解決方法

是把這句改寫為:

BaseFont.createFont("STSong-Light", "UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);

同時(shí),需要引入itext-asian,使用maven:

<!-- https://mvnrepository.com/artifact/com.itextpdf/itext-asian -->
<dependency>
 <groupId>com.itextpdf</groupId>
 <artifactId>itext-asian</artifactId>
 <version>5.2.0</version>
</dependency>

關(guān)于怎么在java中利用itext設(shè)置pdf紙張的大小就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI