轉帖|使用教程|編輯:何躍|2022-01-28 13:18:33.810|閱讀 366 次
概述:頁邊距是 PDF 頁面周圍的白色區域。如果您需要更多空白來添加其他信息,您可以增加邊距。或者在其它情況您可能還需要減少邊距。本文演示了如何使用 Spire.PDF for Java 調整現有 PDF 文檔的邊距。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
首先,您需要在 Java 程序中添加 Spire.Pdf.jar 文件作為依賴項。JAR文件可以從此鏈接下載。 如果您使用 Maven,則可以將以下代碼添加到項目的 pom.xml 文件中,從而輕松地在應用程序中導入 JAR 文件
<repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>//repo.e-iceblue.cn/nexus/content/groups/public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf</artifactId> <version>5.1.0</version> </dependency> </dependencies>
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; import com.spire.pdf.graphics.PdfMargins; import com.spire.pdf.graphics.PdfTemplate; import java.awt.*; import java.awt.geom.Dimension2D; import java.awt.geom.Point2D; public class IncreaseMargins { public static void main(String[] args) { //加載原始PDF文檔 PdfDocument originalPdf = new PdfDocument("C:\\Users\\Administrator\\Desktop\\sample.pdf"); //獲取第一頁的內容 PdfPageBase firstPage = originalPdf.getPages().get(0); //創建一個新的PdfDocument對象 PdfDocument newPdf = new PdfDocument(); //設置邊距的增值 PdfMargins margins = newPdf.getPageSettings().getMargins(); margins.setTop(40); margins.setBottom(40); margins.setLeft(40); margins.setRight(40); //設置新PDF文檔的大小 Dimension2D dimension2D = new Dimension(); dimension2D.setSize(firstPage.getSize().getWidth() + margins.getLeft() + margins.getRight(), firstPage.getSize().getHeight() + margins.getTop() + margins.getBottom()); //循環瀏覽原始文檔中的頁面 for (int i = 0; i < originalPdf.getPages().getCount(); i++) { //根據源頁面創建模板 PdfTemplate template = originalPdf.getPages().get(i).createTemplate(); //在新的PDF文檔中添加頁面 PdfPageBase page = newPdf.getPages().add(dimension2D); //在頁面上繪制模板 template.draw(page.getCanvas(), new Point2D.Float(0, 0)); } //將新文檔保存到文件 newPdf.saveToFile("output/IncreaseMargins.pdf", FileFormat.PDF); } }
減小現有 PDF 文檔的頁邊距
同樣,減少 PDF 邊距的方法是創建一個更小頁面的新 PDF,然后在較小頁面的指定坐標位置繪制原始頁面。以下是使用 Spire.PDF for Java 減少現有 PDF 文檔頁邊距的主要步驟。
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; import com.spire.pdf.graphics.PdfMargins; import com.spire.pdf.graphics.PdfTemplate; import java.awt.*; import java.awt.geom.Dimension2D; import java.awt.geom.Point2D; public class DecreaseMargins { public static void main(String[] args) { //加載原始PDF文檔 PdfDocument originalPdf = new PdfDocument("C:\\Users\\Administrator\\Desktop\\sample.pdf"); //獲取第一頁的內容 PdfPageBase firstPage = originalPdf.getPages().get(0); //創建一個新的PdfDocument對象 PdfDocument newPdf = new PdfDocument(); //設置減值 double left = -20; double right = -20; double top = -20; double bottom = -20; //設置新PDF文檔的頁面大小 Dimension2D dimension2D = new Dimension(); dimension2D.setSize(originalPdf.getPages().get(0).getSize().getWidth() + left + right, originalPdf.getPages().get(0).getSize().getHeight() + top + bottom); //循環瀏覽原始文檔中的頁面 for (int i = 0; i < originalPdf.getPages().getCount(); i++) { //根據源頁面創建模板 PdfTemplate template = originalPdf.getPages().get(i).createTemplate(); //在新的PDF文檔中添加頁面 PdfPageBase page = newPdf.getPages().add(dimension2D, new PdfMargins(0)); //在頁面上繪制模板 template.draw(page.getCanvas(), new Point2D.Float((float) left, (float) top)); } //將新文檔保存到文件 newPdf.saveToFile("output/DecreaseMargins.pdf", FileFormat.PDF); } }
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn