三種Java打印PDF文檔的實(shí)例代碼
以下內(nèi)容歸納了通過(guò)Java程序打印PDF文檔時(shí)的3種情形。即:
1 靜默打印
2 顯示打印對(duì)話框打印
3 打印PDF時(shí)自定義紙張大小
使用工具:Spire.PDF for Java
Jar文件獲取及導(dǎo)入:
方法1:下載jar包。下載后,解壓文件,并將lib文件夾下的Spire.Pdf.jar導(dǎo)入java程序。
方法2:可通過(guò)maven庫(kù)導(dǎo)入。參考導(dǎo)入方法。
Java代碼示例
【示例1】靜默打印
即通過(guò)使用默認(rèn)打印機(jī)直接打印PDF文檔。打印時(shí),我們可以設(shè)置打印份數(shù),設(shè)置紙張打印頁(yè)邊距等。
import com.spire.pdf.*;import java.awt.print.*; public class Print { public static void main(String[] args) { //加載文檔 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile('Sample.pdf'); PrinterJob loPrinterJob = PrinterJob.getPrinterJob(); PageFormat loPageFormat = loPrinterJob.defaultPage(); Paper loPaper = loPageFormat.getPaper(); //刪除默認(rèn)頁(yè)邊距 loPaper.setImageableArea(0,0,loPageFormat.getWidth(),loPageFormat.getHeight()); //設(shè)置打印份數(shù) loPrinterJob.setCopies(2); loPageFormat.setPaper(loPaper); loPrinterJob.setPrintable(pdf,loPageFormat); try { loPrinterJob.print(); } catch (PrinterException e) { e.printStackTrace(); } } }
【示例2】顯示打印對(duì)話框打印PDF文檔
import com.spire.pdf.*;import java.awt.print.*; public class Print { public static void main(String[] args) { //加載文檔 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile('Sample.pdf'); PrinterJob loPrinterJob = PrinterJob.getPrinterJob(); PageFormat loPageFormat = loPrinterJob.defaultPage(); Paper loPaper = loPageFormat.getPaper(); //刪除默認(rèn)頁(yè)邊距 loPaper.setImageableArea(0,0,loPageFormat.getWidth(),loPageFormat.getHeight()); loPageFormat.setPaper(loPaper); loPrinterJob.setPrintable(pdf,loPageFormat); //顯示打印對(duì)話框 if (loPrinterJob.printDialog()) { try { loPrinterJob.print(); } catch (PrinterException e) { e.printStackTrace(); } } }}
【示例3】打印時(shí)自定義紙張大小
import com.spire.pdf.*;import java.awt.print.*;public class Print { public static void main(String[] args) { //加載文檔 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile('Sample.pdf'); PrinterJob loPrinterJob = PrinterJob.getPrinterJob(); PageFormat loPageFormat = loPrinterJob.defaultPage(); //設(shè)置打印紙張大小 Paper loPaper = loPageFormat.getPaper(); loPaper.setSize(500,600); loPageFormat.setPaper(loPaper); loPrinterJob.setPrintable(pdf,loPageFormat); try { loPrinterJob.print(); } catch (PrinterException e) { e.printStackTrace(); } }}
如果需要更詳細(xì)的打印設(shè)置,可以在PrinterJob下設(shè)置相應(yīng)的參數(shù),可從參考:https://www.programcreek.com/java-api-examples/java.awt.print.PrinterJob
(本文完)
到此這篇關(guān)于三種Java 打印PDF文檔的實(shí)例代碼的文章就介紹到這了,更多相關(guān)JAVA 打印PDF文檔內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Android table布局開發(fā)實(shí)現(xiàn)簡(jiǎn)單計(jì)算器2. 理解PHP5中static和const關(guān)鍵字3. jQuery 實(shí)現(xiàn)DOM元素拖拽交換位置的實(shí)例代碼4. php模擬實(shí)現(xiàn)斗地主發(fā)牌5. IntelliJ IDEA安裝插件的方法步驟6. phpstorm恢復(fù)默認(rèn)設(shè)置的方法步驟7. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)8. Python random庫(kù)使用方法及異常處理方案9. Vuex localStorage的具體使用10. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟

網(wǎng)公網(wǎng)安備