zoukankan      html  css  js  c++  java
  • PymuPDF实现PDF文字和图片的修改

    实现了PymuPDF替换pdf指定位置文字和图片的功能,并分别保存pdf和JPG格式.
    #-*- coding:utf-8 -*- import os import PyPDF2 import fitz text = u"湖南省湘潭市雨湖区鹤岭镇长安村永红组" file_path = r'D:Desktop新建文件夹' for root,dirs,files in os.walk(file_path): for file in files: print(file) if file.upper().endswith('FWT.PDF'): print(file.upper()) pdfPath=os.path.join(root,file) print(pdfPath) doc = fitz.open(pdfPath) page=doc[0] #方法1插入一个空白图片或者直接插入带文字的图片(效果有出入) # rect=fitz.Rect(1050,-4260,2600,-4150) #替换坐落为空白区域--需要调试位置, # pix=fitz.Pixmap(r"D: .jpg") # page.insert_image(rect,pixmap=pix,overlay=True) #方法2插入空白区域,再插入文本 page.draw_rect((1050,-4255,2600,-4150),color=(1,1,1),fill=(1,1,1),width=0) #方法1绘制白色无框矩形覆盖地址 #方法1,定义字体文件会比直接调用PDF体积小一些 fontname="SimHei" ,fontfile=r"C:WindowsFontssimhei.ttf" ff=page.insert_font(fontname="HT",fontfile=r"C:WindowsFontssimhei.ttf", fontbuffer=None , set_simple=False ) #定义黑体 page.insert_text((1150,-4190),text,fontname="HT" ,fontsize=86 ,color=(0,0,0,1), fill=None, render_mode=0, border_width=1, rotate=0, morph=None, overlay=True) #方法2:定义CJK内置字体,默认china-s默认为黑体,但是在非福昕阅读器当中显示有异常,直接导出JPG也显示有异常(弃用) #page.insert_text((1150,-4190),text,fontname="china-t" ,fontsize=86 ,color=(0,0,0,1), fill=None, render_mode=0, border_width=1, rotate=0, morph=None, overlay=True) #https://pymupdf.readthedocs.io/en/latest/page.html#Page.insert_font 参照 CJK内置字体china-s 黑体 china-ss 宋体 china-t 繁体黑体 china-ts 繁体宋体 print('导出:',r"D:Desktop新建文件夹2_1.PDF" ) #print('导出:',os.path.splitext(pdfPath)[0]+"_1.PDF" ) doc.save(r"D:Desktop新建文件夹2_1.PDF",garbage=4, deflate=True) #PDF导出图片-并提升导出图片分辨率2倍 zoom_x = 2.0 zomm_y = 2.0 m mat = fitz.Matrix(zoom_x, zomm_y) pix = page.get_pixmap(matrix=mat,alpha=0) # alpha=0 白色背景 pix.save(r"D:Desktop新建文件夹2_1.JPG") #直接保存成jpg 不处理,清晰度低

      

    时间的步伐有三种:未来姗姗来迟,现在像箭一样飞逝,过去永远静立不动.务请珍惜
  • 相关阅读:
    JAVA 8的新特性
    JAVA中map的分类和各自的特性
    设计模式之工厂方法模式(附实例代码下载)
    为什么重写equals还要重写hashcode??
    C# static的用法详解
    1-RadioButton控件的用法
    C#三种常用的读取XML文件的方法
    VS2017 中安装SVN
    pip安装selenium时,报错“You are using pip version 10.0.1, however version 18.0 is available.”的问题
    问题:unknown error: call function result missing 'value' 解决方法
  • 原文地址:https://www.cnblogs.com/Asa-Zhu/p/15501045.html
Copyright © 2011-2022 走看看