日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python pdf编辑器开发_使用pymupdf开发pdf查看编辑器

發布時間:2023/12/14 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python pdf编辑器开发_使用pymupdf开发pdf查看编辑器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第三方庫?PyMuPDF?在 python 環境下對 PDF 文件的操作,特別是圖片和pdf之間相互轉換比較方便,并且能較方便的執行一些如追加刪除之類的功能。開發文檔見:https://pymupdf.readthedocs.io/en/latest/。

我寫的一個demo已上傳到我的資源中,實現的功能為:查看 pdf文件、追加pdf文檔、刪除pdf頁面、將當前頁面放到剪貼板等功能。界面左邊欄為頁面導航,點擊縮略圖后顯示頁面,按ctrl+鼠標滾輪后可縮放頁面 ,使用了pyqt5框架。CSDN資源下載:https://download.csdn.net/detail/zhoury/11222542,github上的連接為:https://github.com/tzous/pdfedit.git。歡迎下載參考。

1、建議使用pip安裝

pip?install?[--upgrade]?PyMuPDF

然后在py文件中import:

import fitz

2、打開文檔

doc = fitz.open(filename)

3、pdf頁面轉換為圖片

# 得到當前頁,并轉換為圖片

page = self.docDoc[self.nCurr]

zoom = int(200)

rotate = int(0)

trans = fitz.Matrix(zoom / 100.0, zoom / 100.0).preRotate(rotate)

pix = page.getPixmap(matrix=trans, alpha=False)

fmt = QImage.Format_RGBA8888 if pix.alpha else QImage.Format_RGB888

qtimg = QImage(pix.samples, pix.width, pix.height, pix.stride, fmt) # 當前頁轉換為QImage對象

# 準備顯示控件

widget = QWidget(self)

vboxLayout = QVBoxLayout()

labelimg = ShowImageWidget(widget) # 使用一個自定義的QLabel控件

labelimg.setpix(QPixmap.fromImage(qtimg).scaled(QSize(pix.width, pix.height)))

labelimg.setAlignment(Qt.AlignTop | Qt.AlignHCenter)

vboxLayout.addWidget(labelimg)

widget.setLayout(vboxLayout)

self.showArea.setWidget(widget) # 添加到showArea

4、其他功能見開發文檔及demo

以上就是使用pymupdf開發pdf查看編輯器的全部內容。

總結

以上是生活随笔為你收集整理的python pdf编辑器开发_使用pymupdf开发pdf查看编辑器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。