Anhänge verwalten

Mit dem attachment Operation-Element können Dateianhänge dem PDF-Dokument hinzugefügt, daraus entfernt oder extrahiert werden.

 

add-Operation

 

Fügt dem Dokument einen Anhang hinzu.

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<operation xmlns="http://schema.webpdf.de/1.0/operation">
<attachment>
  <add>
    <file fileName="xyz.json">
    <data>ewogIC...0KCg==</data>
    <annotation page="1"
                  color="#4800FF"
                  opacity="100"
                  icon="graph"
                  lockedPosition="true"
                  popupText="">
        <point x="0"
              y="0"
              coordinates="user"
              metrics="mm"/>
      </annotation>
    </file>
  </add>
</attachment>
</operation>

{
"attachment": {
  "add": {
    "file": {
      "fileName": "xyz.json",
      "data": {
        "value": "ewogICJmb3Jtcy...9Cn0KCg=="
       },
      "annotation": {
        "page": 1,
        "color": "#4800FF",
        "opacity": 100,
        "icon": "graph",
        "lockedPosition": true,
        "popupText": "",
        "point": {
          "x": 0,
          "y": 0,
          "coordinates": "user",
          "metrics": "mm"
         }
       }
     }
   }
 }
}

 

 

file-Element

 

Definiert einen einzelnen Dateianhang, der dem PDF-Dokument hinzugefügt werden soll. Das Element kann mehrfach vorkommen, wenn mehrere Dateien hinzugefügt werden sollen.

 

<file fileName="xyz.json">
...
</file>
 

"file": {
  "fileName": "xyz.json",
   ...
}

 

fileName (Default: "")

Definiert den Namen unter dem der Anhang im Dokument erstellt wird.

 

hint

Wird für das "file-Element" kein "annotation-Element" definiert, dann wird der Anhang auf Dokumenten-Ebene abgelegt.

 

 

data-Element

 

Enthält die anzuhängende Datei als "Base64 encoded".

 

<data>ewogIC...0KCg==</data>

"data": {
        "value": "ewogICJmb3Jtcy...9Cn0KCg=="
}

 

 

annotation-Element

 

Definiert das Anmerkungselement, das mit dem Dateianhang verbunden werden soll.

 

<annotation page="1"
          color="#4800FF"
          opacity="100"
          icon="graph"
          lockedPosition="true"
          popupText="">
           ...
</annotation>

"annotation": {
"page": 1,
"color": "#4800FF",
"opacity": 100,
"icon": "graph",
"lockedPosition": true,
"popupText": "",
...
 }
}

 

page (Default: 1)

Definiert die Seite, auf der die Annotation erstellt wird, d.h. die Seite, auf der der Anhang abgelegt wird.

 

color (Default: "#4800FF")

Der Farbwert der Annotation ändert die Hauptfarbe des Symbols des Anhangs. Der Farbwert wird als hexadezimaler RGB-Wert mit voran gestelltem Hash-Zeichen angegeben.

 

opacity (Default: 100)

Legt die Deckkraft des Symbols des Anhangs fest. Ein prozentualer Wert zwischen 0 und 100 ist erlaubt, wobei 0 die minimalste Deckkraft bedeutet. Je höher der Wert, desto mehr wird der Inhalt des PDF-Dokuments überlagert.

 

icon (Default: "paperclip")

Wird ein Anhang auf Seitenebene eingebettet, so legt diese Option das Symbol fest, mit dem er visualisiert werden soll:

 

graph = Diagramm

paperclip = Büroklammer

pushPin = Anlage

tag = Tag

 

lockedPosition (Default: true)

Wird dieser Wert auf "true" gesetzt, so wird dem Betrachter des Dokuments verboten das Icon der auf Seitenebene angehängten Datei zu verschieben.

 

popupText (Default: "")

Der hier übergebene Text wird im Tooltip der auf Seitenebene angehängten Datei angezeigt.

 

 

point-Element

 

