
PDF Dokumente gehören zu den am häufigsten verwendeten Dateiformaten für den Informationsaustausch. Sie haben in der Regel vertraulichen und rechtlichen Wert, wie z. B. ein Vertrag. Um die Integrität von Dateien zu gewährleisten und Fälschungen zu vermeiden, fügen wir digitale Signaturen hinzu. Dies stellt auch sicher, dass ein Dokument nicht von jemand anderem als seinem Autor geändert wurde, und bestätigt, dass der Autor derjenige ist, den wir erwarten, und nicht jemand anderes.
Eine digitale Signatur in einem PDF entspricht einer Tintenunterschrift auf einem Papierdokument, ist aber viel sicherer. Diese Information wird in ein Dokument eingefügt, und beliebte PDF-Lesegeräte können überprüfen, ob das Dokument von einer unbekannten Person geändert wurde. In diesem Artikel besprechen wir die Details, wie man PDF Dokumente online in PHP digital signiert.
- Greifen Sie mit dem cURL-Befehl auf die API zu
- Zugriff auf die API über PHP SDK
- Signaturfeld lesen
- Signaturfelder mit PHP hinzufügen
Greifen Sie mit dem cURL-Befehl auf die API zu
Unsere APIs basieren auf den Prinzipien der REST-Architektur, sodass sie auch über cURL-Befehle aufgerufen werden können. Bitte beachten Sie, dass unsere APIs nur autorisierten Personen zugänglich sind. Bevor Sie auf die APIs zugreifen können, müssen Sie daher zunächst das Aspose.Cloud-Dashboard besuchen und sich einfach anmelden, wenn Sie ein GitHub oder Google-Konto haben. Andernfalls klicken Sie auf die Schaltfläche Neues Konto erstellen und geben Sie die erforderlichen Informationen ein. Melden Sie sich nun mit Ihren Anmeldeinformationen beim Dashboard an, erweitern Sie den Abschnitt „Anwendungen“ im Dashboard und scrollen Sie nach unten zum Abschnitt „Client-Anmeldeinformationen“, um die Details zu Client-ID und Client-Geheimnis anzuzeigen.
Der nächste Schritt besteht nun darin, JSON Web Token (JWT) zu generieren, damit die APIs über die Eingabeaufforderung zugänglich sind. Dasselbe JWT-Token wird verwendet, um über cURL-Befehle auf APIs zuzugreifen.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4&client_secret=d87269aade6a46cdc295b711e26809af" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Zugriff auf die API über PHP SDK
Um unseren PHP-Kunden, die PDF Dateien programmgesteuert über PHP-Code verarbeiten möchten, die Arbeit zu erleichtern, haben wir das Aspose.PDF Cloud SDK für PHP entwickelt, das ein Wrapper um die Aspose.PDF Cloud API ist. Wir können dasselbe SDK verwenden, um digitale Signaturen zu verarbeiten und damit verbundene Vorgänge auszuführen. Das SDK steht zum Download bei Composer und GitHub zur Verfügung.
Wir werden nun die Schritte zur Installation von Aspose.PDF Cloud SDK für PHP über Composer besprechen. Wir wissen bereits, dass Composer für die Verwendung mit dem SDK und zur Verwaltung Ihrer Projektabhängigkeiten empfohlen wird. Nachdem wir den Composer auf Ihrem System konfiguriert haben, versuchen Sie, mit dem folgenden Befehl Aspose.PDF Cloud SDK für PHP zu installieren.
composer require aspose/pdf-sdk-php
Signaturfelder lesen
Mithilfe der API können Sie die Eigenschaften von Signaturfeldern lesen, die bereits in PDF Dokumenten vorhanden sind. Zum Lesen des Signaturfelds stehen Ihnen zwei Optionen zur Verfügung.
- Lesen Sie die Signaturfelder von der jeweiligen Seite des Dokuments mithilfe der API GetPageSignatureFields
- Lesen Sie das Signaturfeld eines Dokuments anhand des Namens mit der API GetSignatureField
Um die Signaturfelder von einer bestimmten Seite des Dokuments zu lesen, versuchen Sie es mit dem folgenden cURL-Befehl. Bitte beachten Sie, dass im folgenden Befehl BlankWithSignature.pdf die Quell-PDF-Datei ist:
curl -X GET "https://api.aspose.cloud/v3.0/pdf/BlankWithSignature.pdf/page/1/fields/signature" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
Um nun die mit einem bestimmten Signaturfeld im Dokument verknüpften Eigenschaften zu lesen, versuchen Sie es mit dem folgenden Befehl, bei dem wir den Namen eines bestimmten Signaturfelds als Argument angeben.
curl -X GET "https://api.aspose.cloud/v3.0/pdf/BlankWithSignature.pdf/fields/signature/Signature1" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
Die unten angegebenen Details und Schritte erklären, wie wir mithilfe von PHP-Code Signaturfelddetails von bestimmten Seiten von PDF Dokumenten abrufen können.
protected $pdfApi;
// Holen Sie sich den App-Schlüssel und die App-SID von https://dashboard.aspose.cloud/
$appSid = '';
$appKey = '';
$host = 'https://api.aspose.cloud/v3.0';
// Konfigurationsobjekt
$this->config = new Configuration();
$this->config->setAppKey($appKey);
$this->config->setAppSid($appSid);
$this->config->setHost($host);
// PdfApi-Instanz erstellen
$this->pdfApi = new PdfApi(null, $this->config);
// Name des eingegebenen PDF Dokuments
$name = 'BlankWithSignature.pdf';
// Laden Sie die Datei in den Cloud-Speicher hoch
$this->uploadFile($name);
// Seitenzahl im Dokument
$pageNumber = 1;
// Rufen Sie die API-Methode auf, um Signaturfelder aus dem Dokument abzurufen
$response = $this->pdfApi->getPageSignatureFields($name, $pageNumber, null, $this->tempFolder);
$this->assertEquals(200, $response->getCode());
Der angegebene Code zeigt, wie Informationen zu bestimmten Signaturfeldern innerhalb der PDF-Datei abgerufen werden können.
protected $pdfApi;
// Holen Sie sich den App-Schlüssel und die App-SID von https://dashboard.aspose.cloud/
$appSid = '';
$appKey = '';
$host = 'https://api.aspose.cloud/v3.0';
// Konfigurationsobjekt
$this->config = new Configuration();
$this->config->setAppKey($appKey);
$this->config->setAppSid($appSid);
$this->config->setHost($host);
// PdfApi-Instanz erstellen
$this->pdfApi = new PdfApi(null, $this->config);
// Name des eingegebenen PDF Dokuments
$name = 'BlankWithSignature.pdf';
// PDF in den Cloud-Speicher hochladen
$this->uploadFile($name);
// Signaturfeld zum Abrufen von Informationen
$fieldName = 'Signature1';
// Rufen Sie die API auf, um Signaturfelddetails abzurufen
$response = $this->pdfApi->getSignatureField($name, $fieldName, null, $this->tempFolder);
$this->assertEquals(200, $response->getCode());
Signaturfelder mit PHP hinzufügen
Aspose.PDF Cloud SDK für PHP bietet auch die Möglichkeit, Signaturfelder zu PDF Dokumenten hinzuzufügen. Mit dem unten angegebenen Codeausschnitt können Sie das Signaturfeld zur PDF-Datei hinzufügen.

