Проблема с цветом при сохранении Pixmap страницы PDF как PNG с помощью PyMuPDF

Я запускаю следующий фрагмент кода Python из документации PyMuPDF 1.16.17, который сохраняет изображения PNG для каждой страницы в файле PDF.

import sys, fitz  # import the binding
fname = "test.pdf" # get filename from command line
doc = fitz.open(fname)  # open document
for page in doc:  # iterate through the pages
    pix = page.getPixmap()
    pix.writePNG("F:/cynthia/page-%i.png" % page.number)  # store image as a PNG

Цвета результирующих изображений PNG отличаются от цветов оригиналов PDF (слишком насыщенные и высококонтрастные). Я знаю функциюPage.getPixmap() имеет аргумент "цветовое пространство" и использование Document.getPageImageListЯ обнаружил, что цветовое пространство моего PDF-файла - "DeviceCMYK". Но когда я пытаюсь получить Pixmap, используя CMYK в качестве цветового пространства (заменяяpix = page.getPixmap() линия с pix = page.getPixmap(colorspace="CMYK")или `pix = page.getPixmap(colorspace=csCMYK)), он не меняет результирующие цвета. Любая помощь приветствуется.

1 ответ

Please upgrade your PyMuPDF version. Then ICC color support will be included which should improve your output.

Другие вопросы по тегам