Bestimmt die Position des Anmerkungselement auf der Seite.

 

<point x="0"
      y="0"
      coordinates="user"
      metrics="mm"/>

"point": {
"x": 0,
"y": 0,
"coordinates": "user",
"metrics": "mm"
}

 

x (Default: 0)

Bestimmt die X Koordinate bei der die Annotation auf der Seite dargestellt werden soll. Ein Wert von 0 entspricht hierbei dem linken Seitenrand der Anzeigefläche der Seite des Dokuments.

 

y (Default: 0)

Bestimmt die Y Koordinate auf der das Icon einer auf Seitenebene angehängte Datei im Dokument dargestellt wird. Ein Wert von 0 entspricht hierbei dem oberen Seitenrand der Anzeigefläche der Seite des Dokuments.

 

coordinates (Default: "user")

Legt das Koordinatensystem für die Angaben fest.

user = User-Koordinatensystem (Ausgangspunkt links-oben)

pdf = PDF-Koordinatensystem (Ausgangspunkt links-unten)

 

metrics (Default:"mm")

Maßeinheit für die Angaben der X/Y-Position und der Höhe und Breite des Icons der angehängten Datei:

mm = Millimeter

px = Pixel

 

 

remove-Operation

 

Entfernt einen oder mehrere Anhänge aus dem Dokument.

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<operation xmlns="http://schema.webpdf.de/1.0/operation">
<attachment>
  <remove>
    <selection pages="1-2"
                context="all"
                fileMask="*.xls"/>
  </remove>
</attachment>
</operation>

{
"attachment": {
  "remove": {
    "selection": [

       {
        "pages":"1-2",
        "context":"all",
        "fileMask":"*.xls"
       }

     ]
   }
 }
}

 

 

selection-Element

 

Setzt einen Bereich in dem Anhänge, die den Selektionsregeln entsprechen, entfernt werden. Es können mehrere selection-Elemente verwendet werden.

 

<selection pages="1-2"
          context="all"
          fileMask="*.xls"/>

"selection": [

 {
  "pages":"1-2",
  "context":"all",
  "fileMask":"*.xls"
 }, ...

]

 

pages (Default: "")

Seitenbereich auf den die Selektion zutreffen soll.

 

context (Default: "all")

Ebene auf den die Selektion zutreffen soll.

 

all = Alle Ebenen

document = Nur für die Dokumentenebene

page = Nur für die Seitenebene

 

fileMask

Filtert für die Selektion nach Dateinamen. "*.xls" würde dafür sorgen, dass alle xls-Anhänge im Selektionsbereich entfernt werden. "xyz.json" würde Anhänge mit dem Namen "xyz.json" aus dem Selektionsbereich entfernen.

 

 

extract-Operation

 

Extrahiert einen oder mehrere Anhänge aus dem Dokument. Wird mehr als eine Datei über selection definiert, dann wird das Ergebnis als ZIP-Dokument geliefert.

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<operation xmlns="http://schema.webpdf.de/1.0/operation">
<attachment>
  <extract folderNameTemplate="page[%d]">
    <selection pages="1-2"
                context="all"
                fileMask="*.xls"/>
  </extract>
</attachment>
</operation>

 

{
"attachment": {
  "extract": {
    "folderNameTemplate":"page[%d]",
    "selection":{
      "pages":"1-2",
      "context":"all",
      "fileMask":"*.xls"
     }
   }
 }
}

 

 

extract-Element

 

<extract folderNameTemplate="page[%d]">
...
</extract>

 

"extract": {
"folderNameTemplate":"page[%d]",
 ...
}

 

folderNameTemplate (Default: "page[%d]")

Setzt das Template für die Seiten-Ordner in der zurückgelieferten ZIP-Datei. "page[%d]" würde beispielsweise zu Ordner "page1" für Seite 1 und so weiter führen.

 

 

selection-Element

Ist identisch mit dem selection-Element der vorher beschriebenen remove-Operation.