2016-11-05 45 views
0

我正在使用Python Wand模塊(版本0.4.3。)將存儲在pdf中的圖像轉換爲PNG。當我將最終圖像保存在原始圖像的寬度和高度時,最終的PNG質量非常好。但是,當我嘗試將它保存爲較小的圖像時,最終的PNG會變得模糊,質量也不是那麼好。Python Wand Scaling問題

兩張圖片之間的差異顯示爲here。頂部圖像被轉換爲​​原始大小(10800x7200px)。第二個是縮放到1250x833px。

有什麼辦法可以改善第二張圖片嗎?我玩過不同的濾鏡和模糊設置。但是,無法獲得我想要的圖像質量。任何幫助是極大的讚賞。

代碼我用PDF轉換爲原始大小巴布亞新幾內亞:

def pdf_to_png(pdf_name, res): 
     with Image(filename=pdf_name, resolution=res) as img: 
      with Image(width=img.width,height=img.height, background=Color("white")) as bg: 
       bg.composite(img,0,0)` 
       bg.save(filename="Drawing_improved_wand.png")` 
pdf_to_png('Drawing_1.pdf', 300) 

代碼調整大小PNG:

with Image(filename="Drawing_1.pdf", resolution=(300,300)) as img: 
     with Image(width=1250, height=833, background=Color("white")) as bg: 
      img.resize(1250, 833,filter='undefined', blur=1) 
      img.format = 'png' 
      bg.composite(img,0,0) 
      bg.save(filename='Drawing_improved_wand1250x833.png') 

回答

0

這可能是由於與ImageMagick的是如何處理光柵化形式的PDF中的低效率文字+矢量,而不是因爲你做錯任何事情。大的PNG可能與小的PNG有相同的問題,但由於分辨率幾乎提高了一個數量級,效果變得難以察覺。

如果導出到大PNG文件看起來不錯,我會使用它進行進一步處理(如縮小)而不是PDF。

0

你試着設置模糊< 1?

例如:

img.resize(1250, 833,filter='undefined', blur=0.1) 
+0

這並不提供答案的問題。一旦你有足夠的[聲譽](https://stackoverflow.com/help/whats-reputation),你將可以[對任何帖子發表評論](https://stackoverflow.com/help/privileges/comment);相反,[提供不需要提問者澄清的答案](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- I-DO-代替)。 - [來自評論](/ review/low-quality-posts/16921018) – whrrgarbl