Wie weit sich ein mitgeliefertes PDF entpacken darf
Legen Sie fest, wie weit sich ein Stream eines gesendeten PDF entpacken darf, sodass eine Datei, die die Maschine füllen soll, vorher abgelehnt wird.
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.
Zusammenfassung
Wenn Sie ein PDF mitsenden — einen Briefkopf, auf den gedruckt werden soll, oder eine zu platzierende Seite —, ist diese Datei komprimiert, wie ein ZIP-Ordner. Eine komprimierte Datei lässt sich so bauen, dass ein sehr kleines Paket sich zu etwas Riesigem entpackt, und ein Programm, das sie ungeprüft entpackt, füllt die Maschine und hält an. Erhöhen Sie die Obergrenze, bis zu einem Gibibyte, wenn Sie wissentlich sehr große Seiten senden; senken Sie sie, wenn Sie Dateien von Unbekannten annehmen.
Technisch
Auf der obersten Ebene einer Anfrage geschrieben, unter
"supplied_pdfs"
supplied_pdfs legt fest, wie die mit der Anfrage gelieferten PDFs gelesen werden: die Vorlagen, auf die die Seiten gestempelt werden, die Seiten, die die Elemente platzieren, und die source, mit der das Dokument beginnt. expansion_limit ist die Obergrenze, auf die ein Stream einer solchen Datei dekomprimiert werden darf. Die Prüfung erfolgt, bevor Speicher belegt wird, nicht danach: Eine Datei mit einem Stream, der mehr verlangt, wird sofort abgelehnt, sodass ein kleines Paket, das darauf ausgelegt ist, sich auf Gigabytes zu entpacken, nie die Gelegenheit dazu bekommt. Fehlt expansion_limit, gilt die Obergrenze, die die Bibliothek beim Lesen einer Datei anwendet. add_to nennt eine dieser Dateien als das Dokument, dem die erzeugten Seiten hinzugefügt werden, in einem Abschnitt, der hinter seinem letzten Byte angehängt wird.
Anfrageschema
-
supplied_pdfs— Objekt, optional. -
supplied_pdfs.expansion_limit— Ganzzahl, optional, eine Anzahl Bytes, höchstens 1 073 741 824. Die maximale Größe, auf die ein Stream eines mitgelieferten PDF dekomprimiert werden darf. Fehlt sie, gilt die eigene Obergrenze der Bibliothek, 268 435 456. Eine Anfrage, die mehr als das Maximum nennt, wird mit 400 abgelehnt, und es wird kein PDF gelesen. -
supplied_pdfs.add_to— Objekt, optional. Das mitgelieferte PDF, dem die erzeugten Seiten hinzugefügt werden, statt als eigenes Dokument zurückgegeben zu werden. Die Antwort ist diese Datei, jedes Byte an seinem Platz, gefolgt von einem Abschnitt mit dem Hinzugefügten: Eine bereits enthaltene Signatur deckt weiterhin ab, was sie abgedeckt hat, und eine Anzeigesoftware, die die früheren Versionen der Datei zeigt, zeigt weiterhin die, die angekommen ist. -
supplied_pdfs.add_to.pdf— Zeichenkette, erforderlich. Der Name des Teils, der das PDF enthält. -
supplied_pdfs.add_to.over— Array von ab eins gezählten Ganzzahlen, optional, standardmäßig leer. Für die ersten erzeugten Seiten der Reihe nach die Seite des mitgelieferten PDF, über die jede gelegt wird, ab der linken unteren Ecke ihres Blattes. Jede weitere erzeugte Seite wird nach der letzten Seite des mitgelieferten PDF angefügt, in der Reihenfolge, in der die Erzeugung sie hervorgebracht hat. -
Ein
signature_fieldnebenadd_towird der Seite hinzugefügt, auf der seine erzeugte Seite landet, mit dieser Seite auf das Blatt verschoben, über das sie gezeichnet wird, jedes in einem eigenen Abschnitt nach dem, der die Seiten enthält. Es enthält keine Signatur: Der Dienst signiert nicht. Signiert wird später, von dem, der die Antwort erhält, in einem danach angefügten Abschnitt. -
Ein
signature_fieldnebenadd_tonennt eine einzige Seite inpages, es sei denn, die Erzeugung ergibt eine Seite. Eines, das auf mehr als einer erzeugten Seite landet oder wie ein anderes benannt ist, wird mit einem 400 abgelehnt, das dies angibt. -
Mit 400 abgelehnt neben
add_to: eine Anfrage, die außerdembookmarks,metadata,archive,protection,structure, Ebenen, Links oder andere Formularfelder als einsignature_fieldverlangt; einsignature_field, das wie ein Feld benannt ist, das das Formular des mitgelieferten PDF bereits enthält, eines, das andere Felderlocks, und eines, das bei einem Ereignis etwas auslöst; ein Name, für den kein Teil mitgeliefert wurde; eine zu überzeichnende Seite hinter der letzten des mitgelieferten PDF; ein mitgeliefertes PDF, das geschützt ist oder dessen Querverweistabelle sich nicht verfolgen lässt; und einover, das mehr Seiten nennt, als die Erzeugung hervorgebracht hat. Das Ergänzen eines mitgelieferten PDF erfordert einen Lizenzschlüssel: Ein Evaluierungsserver antwortet mit 402.
Geltungsbereich: jedes PDF, das die Anfrage mitliefert, ob es als Vorlage gestempelt oder platziert wird. Es legt nichts über das geschriebene Dokument fest, nur über die gelesenen Dateien.
Eine vollständige Anfrage, die ein PDF erzeugt
{
"supplied_pdfs": { "expansion_limit": 33554432 },
"standard_fonts": [{ "name": "sans", "face": "helvetica" }],
"items": [
{
"type": "pdf_page",
"pdf": "letterhead",
"page": 1,
"rect": { "llx": 0, "lly": 0, "urx": 595.276, "ury": 841.89 }
},
{
"type": "text",
"rect": { "llx": 72, "lly": 700, "urx": 523, "ury": 740 },
"content": ["Written over the sheet that was supplied"],
"font": "sans",
"font_size": 12
}
]
}
Das Blatt und was darunter gelegt wird
Die Größe der Seiten Ein eigenes Format für bestimmte Seiten Die Einheit, in der eine Seite gemessen wird Wo das Blatt einer Seite in der Zeichnung sitzt Die Bereiche, die eine Seite angibt Die Formen, die eine Seite über das Gezeichnete legt Wie herum eine Seite gezeigt wird Wie eine Seite erscheint und wie lange sie stehen bleibt Ein mitgesendetes PDF als Seiten des Dokuments Die Vorlage unter den Seiten Ein über eine Reihe von Seiten gelegtes Wasserzeichen Benannte Bereiche, die eine Seite zum Füllen markiert
Wohin als Nächstes
Jeder JSON-Schlüssel einer Anfrage, auf einer Seite Die übrigen einundvierzig Einstellungen einer Anfrage