protected $pdfApi;
// Holen Sie sich den App-Schlüssel und die App-SID von https://dashboard.aspose.cloud/
$appSid = '';
$appKey = '';
$host = 'https://api.aspose.cloud/v3.0';
// Konfigurationsobjekt
$this->config = new Configuration();
$this->config->setAppKey($appKey);
$this->config->setAppSid($appSid);
$this->config->setHost($host);
// PdfApi-Instanz erstellen
$this->pdfApi = new PdfApi(null, $this->config);
// Name des eingegebenen PDF Dokuments
$name = 'BlankWithSignature.pdf';
// Datei in den Cloud-Speicher hochladen
$this->uploadFile($name);
$signatureFileName = '33226.p12';
$this->uploadFile($signatureFileName);
$folder = $this->tempFolder;
$signature = new Aspose\PDF\Model\Signature();
$signature->setAuthority('Nayyer Shahbaz');
$signature->setContact('nayyer.shahbaz@aspose.com');
$signature->setDate('08/01/2012 12:15:00.000 PM');
$signature->setFormFieldName('Signature1');
$signature->setLocation('Australia');
$signature->setPassword('sIikZSmz');
$signature->setRectangle(new Aspose\PDF\Model\Rectangle(['llx' => 100, 'lly' => 100, 'urx' => 0, 'ury' => 0]));
$signature->setSignaturePath($folder . '/' . $signatureFileName);
$signature->setSignatureType(Aspose\PDF\Model\SignatureType::PKCS7);
$signature->setVisible(true);
$signature->setShowProperties(false);
$field = new Aspose\PDF\Model\SignatureField();
$field->setPartialName('sign1');
// Seitenindex, in dem ein Signaturfeld hinzugefügt werden muss
$field->setPageIndex(1);
$field->setSignature($signature);
// Geben Sie den rechteckigen Bereich für das Signaturfeld an
$field->setRect(new Aspose\PDF\Model\Rectangle(['llx' => 100, 'lly' => 100, 'urx' => 160, 'ury' => 140]));
// Rufen Sie die API auf, um ein Signaturfeld hinzuzufügen
$response = $this->pdfApi->postSignatureField($name, $field, null, $this->tempFolder);
$this->assertEquals(200, $response->getCode());
Abschluss
In diesem Blog haben wir die Konzepte der Arbeit mit digitalen Signaturen in PDF Dokumenten besprochen. Wir haben gelernt, wie man die Informationen zu vorhandenen Signaturfeldern abruft und wie man neue Signaturfelder in das Dokument einfügt. Bitte beachten Sie, dass Aspose.PDF Cloud SDK für PHP Open Source ist und der vollständige Quellcode aus dem GitHub-Repository heruntergeladen werden kann.
Bitte versuchen Sie, unsere APIs zu verwenden. Falls Sie auf ein Problem stoßen, können Sie uns jederzeit über die kostenlosen Kundensupport-Foren kontaktieren.