Der für eine Signatur freigehaltene Platz

Eine Stelle auf der Seite freihalten, an der eine elektronische Signatur Platz nimmt, mit ihrem Namen und ihrem Rahmen.

In einem echten PDF ansehen

Ein erhaltener und ergänzter Vertrag, ohne dass sich ein Byte verschoben hat

Ein Wartungsvertrag, den jemand anderes geschickt hat, mit einem Unterschriftsbereich, einem Datum und einer eigenen Zeile über seiner letzten Seite, einem danach angefügten Anhang und einer leeren Unterschriftsstelle über dem Unterschriftsbereich, wobei jedes Byte des Vertrags an seinem Platz bleibt.

Das PDF öffnen Das vollständige Beispiel ansehen

Auch zu sehen in: Ein zweiseitiger Dienstleistungsvertrag · Ein interaktives Formular

Zusammenfassung

Am Fuß eines Vertrags wird ein benannter Platz freigehalten und umrahmt, bereit für das Siegel, das später darin Platz nimmt. Dieser Platz ist alles, was hiermit gezeichnet wird, und er ist bereits das, worauf es einem Absender meist ankommt: ein unterschriftsreifer Vertrag, an einen Kunden geschickt, der ihn mit der Software versiegelt, die er täglich nutzt. Das Versiegeln ist der nächste Schritt, und was eine Signatur beweist — und wer den Signaturschlüssel besitzt, mit dem sie erstellt wird —, hat eine eigene Seite.

Technisch

Angefordert mit "type": "signature_field"

Das Feld ist ein leeres Feld /FT /Sig mit seiner /Widget-Annotation, benannt, sein Wert dem Unterzeichner überlassen, über das gelegt, was die anderen Elemente gezeichnet haben. Das Formular-Dictionary hat /SigFlags auf SignaturesExist gesetzt; so kündigt die Anzeigesoftware ein Dokument als eines mit Unterschriftsstelle an, und die Erzeugung zeichnet vom Widget, was der Rahmen verlangt. Die Anfrage gibt seinen Namen, sein Rechteck und die von jedem Feld geteilten Einstellungen an; das Zertifikat, der Zeitstempel und das signierte Aussehen kommen danach in die Datei, eingesetzt von dem, was sie versiegelt.

Anfrageschema

Erforderliche Schlüssel: name, eine Zeichenkette; rect. Optional: locks, was das Signieren einfriert: fields, entweder all, jedes Feld des Formulars und der Standard, oder eine Menge von Namen, geschrieben {"only": […]} oder {"all_but": […]}; und permits, was nach dem Signieren erlaubt bleibt, einer der Werte no_changes, form_filling (das Formular darf weiter ausgefüllt werden) oder annotating, ein Eintrag, der mit PDF 2.0 kam und daher "version": "2.0" erfordert. Optional, von jedem Feld geteilt: read_only, required, no_export, boolesche Werte, standardmäßig false; background, die Farbe dahinter; border, ein Objekt mit erforderlichem width, einer color (standardmäßig Schwarz, als Lichtfarbe angegeben) und einem style aus "solid" (Standard), {"dashed": {"lengths": …}}, "beveled", "inset" oder "underline"; tooltip und description, Zeichenketten, fehlen sie, wird kein solcher Eintrag geschrieben; mapping_name, eine Zeichenkette, der Name, unter dem ein gesendetes Formular das Feld meldet; flags, das auf der Seite des Textfelds beschriebene Flag-Wort, fehlt es, wird das Feld gedruckt und sonst nichts gesagt; triggers, eine Aktion pro Zeitpunkt, die zehn auf der Seite des Textfelds aufgeführten; pages, ein Array von ab eins gezählten Ganzzahlen, standardmäßig leer; relative_to. Gegenseitige Ablehnung: eine CMYK-Farbe oder eine Farbe eines benannten Farbraums in border.color. seeds, ein Objekt, gibt an, was das Feld von dem verlangt, der es signiert, jeder Eintrag als {"value": …, "constraint": …} geschrieben, wobei constraint required ist, eingehalten oder gar nicht signiert, oder optional, der Standard, befolgt, wo möglich: filter, der Signatur-Handler unter dem Namen, unter dem er sich registriert hat; sub_filters, die Kodierungen, die erste akzeptable zuerst, unter adbe_pkcs7_detached und etsi_cades_detached; digest_methods, unter sha256, sha384, sha512 und den vier von ISO/TS 32001, sha3_256, sha3_384, sha3_512 und shake256, die das Dokument als PDF 2.0 mit dieser deklarierten Erweiterung schreiben; reasons, die angebotenen Gründe für das Signieren; legal_attestations, die angebotenen rechtlichen Bestätigungen; revocation_info, true, wo der Unterzeichner seine Zertifikate auf Widerruf prüft und mitführt, was er gefunden hat; lock_document, lock, leave oder choose, ob der Signaturdialog das Dokument sperrt, PDF 2.0; appearance_filter, der Name des Aussehens, mit dem signiert wird, PDF 2.0; timestamp, die Adresse des Servers, bei dem ein Zeitstempel angefordert wird; certificate, was das Signaturzertifikat sein muss, seine Einträge auf dieselbe Weise geschrieben: subject_names, jeweils eine Menge von Attributen, die der Inhaber tragen muss, benannt über ihre Kurznamen wie CN und O, key_usages, jede akzeptable Verwendung mit den Bits, die sie required und die sie forbidden, unter digital_signature, non_repudiation, key_encipherment, data_encipherment, key_agreement, key_cert_sign, crl_sign, encipher_only und decipher_only, und url, wohin ein Unterzeichner ohne ein solches Zertifikat geschickt wird, mit url_type daneben. Daneben nimmt kind keine Einschränkung an: "approval", eine Signatur, die nichts zertifiziert, oder {"certifies": …}, eine Zertifizierung, die erlaubt, was eines der Wörter von permits sagt. Jedes Feld nimmt außerdem mark an, die Bezeichnung, über die der structure-Baum es mit den annotations eines Knotens beansprucht.

Eine vollständige Anfrage, die ein PDF erzeugt

{
  "version": "2.0",
  "items": [
    {
      "type": "signature_field",
      "name": "signature",
      "locks": { "fields": "all", "permits": "no_changes" },
      "rect": {"llx": 72, "lly": 120, "urx": 272, "ury": 180},
      "border": {"width": 0.75}
    }
  ]
}

Die Zeile, die es sendet, in drei Sprachen

Formularfelder

Ein Feld zum Eintippen Ein Kästchen zum Ankreuzen Eine Liste zum Auswählen Mehrere Schaltflächen, eine Antwort Eine Schaltfläche zum Drücken

Wohin als Nächstes

Jeder JSON-Schlüssel einer Anfrage, auf einer Seite Die übrigen zweiundzwanzig Dinge, die Sie zeichnen können

Die Preise ansehen Die Beispiele ansehen