Ebenen eines InDesign®-Dokumentes
Ebenen eines InDesign®-Dokumentes
static int layer::count()
Wieviele Ebenen hat das aktive Dokument?
Name | Typ | Default | Beschreibung |
Return | int | Anzahl der Ebenen des aktiven Dokumentes |
i = layer::count ();
static char* layer::front_name(char* s = 0)
Ermittle den Namen der aktiven Ebene.
In InDesign® (Desktop) ist das die aktive Ebene des aktuellen Front-Dokumentes.
In InDesign® Server ist das aktuelle Frontdokument das zuletzt geöffnete Dokument und die aktive Ebene ist die Ebene, die in diesem Dokument zuletzt mit layer::select festgelegt wurde. Der Aufruf von layer::select kann dabei in einer voherigen (auch InDesign® Desktop) Session gewesen sein. Wurde layer::select im aktuellen Front-Dokument noch nie ausgeführt, wird der Leerstring zurückgegeben.
Hat das Dokument nur eine Ebene, wird diese Ebene automatisch als aktive Ebene verwendet. Auf den Aufruf von layer::select kann in diesem Fall verzichtet werden.
Name | Typ | Default | Beschreibung |
Return | String oder char* (Abhängig von Parameter s) | Die Eingabevariable s wird zur einfacheren Verwendung der Funktion als Rückgabewert verwendet. (Aufrufe der Form s = layer::front_name (s); machen also keinen Sinn.) | |
s | String oder char* | 0 | Reservierter Speicher für den Ebenennamen 0 : [ab v4.3 R36166] Die Variable darf 0 sein oder fehlen, dann gilt: Der Rückgabewert darf nicht verändert werden und wird bei folgenden Aufrufen der Funktion überschrieben. Hier finden Sie Informationen zu readonly-Rückgaben von Funktionen. |
char s[256] s = layer::front_name (s);
Im Beipiel wird layer::front_name in einem Pythonskript verwendet, das den Namen der aktiven Ebene benötigt (wenn auch nur in einem showMwssage).
#!py
import comet
def main(): comet.runCScript ("int main ()\ {\ char lname [512];\ \ set_script_clipboard (\"myLayer\", layer::front_name (lname));\ return 0;\ }") frontLayer = comet.getScriptClipboard ('myLayer') comet.showMessage (f'Current Layer is now {frontLayer}') return 0
static int layer::rename_all(char* prefix = 0)
Umbenennen aller Layer. Dabei wird der übergebene Präfix als Basis der Ebenennamen verwendet :
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
prefix | String oder char* | "" | Namensbasis. Ist der Name leer, wird der Standardname für Ebenen ('Ebene') verwendet. |
err_code = layer::rename ([s_prefix]);
static int layer::sort()
Sortiere die Layerliste absteigend.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode |
layer::sort ();
static int layer::index(char* n)
An welcher Position steht ein Layer? Positionen werden bei 0 beginnend von unten gezählt. Wurde ein Layer nicht gefunden, wird -1 zurückgegeben.
Name | Typ | Default | Beschreibung |
Return | int | Ebenenposition oder -1. | |
n | String oder char* | - | Ebenenname |
i = layer::index (s);
static char* layer::name(int index, char* res)
Name der i-ten Ebene. Positionen werden bei 0 beginnend von unten gezählt. Gibt es keinen Layer mit dem angegebenen Index, wird - na was wohl? - der Leerstring zurückgegeben.
Name | Typ | Default | Beschreibung |
Return | String oder char* (Abhängig von Parameter res) | Name der i-ten Ebene. Entspricht parameter res. | |
index | int | - | Ebenennummer |
res | String oder char* | - | Reservierter Speicher für den Ebenennamen |
char s[256];
s = layer::name (i, s);
static int layer::select_i(int index)
Aktiviere eine durch ihren Index gegebene Ebene. Wird die Ebene nicht gefunden, macht die Methode nichts.
InDesign® Server kann keine aktive Ebene setzen. Für den Produktaufbau und andere Skriptfunktionen, die die aktuelle Ebene benötigen, wird deshalb der Ebenennamen in einer speziellen Dokumentpräferenz festgehalten.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
index | int | - | Bei 0 beginnende Ebenennummer. 0 ist die oberste Ebene. |
err_code = layer::select_i (i);
static int layer::select(char* lname)
Aktiviere eine durch ihren Name gegebene Ebene. Wird die Ebene nicht gefunden, macht die Methode nichts.
InDesign® Server kann keine aktive Ebene setzen. Für den Produktaufbau und andere Skriptfunktionen, die die aktuelle Ebene benötigen, wird deshalb der Ebenennamen in einer speziellen Dokumentpräferenz festgehalten und kann danach (auch in einer späteren InDesign®-Session) mit layer::front_name abgefragt werden.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
lname | String oder char* | - | Name einer Ebene |
Das Besipiel zeigt die Verwendung der Funktion in einem Python-Skript. Der Name der Ebene wird hier mit Hilfe der Variable layerName an das kurze cScript übergeben.
comet.runCScript ('int main () { layer::select (layerName); return 0; }', items=[('Ebene 3', 'layerName')])
static int layer::set_visible_i(int index, int vis)
Zeige oder verstecke eine durch ihren Index gegebene Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
index | int | - | Bei 0 beginnende Ebenennummer. 0 ist die oberste Ebene. |
vis | int | - | != 0 sichtbar, 0 verstecken |
err_code = layer::set_visible_i (index, nam);
static int layer::set_visible(char* nam, int vis)
Zeige oder verstecke eine durch ihren Namen gegebene Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
nam | String oder char* | - | Name einer Ebene |
vis | int | - | != 0 sichtbar, 0 verstecken |
err_code = layer::set_visible (nam);
static int layer::remove_i(int index)
Lösche eine durch ihren Index gegebene Ebene. Durch das Löschen einer Ebene werden auch alle auf dieser Ebene befindlichen Objekte gelöscht.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
index | int | - | Bei 0 beginnende Ebenennummer. 0 ist die oberste Ebene. |
layer::remove_i (ix);
static int layer::remove(char* nname)
Lösche eine durch ihren Namen gegebene Ebene. Durch das Löschen einer Ebene werden auch alle auf dieser Ebene befindlichen Objekte gelöscht.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
nname | String oder char* | - | Name einer Ebene |
layer::remove (str);
static int layer::merge(char* from, char* to)
Kopiere den Inhalt des Layers from in den Layer to. Danach wird der Layer from gelöscht. Soll der Inhalt des Layers from erhalten bleiben, verwenden Sie bitte die Funktion layer::copy.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | String oder char* | - | Name der Ebene, deren Objekte verschoben werden sollen |
to | String oder char* | - | Name der Zielebene |
err_code = layer::merge (from, to);
static int layer::merge_ni(char* from, int to)
Kopiere den Inhalt des Layers from in den Layer to. Danach wird der Layer from gelöscht. Soll der Inhalt des Layers from erhalten bleiben, verwenden Sie bitte die Funktion layer::copy_ni.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | String oder char* | - | Name der Ebene, deren Objekte verschoben werden sollen |
to | int | - | Index der Zielebene |
err_code = layer::merge_ni (from, to);
static int layer::merge_ii(int from, int to)
Kopiere den Inhalt des Layers from in den Layer to. Danach wird der Layer from gelöscht. Soll der Inhalt des Layers from erhalten bleiben, verwenden Sie bitte die Funktion layer::copy_ii.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | int | - | Index der Ebene, deren Objekte verschoben werden sollen |
to | int | - | Index der Zielebene |
err_code = layer::merge_ii (from, to);
static int layer::merge_in(int from, char* to)
Kopiere den Inhalt des Layers from in den Layer to. Danach wird der Layer from gelöscht. Soll der Inhalt des Layers from erhalten bleiben, verwenden Sie bitte die Funktion layer::copy_in.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | int | - | Index der Ebene, deren Objekte verschoben werden sollen |
to | String oder char* | - | Name der Zielebene |
err_code = layer::merge_in (from, to);
static int layer::copy(
char* from,
char* to,
int exhaustive = 0,
int reconstruct = 0,
int completeProducts = 0)
Kopiere den Inhalt des Layers from in den Layer to.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | String oder char* | - | Name der Ebene, deren Objekte verschoben werden sollen |
to | String oder char* | - | Name der Zielebene |
exhaustive | int | 0 | CS6 Server führt mitunter zum Absturz bei layer::copy. Setzen Sie den Parameter
auf den Wert 1, um den Absturz zu vermeiden - wir haben dann um den Fehler herum-programmiert. 0 : "normales" Verhalten 1 : CS6 Server-sicher |
reconstruct | int | 0 | Cometgruppen wiederherstellen, Comet-Notizen anpassen, Wiederholende Elemente neu zuordnen? 0 : nein 1 : ja Unsichtbare Comet-Notizen werden nicht dupliziert! |
completeProducts | int | 0 | Sollten zu einer Cometgruppe PageItems gehören, die auf einer anderen Ebene als from abgelegt sind,
sollen diese ebenfalls auf die Ebene to kopiert und in die neue Cometgruppe aufgenommen werden. 0 : nein 1 : ja |
Dupliziere die aktuelle Ebene. Alle Cometgruppen werden dabei wiederhergestellt.
int main () { char frontname [4000]; char newname [4000]; char tmp [4000]; int index = 0;
// Get current front layer layer::front_name (frontname); index = layer::index (frontname);
// Create a new layer name and create the layer layer::default_name (sprintf (tmp, "%s Kopie", frontname), newname); layer::add_i (newname, index+1);
// Copy content layer::copy (frontname, newname, 1, 1);
return 0; }
static int layer::copy_ni(
char* from,
int to,
int exhaustive = 0,
int reconstruct = 0,
int completeProducts = 0)
Kopiere den Inhalt des Layers from in den Layer to.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | String oder char* | - | Name der Ebene, deren Objekte verschoben werden sollen |
to | int | - | Index der Zielebene |
exhaustive | int | 0 | CS6 Server führt mitunter zum Absturz bei layer::copy. Setzen Sie den Parameter
auf den Wert 1, um den Absturz zu vermeiden - wir haben dann um den Fehler herum-programmiert. 0 : "normales" Verhalten 1 : CS6 Server-sicher |
reconstruct | int | 0 | Cometgruppen wiederherstellen, Comet-Notizen anpassen, Wiederholende Elemente neu zuordnen? 0 : nein 1 : ja Unsichtbare Comet-Notizen werden nicht dupliziert! |
completeProducts | int | 0 | Sollten zu einer Cometgruppe PageItems gehören, die auf einer anderen Ebene als from abgelegt sind,
sollen diese ebenfalls auf die Ebene to kopiert und in die neue Cometgruppe aufgenommen werden. 0 : nein 1 : ja |
static int layer::copy_ii(
int from,
int to,
int exhaustive = 0,
int reconstruct = 0,
int completeProducts = 0)
Kopiere den Inhalt des Layers from in den Layer to.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | int | - | Index der Ebene, deren Objekte verschoben werden sollen |
to | int | - | Index der Zielebene |
exhaustive | int | 0 | CS6 Server führt mitunter zum Absturz bei layer::copy. Setzen Sie den Parameter
auf den Wert 1, um den Absturz zu vermeiden - wir haben dann um den Fehler herum-programmiert. 0 : "normales" Verhalten 1 : CS6 Server-sicher |
reconstruct | int | 0 | Cometgruppen wiederherstellen, Comet-Notizen anpassen, Wiederholende Elemente neu zuordnen? 0 : nein 1 : ja Unsichtbare Comet-Notizen werden nicht dupliziert! |
completeProducts | int | 0 | Sollten zu einer Cometgruppe PageItems gehören, die auf einer anderen Ebene als from abgelegt sind,
sollen diese ebenfalls auf die Ebene to kopiert und in die neue Cometgruppe aufgenommen werden. 0 : nein 1 : ja |
static int layer::copy_in(
int from,
char* to,
int exhaustive = 0,
int reconstruct = 0,
int completeProducts = 0)
Kopiere den Inhalt des Layers from in den Layer to.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
from | int | - | Index der Ebene, deren Objekte verschoben werden sollen |
to | String oder char* | - | Name der Zielebene |
exhaustive | int | 0 | CS6 Server führt mitunter zum Absturz bei layer::copy. Setzen Sie den Parameter
auf den Wert 1, um den Absturz zu vermeiden - wir haben dann um den Fehler herum-programmiert. 0 : "normales" Verhalten 1 : CS6 Server-sicher |
reconstruct | int | 0 | Cometgruppen wiederherstellen? 0 : nein 1 : ja Unsichtbare Comet-Notizen werden nicht dupliziert! |
completeProducts | int | 0 | Sollten zu einer Cometgruppe PageItems gehören, die auf einer anderen Ebene als from abgelegt sind,
sollen diese ebenfalls auf die Ebene to kopiert und in die neue Cometgruppe aufgenommen werden. 0 : nein 1 : ja |
static int layer::move(char* mv, char* behind)
Ändere die Reihenfolge der Layer. Der Layer mv wird unter den Layer behind geschoben.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
mv | String oder char* | - | Name der Ebene, die verschoben werden soll |
behind | String oder char* | - | Name der Ebene, unter der die Ebene liegen soll. Existiert keine Ebene des gebenene Namens, wird die Ebene die neue oberste Ebene. |
err_code = layer::move (mv, behind);
static int layer::move_ni(char* mv, int behind)
Ändere die Reihenfolge der Layer. Der Layer mv wird unter den Layer behind.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
mv | String oder char* | - | Name der Ebene, die verschoben werden soll |
behind | int | - | Index der Ebene, unter der die Ebene liegen soll. -1 oder > Anzahl der Ebenen : Die Ebene wird neue Vordergrundebene |
err_code = layer::move (mv, behind);
static int layer::move_ii(int mv, int behind)
Ändere die Reihenfolge der Layer. Der Layer mv wird unter den Layer behind.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
mv | int | - | Index der Ebene, die verschoben werden soll |
behind | int | - | Index der Ebene, unter der die Ebene liegen soll -1 oder > Anzahl der Ebenen : Die Ebene wird neue Vordergrundebene |
err_code = layer::move (mv, behind);
static int layer::move_in(int mv, char* behind)
Ändere die Reihenfolge der Layer. Der Layer mv wird unter den Layer behind.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
mv | int | - | Index der Ebene, die verschoben werden soll |
behind | String oder char* | - | Name der Ebene, unter der die Ebene liegen soll. Existiert keine Ebene des gebenene Namens, wird die Ebene die neue oberste Ebene. |
err_code = layer::move (mv, behind);
static int layer::rename(char* oldName, char* newName)
Ändere den Namen eines Layers.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
oldName | String oder char* | - | Name der Ebene, deren Name geändert werden soll |
newName | String oder char* | - | Neuer Ebenenname |
err_code = layer::rename (oldName, newName);
static int layer::rename_i(int index, char* newName)
Ändere den Namen eines Layers
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
index | int | - | Index der Ebene, deren Name geändert werden soll |
newName | String oder char* | - | Neuer Ebenenname |
err_code = layer::rename_i (ix, newName);
static int layer::rename_prefixed(char* oldName, char* prefix)
Ändere den Namen eines Layers gemäß einem gegebenen Präfix. Ist als Präfix beispielsweise 'Paul' gegeben und es existiert eine Ebene 'Paul 3' wird als neuer Name 'Paul 4' verwendet.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
oldName | String oder char* | - | Name der Ebene, deren Name geändert werden soll |
prefix | String oder char* | - | Präfix des neuen Ebenennamens |
err_code = layer::rename_prefixed (oldName, prefix);
static int layer::rename_prefixed_i(int index, char* prefix)
Ändere den Namen eines Layers gemäß einem gegebenen Präfix. Ist als Präfix beispielsweise 'Paul' gegeben und es existiert eine Ebene 'Paul 3' wird als neuer Name 'Paul 4' verwendet.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
index | int | - | Index der Ebene, deren Name geändert werden soll |
prefix | String oder char* | - | Präfix des neuen Ebenennamens |
err_code = layer::rename_prefixed_i (index, prefix);
static int layer::add(
char* newName,
char* behind,
int doSelect = 0,
char* outName = 0)
Anlegen einer neuen Dokument-Ebene hinter einer gegebenen Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
newName | String oder char* | - | Name der neuen Ebene. Existiert mit dem angegebenen Namen
bereits eine Ebene, wird keine neue Ebene angelegt und die Position der existierenden Ebene bleibt unverändert. 0 oder "" : Ist kein Name angegeben, wird ein neuer Defaultname ermittelt. |
behind | String oder char* | - | Name der Ebene, hinter der die neue Ebene liegen soll. Wird diese Ebene nicht gefunden, wird der neue Layer als unterste Ebene angelegt. |
doSelect | int | 0 | Soll die Ebene sofort aktiviert werden? 0 : nein 1 : ja Von Illustrator wird der Parameter ignoriert. |
outName | String oder char* | 0 | Allokierter Speicher für den Namen der neu angelegten Ebene. 0 : Rückgabe ignorieren |
Um das Skript auszuführen, benötigen Sie ein Testdokument mit mindestens 3 Ebenen von denen eine den Namen "Ebene 6" tragen muss. Das Dokument sollte außerdem vier Rahmen enthalten, deren UIDs Sie in den Aufrufen der Funktion mv noch eintragen müssen.
int mv (int uid, char* l, char * bkname, int bkindex) { ItemRef fr = item::alloc (); int result = 0; String lname = string::alloc (); String lname2 = string::alloc ();
item::define (fr, 0, uid);
if (strlen (bkname)) result = layer::add (l, bkname, 0, lname); else result = layer::add_i (l, bkindex, 0, lname);
printf ("# Frame %d : (%s)\n", uid, lname);
if (result == 0) { result = frame::move_to_layer (fr, lname, 0, 0); if (result != 0) { printf ("# Layoutrule 'Move to layer' : Ignoring error %d (%s)\n", result, serror (result)); } else { printf ("LAYER of %d : (%s)\n", uid, frame::get_layer (fr, lname2)); } }
printf ("\n"); string::release (lname); string::release (lname2); item::release (fr); return 1; }
int main () { mv (262, "", "Ebene 6", 0); mv (305, "YY", "Ebene 6", 0);
mv (464, "", 0, 2); mv (466, "ZZ", 0, 2); return 0; }
static int layer::add_i(
char* newName,
int index,
int doSelect = 0,
char* outName = 0)
Anlegen einer neuen Dokument-Ebene hinter einer mit ihrem Index gegebenen Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
newName | String oder char* | - | Name der neuen Ebene. Existiert mit dem angegebenen Namen
bereits eine Ebene, wird keine neue Ebene angelegt und die Position der existierenden Ebene bleibt unverändert. 0 oder "" : Ist kein Name angegeben, wird ein neuer Defaultname ermittelt. |
behind | int | - | 0-basierter Index, hinter der die neue Ebene liegen soll. Wird diese Ebene nicht gefunden, wird der neue Layer als unterste Ebene angelegt. |
doSelect | int | 0 | Soll die Ebene sofort aktiviert werden? 0 : nein 1 : ja Von Illustrator wird der Parameter ignoriert. |
outName | String oder char* | 0 | Allokierter Speicher für den Namen der neu angelegten Ebene. 0 : Rückgabe ignorieren |
Um das Skript auszuführen, benötigen Sie ein Testdokument mit mindestens 3 Ebenen von denen eine den Namen "Ebene 6" tragen muss. Das Dokument sollte außerdem vier Rahmen enthalten, deren UIDs Sie in den Aufrufen der Funktion mv noch eintragen müssen.
int mv (int uid, char* l, char * bkname, int bkindex) { ItemRef fr = item::alloc (); int result = 0; String lname = string::alloc (); String lname2 = string::alloc ();
item::define (fr, 0, uid);
if (strlen (bkname)) result = layer::add (l, bkname, 0, lname); else result = layer::add_i (l, bkindex, 0, lname);
printf ("# Frame %d : (%s)\n", uid, lname);
if (result == 0) { result = frame::move_to_layer (fr, lname, 0, 0); if (result != 0) { printf ("# Layoutrule 'Move to layer' : Ignoring error %d (%s)\n", result, serror (result)); } else { printf ("LAYER of %d : (%s)\n", uid, frame::get_layer (fr, lname2)); } }
printf ("\n"); string::release (lname); string::release (lname2); item::release (fr); return 1; }
int main () { mv (262, "", "Ebene 6", 0); mv (305, "YY", "Ebene 6", 0);
mv (464, "", 0, 2); mv (466, "ZZ", 0, 2); return 0; }
static int layer::add_prefixed(
char* prefix,
char* behind,
int doSelect = 0,
char* outName = 0)
Anlegen einer neuen benannten Dokument-Ebene hinter einer gegebenen Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
prefix | String oder char* | - | Name/Präfix der neuen Ebene. Existiert mit dem angegebenen Präfix
bereits eine Ebene, wird eine neue Ebene mit der nächsten Zählnummer agelegt.
(Ist also z.B.der Präfix Lala angegeben und die Ebenen Lala, Lala 1 und und Lala 30 existieren, wird die Ebene Lala 31 erzeugt.) 0 oder "" : Ist kein Name angegeben, wird ein neuer Defaultname ermittelt. |
behind | String oder char* | - | Name der Ebene, hinter der die neue Ebene liegen soll. Wird diese Ebene nicht gefunden, wird der neue Layer als unterste Ebene angelegt. |
doSelect | int | 0 | Soll die Ebene sofort aktiviert werden? 0 : nein 1 : ja |
outName | String oder char* | 0 | Allokierter Speicher für den Namen der neu angelegten Ebene. 0 : Rückgabe ignorieren |
static int layer::add_prefixed_i(
char* prefix,
int behind,
int doSelect = 0,
char* outName = 0)
Anlegen einer neuen benannten Dokument-Ebene hinter einer über ihren Index gegebenen Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
prefix | String oder char* | - | Name/Präfix der neuen Ebene. Existiert mit dem angegebenen Präfix
bereits eine Ebene, wird eine neue Ebene mit der nächsten Zählnummer agelegt.
(Ist also z.B.der Präfix Lala angegeben und die Ebenen Lala, Lala 1 und und Lala 30 existieren, wird die Ebene Lala 31 erzeugt.) 0 oder "" : Ist kein Name angegeben, wird ein neuer Defaultname ermittelt. |
behind | int | - | 0-basierter Index, hinter der die neue Ebene liegen soll. Wird diese Ebene nicht gefunden, wird der neue Layer als unterste Ebene angelegt. |
doSelect | int | 0 | Soll die Ebene sofort aktiviert werden? 0 : nein 1 : ja |
outName | String oder char* | 0 | Allokierter Speicher für den Namen der neu angelegten Ebene. 0 : Rückgabe ignorieren |
static char* layer::default_name(char* prefix, char* newName)
Ermittle einen nächsten gültigen Defaultnamen, der für einen neuen Layer verwendet werden kann. Ist der Präfix leer, bestimmt InDesign® den Namen. Ist ein Präfix gegeben, wird eine Nummer an den Präfix angehangen. Hat das Dokument schon 999 Ebenen, gibt die Methode auf.
Name | Typ | Default | Beschreibung |
Return | String oder char* (Abhängig von Parameter newName) | Ermittelter Defaultname. Entspricht Parameter newName. | |
prefix | String or char* | - | Präfix zur Bestimmung des Ebenennamens. Als Erweiterung wird die erste freie Nummer verwendet, die noch nicht verwendet wird. Bei 999 gibt die Methode auf. |
newName | String or char* | - | Reservierter Speicher für die Rückgabe |
newName = layer::default_name (prefix, newName);
static int layer::get_visible_i(int index)
Ist die Ebene sichtbar oder nicht?
Name | Typ | Default | Beschreibung |
Return | int | 1 : sichtbar 0 : unsichtbar |
|
index | int | - | Bei 0 beginnende Ebenennummer. 0 ist die oberste Ebene. |
static int layer::get_visible(char* name)
Ist die Ebene sichtbar oder nicht?
Name | Typ | Default | Beschreibung |
Return | int | 1 : sichtbar 0 : unsichtbar |
|
name | String oder char* | - | Ebenenname |
static int layer::get_lock_i(int index)
Ist die Ebene gesperrt oder nicht?
Name | Typ | Default | Beschreibung |
Return | int | 1 : gesperrt 0 : editierbar |
|
index | int | - | Bei 0 beginnende Ebenennummer. 0 ist die oberste Ebene. |
static int layer::get_lock(char* name)
Ist die Ebene gesperrt oder nicht?
Name | Typ | Default | Beschreibung |
Return | int | 1 : gesperrt 0 : editierbar |
|
name | String oder char* | - | Ebenenname |
static int layer::lock_i(int index)
Sperre eine Ebene über ihren Index.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
index | int | - | Bei 0 beginnende Ebenennummer. 0 ist die oberste Ebene. |
static int layer::lock(char* name)
Sperre eine benannte Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode 0 : editierbar | |
name | String oder char* | - | Ebenenname |
static int layer::unlock_i(int index)
Entsperre eine Ebene über ihren Index.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
index | int | - | Bei 0 beginnende Ebenennummer. 0 ist die oberste Ebene. |
static int layer::unlock(char* name)
Entsperre eine benannte Ebene.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
name | String oder char* | - | Ebenenname |
static char* layer::get_name(ItemRef frameRef)
Ermittle den Namen der Ebene, auf der ein Dokumentrahmen liegt.
Name | Typ | Default | Beschreibung |
Return | char* | Name der Ebene
Der Rückgabewert darf nicht verändert werden und wird bei folgenden Aufrufen der Funktion überschrieben. Hier finden Sie Informationen zu readonly-Rückgaben von Funktionen. |
|
frameRef | ItemRef | - | Gültiger Dokumentrahmen |
Zeige den Ebenennamen des Skriptrahmens
showmessage (layer::get_name (gFrame));
static int layer::get_index(ItemRef frameRef)
Ermittle den Index der Ebene, auf der ein Dokumentrahmen liegt. Die oberste Ebene hat den Index 0 - in der Ebenenpalette ist das der unterste Eintrag.
Name | Typ | Default | Beschreibung |
Return | int | 0-basierter Ebenenindex. Die oberste Ebene hat den Index 0 - in der Ebenenpalette ist das der unterste Eintrag. | |
frameRef | ItemRef | - | Gültiger Dokumentrahmen |
Zeige den Ebenenindex des Skriptrahmens
showmessage ("%d", layer::get_index (gFrame));
static int layer::get_printable(char* lname)
Ist eine Ebene druckbar?
Name | Typ | Default | Beschreibung |
Return | int | 1 : Ebene wird gedruckt 0 : Fehler oder Ebene wird nicht gedruckt |
|
lname | String oder char* | - | Name der Ebene |
int main () { char * lname = "Ebene 2"; int state = layer::get_printable (lname); wlog ("", "%s : %d\n", lname, state); layer::set_printable (lname, !state); wlog ("", "%s : %d\n", lname, layer::get_printable (lname)); return 0; }
static int layer::set_printable(char* lnamem, int state = 1)
Ebene (nicht) druckbar machen.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
lname | String oder char* | - | Name der Ebene |
state | int | 1 | Druckbarkeit 0 : Ebene kann nicht gedruckt werden 1 : Ebene kann gedruckt werden |
int main () { char * lname = "Ebene 2"; int state = layer::get_printable (lname); wlog ("", "%s : %d\n", lname, state); layer::set_printable (lname, !state); wlog ("", "%s : %d\n", lname, layer::get_printable (lname)); return 0; }
static int layer::get_ui_color()
Hole den Namen der Farbe einer Ebene des Frontdocumentes. Die Farbnamen sind die fest in InDesign integrierten sog. Stock-Colors wie sie im Dialog 'Ebenenoptionen' angezeigt werden. Benutzerdefinierte Farben werden im Format "RGB r g b" mit r, g, b ∈ [0-255] zurückgegeben.
Benutzerdefinierte Farben werden von comet_pdf nicht unterstützt!
Die Funktion ist nur für den internen Gebrauch implementiert worden. Es gibt momentan noch keine Set-Funktion.
Name | Typ | Default | Beschreibung |
Return | int | 0 oder Fehlercode | |
lname | String oder char* | - | Name der Ebene |
Alphabetic index HTML hierarchy of classes or Java