Signieren Sie PDF mit Stamp mithilfe der REST-API in Node.js

Die Stempelsignatur ermöglicht das elektronische Signieren von PDF Dokumenten auf die gleiche Weise, wie wir einen Gummi-Signaturstempel auf einem Papierdokument verwenden. Wir können PDF Dokumente programmgesteuert in der Cloud mit einer benutzerdefinierten Stempelsignatur signieren. In diesem Artikel erfahren Sie, wie Sie PDF Dokumente mithilfe einer REST-API in Node.js mit Stempelsignaturen signieren.

Die folgenden Themen sollen in diesem Artikel behandelt werden:

PDF Signature REST API und Node.js SDK

Zum Signieren von PDF Dokumenten verwenden wir die Node.js SDK der GroupDocs.Signature Cloud API. Es ermöglicht uns, verschiedene Arten von Signaturen wie Bild-, Barcode-, QR-Code-, textbasierte, digitale und Stempelsignaturen zu erstellen, zu überprüfen und zu durchsuchen. Bitte installieren Sie es mit dem folgenden Befehl in der Konsole:

npm install groupdocs-signature-cloud

Bitte holen Sie sich Ihre Kunden-ID und Ihr Geheimnis aus dem Dashboard, bevor Sie die genannten Schritte ausführen. Sobald Sie Ihre ID und Ihr Geheimnis haben, fügen Sie den Code wie unten gezeigt ein:

// Dieses Codebeispiel zeigt, wie Sie Ihre Client-ID und Ihr Geheimnis in den Code einfügen.
global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_signature_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Signieren Sie PDF Dokumente mit einer REST-API in Node.js

Wir können PDF Dokumente in der Cloud signieren, indem wir die folgenden einfachen Schritte befolgen:

Laden Sie das Dokument hoch

Zunächst laden wir das PDF Dokument mithilfe des unten angegebenen Codebeispiels in die Cloud hoch:

// Dieses Codebeispiel zeigt, wie eine PDF-Datei in die Cloud hochgeladen wird.
// Öffnen Sie die Datei in IOStream von lokal/disc.
var resourcesFolder = 'C:\\Files\\Signature\\sample.pdf';
fs.readFile(resourcesFolder, (err, fileStream) => {
  // Konstruieren Sie FileApi
  var fileApi = groupdocs_signature_cloud.FileApi.fromConfig(config);
  // Datei hochladen
  var request = new groupdocs_signature_cloud.UploadFileRequest("sample.pdf", fileStream, myStorage);
  fileApi.uploadFile(request);
});

Dadurch ist die hochgeladene PDF-Datei im Dateienbereich des Dashboards in der Cloud verfügbar.

Signieren Sie PDF Dokumente mit Stempelsignaturen mit Node.js

Wir können PDF Dateien programmgesteuert mit Stempelsignaturen signieren, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie eine Instanz der SignApi.
  • Geben Sie den Pfad der hochgeladenen PDF-Datei an.
  • Initialisieren Sie das SignDigitalOptions Objekt und legen Sie verschiedene Eigenschaften fest.
  • Definieren Sie Stempeltext mithilfe von StampLine Objekten.
  • Weisen Sie dem SignSettings Objekt die Eingabedatei, SignDigitalOptions und SaveOptions zu.
  • Signieren Sie abschließend das PDF mit der Methode SignApi.createSignatures().

Das folgende Codebeispiel zeigt, wie Sie mithilfe einer REST-API in Node.js ein PDF Dokument mit Stempelsignaturen signieren.

// Dieses Codebeispiel zeigt, wie man ein PDF Dokument mit Stempelsignaturen signiert.
// Erstellen Sie eine Instanz der API
let signApi = groupdocs_signature_cloud.SignApi.fromKeys(clientId, clientSecret);

// Pfad der Eingabedatei
let fileInfo = new groupdocs_signature_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// Definieren Sie Optionen für Schilderstempel
let opts = new groupdocs_signature_cloud.SignStampOptions();
opts.signatureType = groupdocs_signature_cloud.OptionsBase.SignatureTypeEnum.Stamp;

