
我有一個相當大(~100MB)的 PDF 文檔,其中有很多圖像(作為插圖和背景圖像),我想要一份沒有圖像的 pdf 副本,但我不知道如何做。
我不是說將其僅轉換為文本,我想保持段落/表格/多列不變。
我對命令列很熟悉,並且有幾台可以使用不同發行版的電腦。
答案1
最新版本的 Ghostscript 也可以做到這一點。只需將參數添加-dFILTERIMAGE
到您的命令中即可。
甚至還可以新增兩個新參數,以便選擇性地刪除內容類型“向量”和"文字":
-dFILTERIMAGE
:產生一個輸出,其中所有光柵影像都被刪除。-dFILTERTEXT
:產生一個輸出,其中所有文字元素都被刪除。-dFILTERVECTOR
:產生一個輸出,其中所有向量圖都被刪除。
這些選項中的任何兩個都可以組合。 (如果將所有 3 個頁面合併起來,所有頁面都會變成空白...)
例子
以下是範例 PDF 頁面的螢幕截圖,其中包含上述所有 3 種類型的內容:
原始 PDF 頁面的螢幕截圖包含「圖像」、「向量」和「文字」元素。
執行以下 6 個命令將創建剩餘內容的所有 6 種可能的變體:
gs -o noIMG.pdf -sDEVICE=pdfwrite -dFILTERIMAGE input.pdf gs -o noTXT.pdf -sDEVICE=pdfwrite -dFILTERTEXT input.pdf gs -o noVCT.pdf -sDEVICE=pdfwrite -dFILTERVECTOR input.pdf gs -o onlyIMG.pdf -sDEVICE=pdfwrite -dFILTERVECTOR -dFILTERTEXT input.pdf gs -o onlyTXT.pdf -sDEVICE=pdfwrite -dFILTERVECTOR -dFILTERIMAGE input.pdf gs -o onlyVCT.pdf -sDEVICE=pdfwrite -dFILTERIMAGE -dFILTERTEXT input.pdf
下圖說明了結果:
最上面一排,從左起:刪除所有「文字」;刪除所有“圖像”;所有“向量”均已刪除。最下面一排,從左起:僅保留「文本」;僅保留“圖像”;只保留“向量”。