C# で PDF ファイルの領域を編集する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

PDF ドキュメント内の機密情報を編集することは、プライバシーを確保し、データ保護規制に準拠するために不可欠です。 IronSecure Doc の [POST] Redact Region API は、真の編集機能を使用して PDF ドキュメントの特定の領域内の機密テキストと情報を非表示にする効率的な方法を提供します。 この API により、編集されたデータが完全に削除され、回復できないことが保証されるため、法律、財務、または個人の文書内の機密情報の処理に最適です。

IronSecureDoc をプルして起動する

IronSecureDoc をまだ実行していない場合は、以下のリンクに従ってセットアップしてください。

ローカルでホスト クラウドへのデプロイ

[POST] Redact Region API

[POST] Redact Region API エンドポイントを使用すると、真の編集機能を使用して PDF ドキュメントの特定の領域内の機密情報を非表示にすることができます。 この機能は、法的契約、医療記録、財務諸表などの機密文書を管理するアプリケーションにとって非常に重要です。 この API を活用することで、PDF の定義された領域内の機密テキストが完全に削除され、セキュリティとコンプライアンスの両方が確保されます。

ご注意領域が編集されると、その領域内のコンテンツを回復することはできません。

Swaggerで試してみる

Swagger は、開発者がユーザーフレンドリーな Web インターフェースを通じて RESTful API と対話できるようにする強力なツールです。 Python、Java などの言語を使用している場合でも、Swagger を使用すると、この API をテストおよび実装する便利な方法が得られます。

Swaggerを使用して領域を編集する手順

  1. Swagger UI にアクセスします。

    API サーバーがローカルで実行されている場合は、Web ブラウザーでhttp://localhost:8080/swagger/index.htmlに移動して Swagger にアクセスできます。

! Swaggerドキュメント

  1. [POST] Redact Region APIを見つけます。

    Swagger UI 内で、[POST] /v1/document-services/pdfs/redact-region エンドポイントを見つけます。

領域を削除する

3.編集座標を指定します。

