Sziasztok,
mupdf-el szeretnék egy pdf dokumentumot képpé alakítani. Sajnos csapnivaló minőséget produkál. Lehetne ezen valahogy javítani. A jelenlegi kód így néz ki:
import fitz
doc = fitz.open("mydoc.pdf")
page = doc.loadPage(0)
pix = page.getPixmap(alpha = False)
pix.writePNG("test.png")
- 697 megtekintés
Hozzászólások
Hali,
Nekem anno Google ezt a megoldast hozta be akkor is es frankon konvertalt mindent:
https://stackoverflow.com/questions/46184239/python-extract-a-page-from…
-------------------------
Roses are red
Violets are blue
Unexpected '}' on line 32
- A hozzászóláshoz be kell jelentkezni
A gond az, hogy ennek is a poppler kell, amit nem tudok 2-es python alá telepíteni mert hiányzik egy "sipdistutils" nevű modul. Persze a SIP csomag fenn van, de az említett modul valahogy lemaradt ebből a csomagból.
Elfelejtettem megemlíteni, 2-es pythonban és Qt4-el dolgozok.
- A hozzászóláshoz be kell jelentkezni
Talan neked is mukodhet:
https://stackoverflow.com/a/51421349/2246969
https://github.com/frescobaldi/python-poppler-qt5/issues/14#issuecommen…
- A hozzászóláshoz be kell jelentkezni
Már kipróbáltam, de nem működött. Teszek vele még egy próbát, hátha másodikra összejön.
- A hozzászóláshoz be kell jelentkezni
Ha más módszer is szóbajöhet
https://askubuntu.com/questions/50170/how-to-convert-pdf-to-image (pl. os.popen()-nel meghívva)
- A hozzászóláshoz be kell jelentkezni
Szeretnék a python keretein belül maradni, hogy ne legyen gond a windowson való futtatással.
A gond azzal kezdődött, hogy a reportlab-bal legyártok egy szép pdf-et, amit el lehet menteni vagy ki lehetne nyomtatni, de a Qt4 nyomtató funkciója nem eszi meg csak a szöveget vagy a képet. Így nem marad más választásom mint a pdf-et képpé alakítani, aminek ilyen szar a minősége: https://postimg.cc/V0jvf9Fs
- A hozzászóláshoz be kell jelentkezni
Megválaszolom magamnak:
mat = fitz.Matrix(4, 4) #4 a zoom level, minél nagyobb, annál jobb a felbontás
pix = page.getPixmap(matrix = mat, alpha = False)
A faq-ba volt elrejtve:
https://pymupdf.readthedocs.io/en/latest/faq/
- A hozzászóláshoz be kell jelentkezni