最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)文字pdf轉(zhuǎn)換圖片pdf效果

 更新時間:2022年04月02日 15:05:21   作者:KjPrime  
當(dāng)我們把word轉(zhuǎn)化為pdf,wps默認(rèn)轉(zhuǎn)化為文字pdf,而圖片pdf要會員。所以本文將通過Python語言實現(xiàn)文字pdf轉(zhuǎn)換圖片pdf,需要的可以參考一下

前言

為什么會做這個?

因為我們把word轉(zhuǎn)化為pdf,wps默認(rèn)轉(zhuǎn)化為文字pdf,而圖片pdf要會員。

網(wǎng)上確實也有網(wǎng)站可以實現(xiàn)免費的,但是未必安全。

思路

我看了網(wǎng)上的很多代碼,都是先把文字pdf先轉(zhuǎn)化為圖片,然后再組裝成pdf文檔。我的思路也是這樣的。

但是我和他們很大的不一樣就是,我不需要先把圖片保存起來再提取,而我只需要把圖片的信息先存起來,再輸出pdf。

代碼展示

先安裝依賴

pip install PyMuPDF

輸入文件列表

import os
import fitz


def single_wordpdf_to_imgpdf(pdf_path: str):
    pdf = fitz.open(pdf_path)   # 打開pdf目錄
    pdf_img = fitz.open()       # 打開空文件,用來存圖片pdf
    for page_inf in pdf:
        definition = 3    # 清晰度,感覺輸出的pdf不夠清晰,可以調(diào)大,調(diào)大,文件大小也會變大
        matrix = fitz.Matrix(definition, definition)
        img = page_inf.get_pixmap(matrix=matrix).tobytes()
        img = fitz.open("png", img)
        pdf_bytes = img.convert_to_pdf()
        pdf_img.insert_pdf(fitz.open("pdf", pdf_bytes))
    pdf_img.save("圖片pdf_" + os.path.basename(pdf_path))


def group_wordpdf_to_imgpdf(path_array: list[str]):
    for pdf_path in path_array:
        print(pdf_path, "轉(zhuǎn)換中...")
        single_wordpdf_to_imgpdf(pdf_path)
    print("完成")


if __name__ == '__main__':
    path = ["xxx.pdf"]
    group_wordpdf_to_imgpdf(path)

輸入文件夾

import os
import fitz
import time


def single_wordpdf_to_imgpdf(pdf_path: str):
    pdf = fitz.open(pdf_path)   # 打開pdf目錄
    pdf_img = fitz.open()       # 打開空文件,用來存圖片pdf
    for page_inf in pdf:
        definition = 3    # 清晰度,感覺輸出的pdf不夠清晰,可以調(diào)大,調(diào)大,文件大小也會變大
        matrix = fitz.Matrix(definition, definition)
        img = page_inf.get_pixmap(matrix=matrix).tobytes()
        img = fitz.open("png", img)
        pdf_bytes = img.convert_to_pdf()
        pdf_img.insert_pdf(fitz.open("pdf", pdf_bytes))
    if not os.path.exists("output"):
        os.makedirs("output") # 處理好的pdf存入了output目錄下 #
    pdf_img.save("output/圖片pdf_" + os.path.basename(pdf_path))


def group_wordpdf_to_imgpdf(path_array: list[str]):
    for pdf_path in path_array:
        print(pdf_path, "轉(zhuǎn)換中...")
        single_wordpdf_to_imgpdf(pdf_path)
    print("完成")


def folder_pdf_files(folder: str) -> list[str]:  # 一個文件夾里面有多少pdf文件
    file_list = []
    for a, b, c in os.walk(folder):
        if b == []:
            for filename in c:
                if filename[-3:].lower() == 'pdf':
                    file_path = os.path.join(a, filename)
                    file_list.append(file_path)
    print(folder, ": 有", len(file_list), "個pdf文件")
    return file_list


if __name__ == '__main__':
    time_start = time.time()
    path_list = folder_pdf_files("目錄")
    group_wordpdf_to_imgpdf(path_list)
    time_end = time.time()
    print("程序運行時間:", round(time_end - time_start, 2), "秒")

