编辑 PDF 文件
PDF 文件因其安全可靠的格式而常用于共享文档,例如法律合同、财务报表或医疗记录。但是,这些文件也可能包含需要保密的敏感信息。如果您需要共享包含敏感数据的 PDF 文件,则编辑是保护它的最佳方法。编辑是从文档中删除或涂黑敏感信息同时保持其余内容完整的过程。在这篇博文中,我们将向您展示如何使用 Python 编辑 PDF 文件。

PDF处理API

Aspose.PDF Cloud SDK for Python 是一款出色的在线编辑 PDF 文件的工具。它是一款基于云的 REST API,提供各种处理 PDF 文档的功能,例如创建、转换和操作 PDF 文件。使用此 SDK,您可以轻松地在线编辑 PDF 文件中的敏感信息,而无需在计算机上安装任何其他软件。

与传统修订方法相比,它具有多项优势。例如,API 的修订功能比手动修订更快、更准确。它还可确保将敏感信息永久从文档中删除,从而防止未经授权访问这些信息。

现在第一步是安装 SDK,可以通过 PIPGitHub 存储库下载。请在终端中执行以下命令完成安装。

pip install asposepdfcloud

PyCharm IDE

如果您正在使用 PyCharm IDE,您可以直接将 SDK 作为依赖项添加到您的项目中。

文件 ->设置 ->项目 ->Python 解释器 ->asposepdfcloud

标题

Image 1:- PyCharm settings option.

Aspose.PDF Python 包

图2:- Aspose.Pdf Cloud Python 包。

安装完成后,下一步是从 仪表板 获取客户端凭据。如果您没有帐户,只需使用 创建新帐户 选项注册即可。

使用 Python 编辑 PDF

请按照以下说明使用 Python 代码片段编辑 PDF 内容:

  • 通过传递客户端凭据作为参数来创建 ApiClient 的实例。
  • 现在初始化 PdfApi,同时传递 ApiClient 对象作为参数。
  • 创建一个RedactionAnnotation对象,并调用PdfApi的postpageredactionannotations(..)方法来完成我们的要求。
def redactPDF():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # 创建 PdfApi 实例并传递 PdfApiClient 作为参数
        pdf_api = PdfApi(pdf_api_client)

        # 输入 PDF 文件
        input_file = 'marketing.pdf'

        # 创建 RedactAnnotation 类的实例
        redactAnnotation = asposepdfcloud.models.RedactionAnnotation() 
        redactAnnotation.contents = 'Confidential'

        # 设置注释对象的颜色细节
        redactAnnotation.color = asposepdfcloud.Color(a = 0, r = 66, g = 111, b = 245)

        # 设置注释的修改日期
        redactAnnotation.modified = '01/01/2018 12:00:00.000 AM'
        redactAnnotation.id = 1

        # 将注释标志设置为默认值
        redactAnnotation.flags = [asposepdfcloud.models.AnnotationFlags.DEFAULT]
        redactAnnotation.name = 'redactName'

        # 指定页面上注释的矩形区域
        redactAnnotation.rect = asposepdfcloud.models.Rectangle(llx = 20, lly = 700, urx = 220, ury = 650 )
        redactAnnotation.page_index = 1

        # 注释的 ZIndex 因子
        redactAnnotation.z_index = 1

        # 将垂直和水平对齐设置为中心
        redactAnnotation.horizontal_alignment = asposepdfcloud.models.HorizontalAlignment.CENTER
        redactAnnotation.vertical_alignment = asposepdfcloud.models.HorizontalAlignment.CENTER
        
        # 编辑注释的点详细信息
        redactAnnotation.quad_point =  [
            asposepdfcloud.models.Point(5, 40),
            asposepdfcloud.models.Point(10, 60)
            ]

        # 注释填充颜色详细信息
        redactAnnotation.fill_color = asposepdfcloud.Color(a = 10, r = 50, g = 168, b = 182)

        # 在修订注释上打印的覆盖文本
        redactAnnotation.overlay_text = 'Confidential Data'

        # 重复注释发生
        redactAnnotation.repeat = True

        # 将文本对齐信息设置为左对齐
        redactAnnotation.text_alignment = asposepdfcloud.models.HorizontalAlignment.LEFT 

        # 调用 API 为文档第一页添加修订注释
        response = pdf_api.post_page_redaction_annotations(name = input_file, page_number= 1, annotations= [redactAnnotation])
        
        # 在控制台中打印响应代码
        print(response)

        # 在控制台中打印消息(可选)
        print('Redaction Annotation successfully added to PDF document !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)

使用 cURL 命令遮盖 PDF 内容

借助 cURL 命令和 Aspose.PDF Cloud,编辑 PDF 文件变得比以往更加简单。Aspose.PDF Cloud 是一个 RESTful API,可以与多种编程语言一起使用,包括 cURL 命令。您可以通过涂黑文本或完全删除文本,轻松编辑 PDF 文件中的敏感信息。该 API 安全、可靠且可扩展,是各种规模企业的理想选择。

现在第一步是执行以下命令来生成accessToken。

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=88d1cda8-b12c-4a80-b1ad-c85ac483c5c5&client_secret=406b404b2df649611e508bbcfcd2a77f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

获得accessToken后,请执行以下命令,对PDF文档中指定矩形区域(“LLX”:20,“LLY”:700,“URX”:220,“URY”:650)处的信息进行屏蔽。操作成功后,生成的文件将保存到云存储中。

curl -v -X POST "https://api.aspose.cloud/v3.0/pdf/{inputPDF}/pages/1/annotations/redaction?apply=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer {accessToken}" \
-H  "Content-Type: application/json" \
-d "[  {    \"Color\": {      \"A\": 0,      \"R\": 158,      \"G\": 50,      \"B\": 168    },    \"Contents\": \"Confidential\",    \"Modified\": \"01/18/2022 12:00:00.000 AM\",    \"Id\": \"1\",    \"Flags\": [      \"Default\"    ],    \"Name\": \"Name\",    \"Rect\": {      \"LLX\": 20,      \"LLY\": 700,      \"URX\": 220,      \"URY\": 650    },    \"PageIndex\": 1,    \"ZIndex\": 1,    \"HorizontalAlignment\": \"CENTER\",    \"VerticalAlignment\": \"CENTER\",    \"QuadPoint\": [      {        \"X\": 5,        \"Y\": 10      }    ],    \"FillColor\": {      \"A\": 10,      \"R\": 50,      \"G\": 168,      \"B\": 182    },    \"BorderColor\": {      \"A\": 10,      \"R\": 168,      \"G\": 50,      \"B\": 141    },    \"OverlayText\": \"Sensitive data\",    \"Repeat\": true,    \"TextAlignment\": \"Left\"  }]"

{inputPDF} 替换为云存储中可用的 PDF 文件的名称,将 {accessToken} 替换为上面生成的访问令牌。

结论

总之,编辑 PDF 文件是保护敏感信息免遭泄露的关键任务。无论您选择使用 Python 还是 Aspose.PDF Cloud 的 cURL 命令,该过程都变得更简单、更高效。因此,无论您是法律专业人士、医生还是财务分析师,学习如何使用 Python 编辑 PDF 文件都可以帮助您保护您的机密信息并遵守数据保护法规。

有用的链接

-免费产品支持论坛

推荐文章

我们强烈建议您阅读以下文章来了解: