Benutzer-Tags sind eine Möglichkeit, zusätzliche Informationen von Hollywood-Skripten an Plugins zu übergeben. Sie können verwendet werden, um eine unbegrenzte Anzahl von zusätzlichen Daten direkt aus dem Hollywood-Skript an Plugins zu übergeben. Die meisten Hollywood-Befehle, die Plugins unterstützen, erlauben Ihnen auch, Benutzer-Tags zu übergeben, die an Plugins weitergeleitet werden sollen. Dies macht natürlich nur dann Sinn, wenn die Benutzerdaten tatsächlich vom jeweiligen Plugin erkannt werden.
Nehmen wir zum Beispiel an, es gibt ein Plugin, das PDF-Seiten
als Bilder laden kann. Dadurch ist es möglich, Hollywoods Befehl
LoadBrush() zu verwenden, um einen Pinsel aus einer PDF-Seite
zu erstellen. Befehle wie LoadBrush() unterstützen jedoch
nicht die Angabe einer Seitenzahl oder eines Passworts, da sie
nicht dafür ausgelegt sind, Seiten aus PDF-Dokumenten zu laden.
Ein Plugin könnte diese Einschränkung umgehen, indem es einfach
zwei neue Benutzer-Tags definiert, z.B. Page
und Password
,
und dann könnten Skripte diese beiden Tags verwenden, um die
Informationen an das Plugin zu übergeben.
Aus Sicht des Hollywood-Skripts werden Benutzer-Tags einfach
in einer optionalen UserTags-Tabelle
übergeben, die von vielen
Hollywood-Befehlen akzeptiert wird, z.B. LoadBrush()
. Die UserTags-Tabelle
kann eine unbegrenzte Anzahl von Schlüssel-Wert-Paaren enthalten,
die einzelne Benutzer-Tags definieren. Beachten Sie, dass der
Schlüssel immer ein benannter Tabellenindex wie Page
oder Password
sein muss. Es ist nicht möglich, numerische Tabellenindizes
als Benutzer-Tags zu verwenden. Der Wert kann eine Zeichenkette
oder ein numerischer Wert sein. Wenn es sich um eine Zeichenkette
handelt, kann er auch binäre Daten enthalten.
Um auf unser Beispiel von oben zurückzukommen: Um eine Seite und ein Passwort über Benutzer-Tags an ein Bild-Plugin zu übergeben, könnte ein Hollywood-Skript einfach folgendes tun:
; load page 5 of test.pdf as a brush, passing "mypwd" as the password LoadBrush(1, "test.pdf", {UserTags = {Page = 5, Password = "mypwd"}}) |
Ein Plugin könnte dann nach den Tags Page
und Password
suchen,
um die zu ladende Seitennummer und das Passwort für die PDF-Datei
(falls vorhanden) herauszufinden. Dadurch ist es möglich, allerlei
Zusatzinformationen an Hollywood-Plugins zu übergeben.
Darüber hinaus werden Benutzer-Tags auch von vielen Präprozessor-Anweisungen
unterstützt, sodass Sie auch Folgendes tun könnten, um Seite 5
von test.pdf
als Pinsel zu laden:
; load page 5 of test.pdf as a brush, passing "mypwd" as the password @BRUSH 1, "test.pdf", {UserTags = {Page = 5, Password = "mypwd"}} |
Beachten Sie, dass Benutzer-Tags von allen Arten von Plugins unterstützt werden: Sie werden von Bild-, Animations-, Ton-, Video-, Piktogramm-, Schriftartenladern, Datei-, Verzeichnis-, Display-, Netzwerkadaptern und Serialisierern unterstützt. Lader leiten die Benutzer-Tags normalerweise auch an Adapter weiter, sodass Dateiadapter in der Lage sind, Benutzer-Tags zu überwachen, die durch Lader geleitet werden.