到此這篇關(guān)于Python實現(xiàn)文字pdf轉(zhuǎn)換圖片pdf效果的文章就介紹到這了,更多相關(guān)Python 文字pdf轉(zhuǎn)圖片pdf內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python如何生成樹形圖案

    Python如何生成樹形圖案

    這篇文章主要為大家詳細介紹了Python如何生成樹形圖案,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Python?OpenCV超詳細講解讀取圖像視頻和網(wǎng)絡(luò)攝像頭

    Python?OpenCV超詳細講解讀取圖像視頻和網(wǎng)絡(luò)攝像頭

    OpenCV用C++語言編寫,它具有C?++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac?OS,OpenCV主要傾向于實時視覺應(yīng)用,并在可用時利用MMX和SSE指令,本篇文章帶你了解OpenCV讀取圖像視頻與網(wǎng)絡(luò)攝像頭的方法
    2022-04-04
  • Python 解析簡單的XML數(shù)據(jù)

    Python 解析簡單的XML數(shù)據(jù)

    這篇文章主要介紹了Python 如何解析簡單的XML數(shù)據(jù),文中講解非常細致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Anaconda中利用conda創(chuàng)建、激活、刪除、添加新環(huán)境

    Anaconda中利用conda創(chuàng)建、激活、刪除、添加新環(huán)境

    在使用Python開發(fā)項目或者編寫腳本的時候通常需要建立不同版本的Python的虛擬環(huán)境,本文主要介紹了Anaconda中利用conda創(chuàng)建、激活、刪除、添加新環(huán)境,具有一定的參考價值,感興趣的可以了解一下
    2024-04-04
  • Python中g(shù)etattr函數(shù)和hasattr函數(shù)作用詳解

    Python中g(shù)etattr函數(shù)和hasattr函數(shù)作用詳解

    這篇文章主要介紹了Python中g(shù)etattr函數(shù)和hasattr函數(shù)作用的相關(guān)知識,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • Python實現(xiàn)蟻群優(yōu)化算法的示例代碼

    Python實現(xiàn)蟻群優(yōu)化算法的示例代碼

    蟻群算法是一種源于大自然生物世界的新的仿生進化算法,本文主要介紹了Python如何實現(xiàn)蟻群算法,文中通過示例代碼具有一定的參考價值,感興趣的小伙伴們可以了解一下
    2023-08-08
  • python標(biāo)識符命名規(guī)范原理解析

    python標(biāo)識符命名規(guī)范原理解析

    這篇文章主要介紹了python標(biāo)識符命名規(guī)范原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • python3+requests接口自動化session操作方法

    python3+requests接口自動化session操作方法

    今天小編就為大家分享一篇python3+requests接口自動化session操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • PHP webshell檢查工具 python實現(xiàn)代碼

    PHP webshell檢查工具 python實現(xiàn)代碼

    Web安全應(yīng)急響應(yīng)中,不免要檢查下服務(wù)器上是否被上傳了webshell,手工檢查比較慢,就寫了個腳本來檢查了。Windows平臺下已經(jīng)有了lake2寫的雷克圖的了,一般的檢查也夠用了,寫了個Linux下面的,用python寫的。
    2009-09-09
  • 用python批量生成文件夾的實現(xiàn)方法舉例

    用python批量生成文件夾的實現(xiàn)方法舉例

    這篇文章主要介紹了使用Python腳本批量生成文件夾的方法,可以用于創(chuàng)建順序文件夾或嵌套文件夾,通過設(shè)置路徑和循環(huán),可以自動命名并創(chuàng)建文件夾,提高工作效率,需要的朋友可以參考下
    2025-03-03

最新評論

玉溪市| 德江县| 嘉鱼县| 平利县| 年辖:市辖区| 新田县| 长顺县| 佛山市| 桂平市| 武平县| 盐城市| 靖江市| 加查县| 色达县| 鄂州市| 咸丰县| 杭锦后旗| 奉节县| 静安区| 林芝县| 讷河市| 陈巴尔虎旗| 肇庆市| 曲周县| 福建省| 凤山市| 望都县| 洛宁县| 霍州市| 平山县| 孙吴县| 嵩明县| 江孜县| 平安县| 大姚县| 行唐县| 永川市| 且末县| 宝清县| 砀山县| 隆安县|