Ein Name, der für mehrere Ebenen zugleich steht
Zeichnen Sie Elemente unter einem Namen, der mehreren Ebenen folgt, und legen Sie fest, was wahr sein muss, bevor die Anzeigesoftware sie zeigt.
In einem echten PDF ansehen
Eine Zeichnung, und jeder Leser sieht seine eigene
Derselbe Grundriss auf sechs Ebenen, einzeln ein- und ausgeblendet: Möbel und Abstände eingeblendet, die internen Notizen ausgeblendet, bis sie gebraucht werden, und ein Entwurfs-Wasserzeichen für den Bildschirm und nicht für das Papier.
Zusammenfassung
Ebenen werden einzeln ein- und ausgeblendet. Eine Regel ist ein Name, der mehrere davon beobachtet: Zeige diese Warnung, solange jede Sicherheitsebene eingeschaltet ist, zeige jene Notiz, sobald irgendeine Sprachebene ausgeschaltet ist. Auf der Regel gezeichnete Elemente folgen ihr, und die Anzeigesoftware ermittelt die Regel aus den Ebenen selbst statt aus einem eigenen Schalter.
Technisch
Auf der obersten Ebene einer Anfrage geschrieben, unter
"layer_rules"
layer_rules schreibt die Sichtbarkeitsausdrücke des Dokuments: ein Zugehörigkeits-Dictionary, das mehrere Ebenen nennt, und die Regel, die über sie entscheidet. Ein auf dem Namen der Regel gezeichnetes Element folgt der Regel. Der Name steht neben den deklarierten Ebenen, sodass eine Regel, die den Namen einer von der Anfrage deklarierten Ebene annimmt, abgelehnt wird.
Anfrageschema
-
layer_rules— Array, optional, standardmäßig leer. -
layer_rules[].name— Zeichenkette, erforderlich. Der Name, auf dem Elemente nach eigener Angabe gezeichnet werden. Er darf nicht der Name einer deklarierten Ebene sein. -
layer_rules[].shown— Objekt, erforderlich.layers— Array von Zeichenketten, die deklarierten Ebenen, denen die Regel folgt;policy— einer der Werteall_visible,any_visible,any_hidden,all_hidden. -
layer_rules[].expression— Objekt, optional. Eine Formel über Ebenen, die eine Anzeigesoftware, die Formeln kennt, anstelle vonshownliest; eine, die sie nicht kennt, liestshown, weshalb die Regel trotzdem eines angibt. Vier Formen, beliebig tief verschachtelt:{"layer": name}, wahr, solange diese Ebene eingeblendet ist;{"and": […]}, wahr, solange jeder Operand es ist;{"or": […]}, wahr, solange mindestens ein Operand es ist;{"not": …}, wahr, solange sein Operand falsch ist. Eine Ebene, die keinlayers-Eintrag deklariert hat, wird abgelehnt. Erfordert PDF 1.6.
Eine Regel entscheidet, was angezeigt wird, nie, was gedruckt wird: Was aufs Papier kommt, legt der eigene Eintrag jeder Ebene unter layers fest.
Eine vollständige Anfrage, die ein PDF erzeugt
{
"layers": [{ "name": "French" }, { "name": "Safety" }],
"layer_rules": [
{
"name": "french-safety",
"shown": { "all_visible": ["French", "Safety"] }
}
],
"standard_fonts": [{ "name": "sans", "face": "helvetica" }],
"items": [
{
"type": "text",
"rect": { "llx": 60, "lly": 740, "urx": 535, "ury": 765 },
"content": ["A warning shown while both layers are on"],
"font": "sans",
"font_size": 14
}
]
}
Was gezeichnet wird, und wie es herauskommt
Alles, was sich auf eine Seite zeichnen lässt Das Gewicht der Datei und die Zeit, die sie braucht Die erste Seite, gezeigt, während der Rest ankommt Ebenen, die die Anzeigesoftware zeigt oder ausblendet Eine einmal gemachte Zeichnung, per Schaltfläche gezeigt Aus SVG-Dateien gelesene Zeichnungen Die Ebenensätze, die die Anzeigesoftware anbietet Ebenen, von denen die Anzeigesoftware jeweils eine zeigt
Wohin als Nächstes
Jeder JSON-Schlüssel einer Anfrage, auf einer Seite Die übrigen einundvierzig Einstellungen einer Anfrage