我已經計算出如果我希望將生成的圖像作爲A4尺寸@ 600dpi用於打印目的,它需要爲7016x4961px @ 72dpi。所以,我編程生成它,然後在Photoshop中測試它,它似乎很好,所以如果我調整它,它會得到適當的大小和分辨率以編程方式更改圖像分辨率
。
我想知道的是,如果有可能以編程方式進行此大小調整,最好使用PIL,但不一定要使用它。我需要讓它更高的DPI。
我已經計算出如果我希望將生成的圖像作爲A4尺寸@ 600dpi用於打印目的,它需要爲7016x4961px @ 72dpi。所以,我編程生成它,然後在Photoshop中測試它,它似乎很好,所以如果我調整它,它會得到適當的大小和分辨率以編程方式更改圖像分辨率
。
我想知道的是,如果有可能以編程方式進行此大小調整,最好使用PIL,但不一定要使用它。我需要讓它更高的DPI。
如果您已生成圖片7016 x 4961 px,它已在600 dpi的A4。所以你不需要調整它的大小,你只需要在文件中設置分辨率信息。
你可以用PIL做到這一點:
from PIL import Image
im = Image.open("test.png")
im.save("test-600.png", dpi=(600,600))
這也適用於jpeg圖像嗎? – FaCoffee 2016-02-26 15:18:26
該代碼將調整PNG圖像爲7016x4961與PIL:
size = 7016, 4961
im = Image.open("my_image.png")
im_resized = im.resize(size, Image.ANTIALIAS)
im_resized.save("my_image_resized.png", "PNG")
也許是更好的方法是使你的畫布x
倍大之前的印刷,其中x
是你必須找出一個因素(這個特定圖像的大小爲7016x4961)。
如果你真的要生成它,因爲飛行麪條怪物的愛,在想要的分辨率生成它。如果你真的需要升級,http://stackoverflow.com/a/1750331/180174 :) – Kimvais 2012-02-07 10:15:22
其實我用html5畫布生成它,然後從http://www.nihilogic.dk/labs/canvas2image/保存image2canvas所以我無法控制那裏的DPI。有任何想法嗎? – 2012-02-07 10:25:27
在你的問題中,「72 dpi」令人困惑。如果你的意思是(就像我想的那樣)「如何將7016x4961像素圖像的分辨率設置爲600dpi,以便它打印在A4上?」那麼你可以用PIL來做,正如我在答案中解釋的那樣。 – MatthieuW 2012-02-07 12:37:50