конвертировать все img в один PDF.?

#python #pdf #resize #python-imageio

Вопрос:

Я хотел бы закончить свой сценарий, я много пытался решить, но, будучи новичком, потерпел неудачу. У меня есть функция imageio , которая берет изображение с веб-сайта, и после этого я хотел бы изменить размер всех изображений 63x88 и поместить все мои изображения в один PDF.

 full_path = os.path.join(filePath1, name   ".png")
if os.path.exists(full_path):
    number = 1
    while True:
        full_path = os.path.join(filePath1, name   str(number)   ".png")
        if not os.path.exists(full_path):
            break
        number  = 1
imageio.imwrite(full_path, im_padded.astype(np.uint8))       
os.chmod(full_path, mode=0o777)
 

спасибо за ответ

Ответ №1:

У нас (ImageIO) в настоящее время нет программы чтения / записи PDF. Для этого есть давний запрос функций, который еще не реализован, потому что в настоящее время никто не хочет его вносить.

Что касается загрузки изображений, у нас есть пример для этого в документах:

 import imageio as iio
from pathlib import Path

images = list()
for file in Path("path/to/folder").iterdir():
    im = iio.imread(file)
    images.append(im)
 

Предостережение заключается в том, что в этом конкретном примере предполагается, что вы хотите прочитать все изображения в папке и что в указанной папке есть только изображения. Если какой-либо из этих случаев к вам не относится, вы можете легко настроить фрагмент.

Что касается изменения размера изображений, у вас есть несколько вариантов, и я рекомендую scikit-функцию изменения размера изображения.

Чтобы затем получить все изображения в формате PDF, вы могли бы взглянуть на matplotlib, который может генерировать рисунок, который вы можете сохранить как файл PDF. Точные шаги для этого будут зависеть от желаемого макета вашего результирующего pdf.