この例では、PDF のページ インデックス 1 (つまり、ページ #2) から表を削除します。 次の座標を使用して編集領域を定義します。

  • ページインデックス(specific_pages): 1
  • X座標(region_to_redact_x): 60
  • Y座標(region_to_redact_y): 270
  • 幅(region_to_redact_w): 470
  • 高さ (region_to_redact_h): 200

4.オプションパラメータを設定する:

オプションで、ユーザーまたは所有者のパスワードを追加したり、特定のページを指定したり、編集された領域の上に黒いボックスを描画して PDF/A または PDF/UA 準拠でドキュメントを保存するかどうかを決定したりできます。

入力スワガー

5.サンプルPDFをアップロードします。

リクエスト本文で、編集を適用するサンプル PDF ファイルをアップロードします。 ファイルがpdf_fileとして追加されていることを確認します。

6.リクエストを実行します。

"実行"をクリックしてリクエストを実行します。レスポンスには、指定どおりにページインデックス1から表が削除された、編集済みのPDFが含まれます。

Response

この Swagger UI インタラクションを使用すると、編集プロセスを簡単にテストでき、座標が PDF コンテンツにどのように影響するかについてのフィードバックを即座に得ることができます。

7.出力されたPDFを確認します。

編集された領域は 2 ページ目にあります。


入力パラメータの理解

この API を使用する前に、PDF 内の領域を編集するために必要な入力パラメータとオプションの入力パラメータを理解しておくことが重要です。 これらのパラメータは、編集する特定の領域を定義するのに役立ちます。

主なパラメータ

  • pdf_file:編集する PDF ドキュメント。
  • region_to_redact_x:編集する領域の X 座標 (ページの左下から開始)。
  • region_to_redact_y:編集する領域の Y 座標 (ページの左下から開始)。
  • region_to_redact_w:編集する領域の幅。
  • region_to_redact_h:編集する領域の高さ。

オプションパラメータ

  • user_password: PDF がパスワードで保護されている場合は、ユーザー パスワードを入力します。
  • owner_password:変更が制限されている場合は、所有者のパスワードを入力します。
  • specific_pages:編集するページを指定します。 指定しない場合は、編集はすべてのページに適用されます。
  • save_as_pdfa: PDF/A-3 準拠で PDF を保存します。
  • save_as_pdfua: PDF/UA 準拠で PDF を保存します。

API統合: Pythonの例

パラメータに慣れたら、好みのプログラミング言語を使用してこの API を呼び出すことができます。 以下は、Python を使用してこの API を統合する方法の例です。

import requests

# Define the API endpoint URL
url = 'http://localhost:8080/v1/document-services/pdfs/redact-region'

# Set the headers for the request (optional relevant metadata)
headers = {
    'accept': '*/*',
    'author': 'Iron Software',
    'title': 'REDACT REGION DEMO 2024',
    'subject': 'DEMO EXAMPLE'
}

# Open the PDF file to be redacted in binary read mode
files = {
    'pdf_file': ('sample_file.pdf', open('sample_file.pdf', 'rb'), 'application/pdf')
}

# Define the coordinates and page for the redaction region
data = {
    'region_to_redact_x': '60',  # X-coordinate starting at the bottom-left
    'region_to_redact_y': '270', # Y-coordinate starting at the bottom-left
    'region_to_redact_w': '470', # Width of the region to be redacted
    'region_to_redact_h': '200', # Height of the region to be redacted
    'specific_pages': [1]        # Specify the page index to redact
}

# Make the POST request to the API with the provided parameters and file
response = requests.post(url, headers=headers, files=files, data=data)

# Save the redacted PDF response to a new file
with open('redacted_output.pdf', 'wb') as f:
    f.write(response.content)

print('PDF redacted successfully.')
import requests

# Define the API endpoint URL
url = 'http://localhost:8080/v1/document-services/pdfs/redact-region'

# Set the headers for the request (optional relevant metadata)
headers = {
    'accept': '*/*',
    'author': 'Iron Software',
    'title': 'REDACT REGION DEMO 2024',
    'subject': 'DEMO EXAMPLE'
}

# Open the PDF file to be redacted in binary read mode
files = {
    'pdf_file': ('sample_file.pdf', open('sample_file.pdf', 'rb'), 'application/pdf')
}

# Define the coordinates and page for the redaction region
data = {
    'region_to_redact_x': '60',  # X-coordinate starting at the bottom-left
    'region_to_redact_y': '270', # Y-coordinate starting at the bottom-left
    'region_to_redact_w': '470', # Width of the region to be redacted
    'region_to_redact_h': '200', # Height of the region to be redacted
    'specific_pages': [1]        # Specify the page index to redact
}

# Make the POST request to the API with the provided parameters and file
response = requests.post(url, headers=headers, files=files, data=data)

# Save the redacted PDF response to a new file
with open('redacted_output.pdf', 'wb') as f:
    f.write(response.content)

print('PDF redacted successfully.')
PYTHON

このコードは次の手順を実行します。

  • PDF をロード:編集する PDF ファイルがローカル ファイル システムからロードされます。 -編集パラメータの設定:編集する座標 (X、Y)、幅、高さ、および特定のページを指定します。
  • API を呼び出す: [POST] Redact Region API が呼び出され、必要なパラメータが渡されます。 -結果を保存する:編集された PDF が新しいファイルとして保存されます。

指定された領域は以下のように編集されます。

編集された出力

よくある質問

PDFファイル内の特定の領域をどのように編集できますか?

IronSecureDocの[POST]領域編集APIを使用してPDFファイル内の特定の領域を編集できます。編集領域の座標と寸法を指定することで、APIは機密情報がドキュメントから永久に削除されることを保証します。

IronSecureDocのAPIを編集のために設定するにはどのような手順が必要ですか?

IronSecureDocのAPIを編集のために設定するには、Dockerイメージをプル&スタートし、Swaggerを使用してAPIを設定し、編集のパラメータを指定し、PDFドキュメントの領域を編集するためのAPI呼び出しを実行する必要があります。

IronSecureDocはクラウドプラットフォームで使用できますか?

はい、IronSecureDocはAzureやAWSといったクラウドプラットフォームにデプロイでき、スケーラブルで柔軟な編集ソリューションを提供します。

IronSecureDocを使用してPDFのどの領域を編集するかをどのように指定しますか?

IronSecureDocを使用して編集する領域を指定するには、編集対象となる領域のX座標とY座標、幅、高さを提供する必要があります。これらのパラメータがPDFページ上の正確なエリアを定義します。

完全な実装前に編集プロセスをテストする方法はありますか?

はい、IronSecureDoc APIサーバーをローカルで実行し、Swaggerを使用してAPIと対話することで編集プロセスをテストできます。これにより、編集パラメータを実験して出力を検証し、フルスケールの実装前に確認できます。

どのプログラミング言語をIronSecureDoc APIと統合するために使用できますか?

IronSecureDoc APIは、Python、Java、C#、その他のHTTPリクエストを行うことのできる任意のプログラミング言語と統合することができます。

PDFの真の編集とは何であり、なぜ重要ですか?

PDFの真の編集は、機密データが隠されるだけでなく、ドキュメントから完全に削除されることを保証します。これは、機密保持を維持し、データ保護規制を遵守するために重要です。

IronSecureDocはPDFのコンプライアンス標準をサポートしていますか?

はい、IronSecureDocを使用して編集したPDFを保存する際に、PDF/A-3やPDF/UAなどの標準に準拠することができ、特定のドキュメント要件を満たすことができます。

IronSecureDocは編集のためにパスワード保護されたPDFを処理できますか?

はい、IronSecureDocは、編集プロセス中に必要なユーザーパスワードとオーナーパスワードを任意のパラメータとして提供することにより、パスワード保護されたPDFを処理できます。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Version: 2024.10 リリース