PNG JPG BMP TIFF PDF
Aspose.PDF  for PHP

PHP SDK で PDF の署名を置換

クラウド PHP SDK を使用して PDF ドキュメントの署名を置換

Get Started

クラウド PHP SDK を使用して PDF の署名を置換する方法

PDF の署名を置換するには、次のものを使用します Aspose.PDF Cloud PHP SDK このクラウド SDK は、PHP プログラマーが Aspose.PDF REST API を介してクラウドベースの PDF 作成、注釈、編集、および変換アプリを PHP プログラミング言語で開発するのを支援します。Aspose for Cloud でアカウントを作成し、アプリケーション情報を取得するだけです。App SID & キーを取得したら、Aspose.PDF Cloud PHP SDK をお試しください。

パッケージ マネージャー コンソール コマンド

     
    composer install

クラウド PHP を使用して PDF の署名を置換する手順

Aspose.PDF Cloud 開発者は、わずか数行のコードで PDF 内の署名を簡単にロードおよび置換できます。

  1. PDF ドキュメントをアップロード
  2. Aspose.PDF クラウド ストレージから適用されている署名付きの PDF ドキュメントをダウンロードします。
  3. 指定された署名を PDF ドキュメントに適用します。
 

PHP を使用して PDF の署名を置換


    require __DIR__.'\..\..\vendor\autoload.php';

    use Aspose\PDF\Configuration;
    use Aspose\PDF\Api\PdfApi;

    $config = [
        'LOCAL_FOLDER' => "C:\\Samples\\",
        'PDF_DOCUMENT_NAME' => "sample.pdf",
        'LOCAL_RESULT_DOCUMENT_NAME' => "output_sample.pdf",
        'LOCAL_SIGNATURE_PATH' => "C:\\Samples\\Signatures\\3",
        'SIGNATURE_PFX' => "signature.pfx",
        'SIGNATURE_FORM_FIELD' => 'Signature_1',
        'SIGNATURE_PASSWORD' => 'Password',
        'SIGNATURE_CONTACT' => 'Contact',
        'SIGNATURE_LOCATION' => 'Location',
        'SIGNATURE_AUTHORITY' => 'Issuer',
        'SIGNATURE_DATE' => '04/19/2025 12:15:00.000 PM',
        'SIGNATURE_RECT' => new Aspose\PDF\Model\Rectangle(array('llx' => 100, 'lly' => 100, 'urx' => 0, 'ury' => 0))
    ];

    class PdfSignatures {
        private $pdfApi;
        private $config;

        private function _create_rest_api() {
            $credentials = json_decode(file_get_contents("./Credentials/credentials.json"), true);

            $configAuth = new Configuration();
            $configAuth->setAppKey($credentials['key']);
            $configAuth->setAppSid($credentials['id']);

            $this->pdfApi = new PdfApi(null, $configAuth);
        }

        public function __construct($config) {
            $this->config = $config;
            $this->_create_rest_api();
        }

        public function uploadFile($folder, $fileName) {
            $filePath = $folder . DIRECTORY_SEPARATOR . $fileName;
            $data = file_get_contents($filePath);
            $this->pdfApi->uploadFile($fileName, $data);
            echo "File '$fileName' successfully uploaded!\n";
        }

        public function uploadDocument() {
            $this->uploadFile($this->config['LOCAL_FOLDER'], $this->config['PDF_DOCUMENT_NAME']);
        }

        public function downloadResult() {
            $response = $this->pdfApi->downloadFile($this->config['PDF_DOCUMENT_NAME']);
            $filePath = $this->config['LOCAL_FOLDER'] . DIRECTORY_SEPARATOR . $this->config['LOCAL_RESULT_DOCUMENT_NAME'];
            file_put_contents($filePath, $response->body);
            echo "Downloaded: $filePath\n";
        }

        public function replaceSignature() {
            $signature = new \Aspose\PDF\Model\Signature( array(
                'authority'=> $this->config['SIGNATURE_AUTHORITY'],
                'contact' => $this->config['SIGNATURE_CONTACT'],
                'date' => $this->config['SIGNATURE_DATE'],
                'form_field_name' => $this->config['SIGNATURE_FORM_FIELD'],
                'location' => $this->config['SIGNATURE_LOCATION'],
                'password' => $this->config['SIGNATURE_PASSWORD'],
                'rectangle' => $this->config['SIGNATURE_RECT'],
                'signature_path' => $this->config['SIGNATURE_PFX'],
                'signature_type' => \Aspose\PDF\Model\SignatureType::PKCS7,
                'visible' => TRUE )
            );

            $field = new \Aspose\PDF\Model\SignatureField( array(
                'page_index' => 1,
                'signature' => $signature,
                'partial_name' => 'sign1',
                'rect' => $this->config['SIGNATURE_RECT'])
            );

            $response = $this->pdfApi->putSignatureField(
                $this->config['PDF_DOCUMENT_NAME'],
                $this->config['SIGNATURE_FORM_FIELD'],
                $field
            );

            if ($response->code === 200) {
                echo "replaceSignature(): Signature '" . $this->config['SIGNATURE_CONTACT'] . "' successfully replaced.\n";
            } else {
                echo "replaceSignature(): Failed to replace signature. Code: " . $response->code . "\n";
            }
        }
    }

    try {
        $signatures = new PdfSignatures($pdfApi, $configParams);
        $signatures->uploadFile($configParams['LOCAL_SIGNATURE_PATH'], $configParams['SIGNATURE_PFX']);
        $signatures->uploadDocument();
        $signatures->replaceSignature();
        $signatures->downloadResult();
    } catch (Exception $e) {
        echo "Error: " . $e->getMessage() . "\n";
    }
 

PDF の署名を扱う

PDF の署名を置換する必要があるのは、元の署名が古くなった、不正確である、または無効になった場合です。このプロセスにより、ドキュメントが最も正確で承認された情報を反映するようになります。置換の一般的な理由としては、署名者の資格情報の更新、署名詳細のエラーの修正、ドキュメント変更後の再署名、またはセキュリティとコンプライアンスを強化するためのより強力なデジタル証明書への切り替えなどがあります。署名を置換することで、ドキュメントの信憑性、完全性、および法的有効性を維持するのに役立ちます。 Aspose.PDF Cloud PHP SDK を使用して、PDF ドキュメントの署名を置換します。

私たちの PHP ライブラリを使用すると、次のことができます:

  • テキストまたは画像形式で PDF ドキュメントのヘッダーとフッターを追加。
  • PDF ドキュメントにテーブルやスタンプ(テキストまたは画像)を追加。
  • 複数の PDF ドキュメントを既存のファイルに追加。
  • PDF 添付ファイル、注釈、およびフォームフィールドを扱います。
  • PDF ドキュメントに暗号化または復号化を適用し、パスワードを設定します。
  • ページまたは PDF ドキュメント全体からすべてのスタンプとテーブルを削除。
  • PDF ドキュメントから特定のスタンプまたはテーブルを ID で削除。
  • PDF ページまたはドキュメント全体からテキストの単一または複数のインスタンスを置換。
  • PDF ドキュメントをさまざまな他のファイル形式に変換するための広範なサポート。
  • PDF ファイルのさまざまな要素を抽出し、PDF ドキュメントを最適化します。
  • 無料アプリ を試して、オンラインで機能をテストできます。