// Legen Sie die Position und Größe des Stempels auf einer Seite fest
opts.left = 200;
opts.top = 400;
opts.width = 300;
opts.height = 300;
opts.locationMeasureType = groupdocs_signature_cloud.SignTextOptions.LocationMeasureTypeEnum.Pixels;
opts.sizeMeasureType = groupdocs_signature_cloud.SignTextOptions.SizeMeasureTypeEnum.Pixels;
opts.rotationAngle = 0;
opts.horizontalAlignment = groupdocs_signature_cloud.SignTextOptions.HorizontalAlignmentEnum.None;
opts.verticalAlignment = groupdocs_signature_cloud.SignTextOptions.VerticalAlignmentEnum.None;

// Polsterung hinzufügen
opts.margin = new groupdocs_signature_cloud.Padding();
opts.margin.all = 5;
opts.marginMeasureType = groupdocs_signature_cloud.SignTextOptions.MarginMeasureTypeEnum.Pixels;

// Stellen Sie das Erscheinungsbild des Stempels ein
opts.backgroundFarbe = new groupdocs_signature_cloud.Farbe();
opts.backgroundFarbe.web = "DarkOrange";
opts.backgroundFarbeCropType = groupdocs_signature_cloud.SignStampOptions.BackgroundFarbeCropTypeEnum.OuterArea;
opts.backgroundImageCropType = groupdocs_signature_cloud.SignStampOptions.BackgroundImageCropTypeEnum.InnerArea;

// Definieren Sie das Erscheinungsbild des ersten Gliederungstextes
let outline1 = new groupdocs_signature_cloud.StampLine();
outline1.text = " * Electronically Signed by GroupDocs.Signature * ";
// Schriftart
outline1.font = new groupdocs_signature_cloud.SignatureSchriftart();
outline1.font.fontFamily = "Arial";
outline1.font.fontSize = 11;
outline1.font.bold = true;
outline1.textBottomIntent = 6;
// Farbe
outline1.textFarbe = new groupdocs_signature_cloud.Farbe();
outline1.textFarbe.web = "WhiteSmoke";
outline1.textRepeatType = groupdocs_signature_cloud.StampLine.TextRepeatTypeEnum.FullTextRepeat;
// Hintergrundfarbe
outline1.backgroundFarbe = new groupdocs_signature_cloud.Farbe();
outline1.backgroundFarbe.web = "DarkSlateBlue";
outline1.height = 22;
outline1.visible = true;

// Definieren Sie das Erscheinungsbild des zweiten Gliederungstextes
let outline2 = new groupdocs_signature_cloud.StampLine();
outline2.height = 2;
outline2.backgroundFarbe = new groupdocs_signature_cloud.Farbe();
outline2.backgroundFarbe.web = "White";
outline2.visible = true;

// Definieren Sie das Erscheinungsbild des 3. Gliederungstextes
let outline3 = new groupdocs_signature_cloud.StampLine();
outline3.text = " * GroupDocs.Signature * ";
// Schriftart
outline3.font = new groupdocs_signature_cloud.SignatureSchriftart();
outline3.font.fontFamily = "Arial";
outline3.font.fontSize = 16;
outline3.textBottomIntent = 8;
outline3.textRepeatType = groupdocs_signature_cloud.StampLine.TextRepeatTypeEnum.FullTextRepeat;
// Farbe
outline3.textFarbe = new groupdocs_signature_cloud.Farbe();
outline3.textFarbe.web = "DarkSlateBlue";
// Hintergrundfarbe
outline3.backgroundFarbe = new groupdocs_signature_cloud.Farbe();
outline3.backgroundFarbe.web = "White";
outline3.height = 30;
// Innenrand
outline3.innerBorder = new groupdocs_signature_cloud.BorderLine();
outline3.innerBorder.color = new groupdocs_signature_cloud.Farbe();
outline3.innerBorder.color.web = "DarkSlateBlue";
outline3.innerBorder.style = groupdocs_signature_cloud.BorderLine.StyleEnum.Dot;
outline3.innerBorder.weight = 1.2;
// Äußere Grenze
outline3.outerBorder = new groupdocs_signature_cloud.BorderLine();
outline3.outerBorder.color = new groupdocs_signature_cloud.Farbe();
outline3.outerBorder.color.web = "DarkSlateBlue";
outline3.outerBorder.weight = 1.4;
outline3.visible = true;

opts.outerLines = [outline1, outline2, outline3];

// Definieren Sie den ersten Inline-Text
let innerline = new groupdocs_signature_cloud.StampLine();
innerline.text = "GroupDocs";

