2012-12-28 136 views
1

我在將PDF轉換爲ImageMagick中的PNG時遇到麻煩。我使用了不同的變體,包括使用Ghostscript,並將輸出管道輸送到ImageMagic(給出here - 這似乎不適合我,所以我必須保存到臨時文件而不是使用管道)。我發現這是工作最適合我:邊距在PDF中消失 - >使用ImageMagick進行PNG轉換

轉換-background透明 - 密度150×150的測試檢驗.pdf,IMSoloOut.png

這裏的原始PDF的屏幕截圖,在我的瀏覽器(預覽,在OS X):

Original PDF file in Preview

當我轉換它,我得到這個:

PNG in Preview

問題是它的邊距下降。我不清楚它是否使它們變得透明或者是什麼,但是圖像的格式看起來沒有邊距而sl sl。

我得到了這個嘗試:

轉換 - 密度150×150 -gravity檢驗.pdf中心-Background透明-extent 612x792試驗Extras.png

而這只是給了我一個網頁的部分:

enter image description here

我試圖適應這一點,改變了612x792到1275x1650,這を適合150DPI乘以頁面大小(8.5「x 11」)。當我這樣做的時候,我得到了一個大的圖像,但是再一次,邊緣消失了,就像上面的第二張圖片一樣。

這些圖像將顯示在一個Java程序中,該程序將顯示多個頁面,因此頁邊距可能會有所不同(換句話說,我不能只圍繞輸出包裝設置的邊框,如第2頁所示圖像,因爲邊框尺寸會在一些圖像中改變)。

我已經看到一些關於刪除PDF到PNG轉換邊距的點擊率,但它們似乎沒有提供任何幫助。

我的猜測是,在轉換過程中,邊距被轉換爲透明的東西,所以我嘗試在轉換的命令行中添加「-transparent white」,但沒有幫助。

我可以做些什麼來獲得邊距,或者如果它們在那裏並且不可見,我怎樣才能讓它們顯示?基本上我希望PNG文件(圖像#2)看起來像包含邊距的PDF文件(圖像#1)。

我懷疑我錯過了一些明顯的東西 - 我希望它是那麼容易。

我怎樣才能確保邊緣的空間顯示出來?

回答

2

我從來沒有得到確切的答案,但其中一個ImageMagick人對此非常有幫助。基本上,我需要使用選項「-extent」來指定圖像的大小。由於我使用的密度與默認值不同,因此我也必須考慮到這一點。該工作的命令行是:

轉換 - 密度150×150 InputFile.pdf -background白色-units PixelsPerInch -density 150 -extent 1275x1650 OutputFile.png

的1275x1650來自乘150(用於DPI)寬度爲8.5英寸,高度爲11英寸。

+0

即使沒有密度,我也需要'範圍'。沒有範圍,幻燈片被裁剪掉。 – cayhorstmann

相關問題