您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么使用Java壓縮PDF文檔”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么使用Java壓縮PDF文檔”吧!
方法一:
如果您使用的是 maven,可以通過添加以下代碼到項目的 pom.xml 文件中,將 JAR 文件導入到應用程序中。
<repositories> <repository> <id>com.e-iceblue</id> <url>https://repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf.free</artifactId> <version>5.1.0</version> </dependency> </dependencies>
方法二:
如果您沒有使用 maven,則可以從此鏈接下載Free Spire.PDF for Java,找到lib文件夾下的Spire.PDF.jar并進行解壓;然后在IDEA中創建一個新項目,依次點擊“文件”(File),“項目結構”(Project Structure),“組件”(Modules),“依賴項”(Dependencies),再點擊右方綠色“+”下的第一個選項“JAR文件或路徑”(JARs or Directories),找到解壓后的Spire.PDF.jar 文件,點擊確認,將其導入到項目中。
注意:Free Spire.PDF for Java支持10頁內的PDF文檔,如果PDF頁數過多,可以選擇使用Spire.PDF for Java。
下面是詳細操作步驟和相關代碼:
創建PdfDocument類的對象。
使用PdfDocument.loadFromFile()方法加載PDF文檔。
使用PdfDocument.getFileInfo().setIncrementalUpdate() 方法禁用增量更新。
使用PdfDocument.setCompressionLevel()方法將壓縮級別設置為最佳,用于壓縮文檔中的內容。您可以從PdfCompressionLevel列舉中選擇其他級別。
遍歷文檔頁面,并使用PdfPageBase.getImagesInfo()方法獲取每個頁面的圖像信息集合。
遍歷集合中的所有項目,并使用PdfBitmap.setQuality() 方法壓縮特定圖像的質量。
使用PdfPageBase.replaceImage()方法將原始圖像替換為壓縮圖像。
使用PdfDocument.saveToFile()方法將文檔保存到另一個PDF文檔。
import com.spire.pdf.PdfCompressionLevel; import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; import com.spire.pdf.exporting.PdfImageInfo; import com.spire.pdf.graphics.PdfBitmap; public class CompressPdfDocument { public static void main(String[] args) { //創建PdfDocument類的對象 PdfDocument doc = new PdfDocument(); //加載PDF文檔 doc.loadFromFile("sample.pdf"); //禁用增量更新 doc.getFileInfo().setIncrementalUpdate(false); //將壓縮級別設置為最佳 doc.setCompressionLevel(PdfCompressionLevel.Best); //遍歷文檔頁面 for (int i = 0; i < doc.getPages().getCount(); i++) { //獲取指定頁面 PdfPageBase page = doc.getPages().get(i); //獲取每個頁面的圖像信息集合 PdfImageInfo[] images = page.getImagesInfo(); //遍歷集合中的所有項目 if (images != null && images.length > 0) for (int j = 0; j < images.length; j++) { //獲取指定圖片 PdfImageInfo image = images[j]; PdfBitmap bp = new PdfBitmap(image.getImage()); //設置壓縮質量 bp.setQuality(20); //將原始圖像替換為壓縮圖像 page.replaceImage(j, bp); } //將結果文檔保存至另一個PDF文檔中 doc.saveToFile("Compressed.pdf"); doc.close(); } } }
感謝各位的閱讀,以上就是“怎么使用Java壓縮PDF文檔”的內容了,經過本文的學習后,相信大家對怎么使用Java壓縮PDF文檔這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。