/ / Cambia programáticamente la resolución de la imagen - python, image, resolution, dpi

Cambie programáticamente la resolución de la imagen - python, imagen, resolución, dpi

He calculado que si quiero mi generadoLa imagen debe ser de tamaño A4 a 600 ppp para fines de impresión, debe ser de 7016x4961px a 72 ppp. Entonces, lo genero programáticamente, luego lo pruebo en Photoshop y parece que está bien, así que si lo redimensiono, obtendré el tamaño y la resolución adecuados.

Cuadro de diálogo de tamaño de imagen en Photoshop.

Lo que me pregunto es si es posible hacer este cambio de tamaño mediante programación, preferiblemente con PIL, pero no necesariamente con él. Necesito hacerlo con un DPI más alto.

Respuestas

11 para la respuesta № 1

Si ha generado su imagen 7016 x 4961 px, ya es A4 a 600 ppp. Por lo tanto, no es necesario cambiar su tamaño, solo debe configurar la información de resolución en el archivo.

Puedes hacerlo con PIL:

from PIL import Image

im = Image.open("test.png")
im.save("test-600.png", dpi=(600,600))

7 para la respuesta № 2

Este código cambiará el tamaño de una imagen PNG a 7016x4961 con 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")

Quizás un mejor enfoque sería hacer tu lienzo. x veces más grande antes de imprimir, donde x es un factor que debes averiguar (7016x4961 de tamaño para esta imagen en particular).