我的小脚本出了问题.我想使用wand以便convert PDF file on jpeg file,我想保存一个特定的框架.
我的脚本做了两件事:
如果PDF文档生成一个页面:转换并将其保存到jpeg文件(它工作)
如果PDF文档有两页或更多页面:只将第一页转换并保存到jpeg文件中(它不起作用)
我的问题是:我想保存我的意思,page[0]但我找不到保存单帧的方法.
#-*- coding: utf-8 -*-
from wand.image import Image
import os
documents_path = "/Users/tiers/Desktop/documents/"
for PDF in os.listdir (documents_path) : #boucle sur tous les PDF du dossier
convert = Image(filename=documents_path + PDF, resolution=200)
name = PDF.split('.') #Récupération du nom
if len(convert.sequence) == 1 : #Nombre de page = 1
convert.compression_quality = 100 #Qualité en %
convert.save(filename="/Users/tiers/Desktop/documents_jpg/" + name[0] + ".jpg") #Enregistrement en JPEG sous la forme nom.jpg
elif len(convert.sequence) > 1 : #Nombre de page > 1
for page in convert.sequence : #Pour chaque page
convert.compression_quality = 100 #Qualité en %
page.save(filename="/Users/tiers/Desktop/documents_jpg/" + name[0] + ".jpg") #Enregistrement en JPEG sous la forme nom.jpg
Run Code Online (Sandbox Code Playgroud)
你知道吗?
编辑:
我编辑了我的剧本.我break在我的最后一个循环之后for.从这个方面来说,我只是拿起第一页,但我不喜欢这种事情......
#-*- coding: utf-8 -*-
from wand.image import Image
import os
import matplotlib as plt
documents_path = "/Users/tiers/Desktop/documents/"
for PDF in os.listdir (documents_path) : #boucle sur tous les PDF du dossier
convert = Image(filename=documents_path + PDF, resolution=200)
name = PDF.split('.') #Récupération du nom
page = len(convert.sequence)
if page == 1 : #Nombre de page = 1
convert.compression_quality = 100 #Qualité en %
convert.save(filename="/Users/tiers/Desktop/documents_jpg/" + name[0] + ".jpg") #Enregistrement en JPEG sous la forme nom.jpg
elif page > 1 : #Nombre de page > 1
for frame in convert.sequence : #Pour chaque page
img_page = Image(image=frame)
img_page.compression_quality = 100 #Qualité en %
img_page.save(filename="/Users/tiers/Desktop/documents_jpg/" + name[0] + ".jpg") #Enregistrement en JPEG sous la forme nom.jpg
break
Run Code Online (Sandbox Code Playgroud)
它有效,但如果你有其他方法可以做到这一点,我会采取!
小智 6
from wand.image import Image
with Image(filename='yourfilename.pdf') as img:
extractedimg = img.sequence[0]
first_image = Image(image=extractedimg)
first_image.format= 'jpeg'
first_image.save(filename='001.jpg')
Run Code Online (Sandbox Code Playgroud)
我认为这更好.
Shi*_*ijo -1
更正了我的答案,仅包含第一页
\n\nfrom wand.image import Image\nimport os\nimport matplotlib as plt\n\ndocuments_path = "/Users/tiers/Desktop/documents/"\n\nfor PDF in os.listdir (documents_path) : #boucle sur tous les PDF du dossier\n\n convert = Image(filename=documents_path + PDF, resolution=200) \n name = PDF.split(\'.\') #R\xc3\xa9cup\xc3\xa9ration du nom\n\n page=convert.sequence[0]\n convert.compression_quality = 100 #Qualit\xc3\xa9 en %\n page.save(filename="/Users/tiers/Desktop/documents_jpg/" + name[0] + ".jpg") #Enregistrement en JPEG sous\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
1193 次 |
| 最近记录: |