簡體   English   中英

如何檢查 Python 中的 PDF 頁面是否着色?

[英]How to check the PDF page is coloured or not in Python?

我有包含 N 頁數的 PDF。 我如何計算彩色和非彩色(黑白)頁面。

示例:如果我給 100 頁 PDF 文件作為輸入,它應該說 X 頁是彩色的,y 頁是非彩色的。

您可以將 PDF 轉換為圖像(例如使用 pdf2image),然后分析不同的通道。 例如,使用 HSV,如果頁面僅包含黑白,則 H 和 S 通道應為 0 或接近 0。

import pdf2image
import numpy as np

images = convert_from_path('example.pdf')
sw=0
color=0
for image in images:
    img = np.array(image.convert('HSV'))
    hsv_sum = img.sum(0).sum(0)
    if hsv_sum[0] == 0 and hsv_sum[1] == 0:
        sw += 1
    else:
        color += 1

給我 sw=1 和 color=1 例如 pdf 一個站點黑色文本和一側紅色文本,每個在白色背景上。

如果背景不是全白且文本全黑(例如掃描的 PDF),您可能需要搜索小於部分像素的 hsv_sum[0:1]。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM