LUA in Skriptetiketten für Text- und Bildrahmen nutzen

Erstellt: 22.11.2018, letzte Änderung: 15.02.2023

Mit den Zusatzfeldern einer EasyCatalog-Palette sowie den EasyCatalog-Zusatzfeldfunktionen bieten sich schon sehr viele Möglichkeiten, komplexere Anforderungen zu lösen.

Kombiniert die Möglichkeiten der Zusatzfelder in einem weiteren Schritt mit LUA, bzw. in Skriptetiketten für Text- und Bildrahmen, bieten sich weitere Lösungsmöglichkeiten. Denn innerhalb der Skriptetiketten kann mittels spezieller LUA-Funktion auch auf EasyCatalog-Feldinhalte zugegriffen und Konstrukte wie Schleifen und/oder Fall-Unterscheidungen genutzt werden.

Im den hier gezeigten, einfachen Beispielen werden innerhalb des Skriptetiketts das Feld "Land" aus der EasyCatalog-Palette während der Platzierung in das InDesign-Dokument abgefragt und je nach Land die Höhe des Textrahmens über eine entsprechende LUA-Funktion angepasst und eine URL zu einem Produkt innerhalb eines Webshops aus der Palette über Funktionen im Skript-Etikett in einen QR-Code umgewandelt.

Im Video unten zeigen wir eine verbesserte und erweiterte Möglichkeit, QR-Codes mit Hilfe eines neuen Spaltentyps mit EasyCatalog zu erzeugen sowie den erzeugten und in einem Grafikrahmen befindlichen QR-Code zusätzlich für ein interaktives PDF mit einem Hyperlink zu versehen.

LUA in Skriptetiketten für Text-Rahmen verwenden

LUA in Skriptetiketten für Text-Rahmen verwenden

Beispielsweise könnte der LUA-Skripttext für das Resizing eines Textrahmens in Abhängigkeit des Inhalts für das Feld "land" in der EasyCatalog-Palette wie folgt aussehen:

if field("land") == "US" then
  frame:height(100);
elseif field("land") == "UK" then
  frame:height(150);
else
  frame:height(300);
end;

LUA in Skriptetiketten für Grafik-Rahmen verwenden

LUA in Skriptetiketten für Grafik-Rahmen verwenden

Man kann auch LUA-Code verwenden, um den Inhalt eines Grafikrahmens zu setzen. In diesem Beispiel wird das Feld "_ShopURL" über den LUA-Code im Skriptetikett ausgelesen und ein QR-Code erzeugt und im Grafikrahmen platziert und skaliert:

frame:qrcodehyperlink(field("_ShopURL"));
frame:fitcontent();
frame:scalecontent(2.0);

Panel Skriptetikett auswählen und anzeigen

Panel Skriptetikett auswählen und anzeigen

Das Skriptetikett-Panel erreicht man über den Hauptmenüpunkt "Fenster" und dann über den Untermenüpunkt "Hilfsprogramme". Es kann wie alle anderen Panels auch, freischwebend auf der Montagefläche platziert werden und sobald ein Rahmen angeklickt wird, zeigt das Panel an, ob dem Objekt LUA-Code zugeordnet ist.

Textrahmen mit LUA-Code im Skriptetikett in eine EasyCatalog-Bibliothek übernehmen

Textrahmen mit LUA-Code im Skriptetikett in eine EasyCatalog-Bibliothek übernehmen

Ist einem Rahmen LUA-Code über das Skriptetikett, wie in diesem Beispiel, zugeordnet, ist das im Panel zu sehen. Zieht man den Rahmen oder auch komplexere Konstruktionen, in eine EasyCatalog-Bibliothek oder macht es zu einer Formatregel, wird der LUA-Code während der Paginierung oder auch beim manuellen Platzieren des Objektes aus der Bibliothek oder der Formatregel, auf den jeweiligen Rahmen angewendet.