innerline.font = new groupdocs_signature_cloud.SignatureSchriftart();
innerline.font.fontFamily = "Times New Roman";
innerline.font.fontSize = 20;
innerline.font.bold = true;
innerline.textFarbe = new groupdocs_signature_cloud.Farbe();
innerline.textFarbe.web = "MediumVioletRed";
innerline.textRepeatType = groupdocs_signature_cloud.StampLine.TextRepeatTypeEnum.None;
innerline.height = 40;
innerline.visible = true;

// Definieren Sie den zweiten Inline-Text
let innerline2 = new groupdocs_signature_cloud.StampLine();
innerline2.text = "Signature";

innerline2.font = new groupdocs_signature_cloud.SignatureSchriftart();
innerline2.font.fontSize = 20;
innerline2.font.bold = true;
innerline2.textFarbe = new groupdocs_signature_cloud.Farbe();
innerline2.textFarbe.web = "MediumVioletRed";
innerline2.textRepeatType = groupdocs_signature_cloud.StampLine.TextRepeatTypeEnum.None;
innerline2.height = 40;
innerline2.visible = true;

// Definieren Sie den dritten Inline-Text
let innerline3 = new groupdocs_signature_cloud.StampLine();
innerline3.text = "Cloud";

innerline3.font = new groupdocs_signature_cloud.SignatureSchriftart();
innerline3.font.fontSize = 20;
innerline3.font.bold = true;
innerline3.textFarbe = new groupdocs_signature_cloud.Farbe();
innerline3.textFarbe.web = "MediumVioletRed";
innerline3.textRepeatType = groupdocs_signature_cloud.StampLine.TextRepeatTypeEnum.None;
innerline3.height = 40;
innerline3.visible = true;

opts.innerLines = [innerline, innerline2, innerline3];

// Auf der Seite ist nicht angegeben, wo der Stempel angezeigt werden soll
opts.page = 1;

// Definieren Sie die Schildereinstellungen
let settings = new groupdocs_signature_cloud.SignSettings();
settings.fileInfo = fileInfo;
settings.options = [opts];
settings.saveOptions = new groupdocs_signature_cloud.SaveOptions();
settings.saveOptions.outputFilePath = "signedStamp_One_page.pdf";

// Signierungsanfrage erstellen
let request = new groupdocs_signature_cloud.CreateSignaturesRequest(settings);
// Signaturen erstellen
let response = await signApi.createSignatures(request);
console.log("Output file link: " + response.downloadUrl);
Signieren Sie PDF Dokumente mit Stempelsignaturen mit Node.js.

Signieren Sie PDF Dokumente mit Stempelsignaturen mit Node.js.

Laden Sie die signierte Datei herunter

Das obige Codebeispiel speichert die signierte PDF-Datei in der Cloud. Es kann mit dem folgenden Codebeispiel heruntergeladen werden:

// Dieses Codebeispiel zeigt, wie Sie eine signierte PDF-Datei aus der Cloud herunterladen.
// Konstruieren Sie FileApi
var fileApi = groupdocs_signature_cloud.FileApi.fromConfig(config);

// Download-Datei
let request = new groupdocs_signature_cloud.DownloadFileRequest("signedStamp_One_page.pdf", myStorage);
let response = await fileApi.downloadFile(request);

// In den Arbeitsordner verschieben
fs.writeFile("C:\\Files\\Signature\\signedStamp_One_page.pdf", response, "binary", function (err) { });

Versuchen Sie es online

Bitte probieren Sie das folgende kostenlose Online-Signaturtool für Dokumente aus, das mit der oben genannten API entwickelt wurde. https://products.groupdocs.app/signature/

Abschluss

In diesem Artikel haben wir gelernt:

  • wie man PDF Dokumente mit Stempelsignaturen signiert;
  • PDF-Datei in die Cloud hochladen;
  • So laden Sie eine signierte PDF-Datei aus der Cloud herunter.

Außerdem können Sie mithilfe der Dokumentation mehr über die GroupDocs.Signature Cloud API erfahren. Wir bieten auch einen Abschnitt API-Referenz an, mit dem Sie unsere APIs direkt über den Browser visualisieren und mit ihnen interagieren können. Bei Unklarheiten können Sie uns gerne im Forum kontaktieren.

Siehe auch