[GastForen Programmierung/Entwicklung JavaScript InDesign CS Ebene löschen per JavaScript

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

InDesign CS Ebene löschen per JavaScript

Jens Naumann
Beiträge gesamt: 5143

15. Jul 2004, 13:57
Beitrag # 1 von 3
Bewertung:
(780 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Liebe JavaScipter,

da ich leider keine Ahnung von dieser Materie habe, bitte ich Euch um Hilfe oder zumindest um eine Auskunft, ob dies überhaupt möglich ist.

Gerald Singelmann (gs) hat ein kleines Script zum Erstellen von Ebenen geschrieben (Quelle: http://www.hilfdirselbst.ch/...amp;topic_id=15780):

var nu1 = app.activeDocument.layers.add({name:"lavender"});
nu1.layerColor = 1766618734 ;
var nu1 = app.activeDocument.layers.add({name:"pink"});
nu1.layerColor = 1765962340 ;
var nu1 = app.activeDocument.layers.add({name:"purple"});
nu1.layerColor = 1766879856 ;

Nun hat InDesign standardmäßig beim Anlegen einer Datei immer eine "Ebene 1", die ich gerne gleichzeitig mit dem Erstellen von anderen Ebenen gelöscht haben möchte. Ist das überhaupt möglich? Ich stelle mir vor, dass wenn das Script in Reihe abgearbeitet wird, dann müssten ja bereits drei Ebenen vorhanden sein, bevor die ursprüngliche erste Ebene gelöscht wird. Ein Löschen ohne andere Ebenen ist ja nicht möglich.

Ich hoffe, Ihr könnt mir eine Auskunft geben oder eventuell sogar eine entsprechende Scriptzeile basteln. Das wäre ganz arg nett. Ich nehme auch gerne ein zweites Script zum Löschen, wenn es sich nicht in einem Script vereinen lässt.

Zur Information: Ich arbeite mit InDesign CS 3.0.1, sowohl PC als auch Mac.

Gott grüß die Kunst,
Jens

-----

hds @ schriftsetzer.net
X

InDesign CS Ebene löschen per JavaScript

Markus Walker
Beiträge gesamt: 494

16. Jul 2004, 08:06
Beitrag # 2 von 3
Beitrag ID: #97551
Bewertung:
(780 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Eine starke Sache, was da ID eingebaut hat! Die Dokumentation lässt aber noch Raum für Bücher, obwohl sie mit schlanken 1834 Seiten (wovon etwas über 600 Seiten über JavaScript) zeimlich mager gestaltet ist.

Um eine Ebene (Layer) zu löschen, enthält das layer-Objekt die Methode «remove()». Damit man den gewünschten Layer ansprechen kann, bedient man sich der Methode «item()» des layers-Objekt (man achte auf das s!), welches die betreffende Ebene als layer-Objekt zurück gibt. Die Methode «item()» akzeptiert als Parameter die Index-Nummer der betreffenden Ebene (zu oberst ist 0, mit den darunter liegenden Ebenen wird hoch numeriert; ist eher was für Programmierer) oder die Bezeichnung im Klartext, wie man sie im Programm verwendet (also was für normale Menschen).
Also zusammen gefasst will man in der Applikation <app> im aktiven Dokument <activeDocument> aus dem layers-Objekt <layers> das Ding mit der Bezeichnung «Layer 1» respektive mit der Index-Nummer 3 (ist ja nach obigen Anweisungen zu unterst) <item("Layer 1") / item(3)>.
Das zurückgegenene Objekt kann man einer Variable zuweisen (z.B. «la1»), welche dann entfernt <remove()> wird.
In JavaScript:

var la1 = app.activeDocument.layers.item("Layer 1");
la1.remove();


Wers kompackter mag, hängt aller zusammen. Das kann man auch mit den Zeilen zur Erzeugung der anderen Layern tun:

app.activeDocument.layers.add({name:"lavender"}).layerColor = 1766618734 ;
app.activeDocument.layers.add({name:"pink"}).layerColor = 1765962340 ;
app.activeDocument.layers.add({name:"purple"}).layerColor = 1766879856 ;
app.activeDocument.layers.item("Layer 1").remove();


Und für Schreibfaule bietet JavaScript das «with» Statement, womit wir dann folgendes kriegen:

with (app.activeDocument.layers)
{
add({name:"lavender"}).layerColor = 1766618734;
add({name:"pink"}).layerColor = 1765962340;
add({name:"purple"}).layerColor = 1766879856;
item("Layer 1").remove();
}

HTH


als Antwort auf: [#97383]

InDesign CS Ebene löschen per JavaScript

Jens Naumann
Beiträge gesamt: 5143

16. Jul 2004, 08:55
Beitrag # 3 von 3
Beitrag ID: #97566
Bewertung:
(780 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen Markus,

vielen Dank für die Antwort und die kompetente Hilfe. Ich hab's gleich ausprobiert und es funktioniert tadellos. Das ist mir eine große Hilfe. Danke nochmals.


Gott grüß die Kunst,
Jens

-----

hds @ schriftsetzer.net


als Antwort auf: [#97383]

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
29.10.2020

Ortsunabhängig
Donnerstag, 29. Okt. 2020, 10.00 - 10.30 Uhr

Webinar

Wir stellen Ihnen in diesem kostenlosen ca. 30-minütigen Webinar das neueste Produkt aus dem Hause Enfocus vor. Enfocus bringt mit BoardingPass eine pfiffige Lösung auf den Markt, welche eingehende Daten auf die wichtigsten druckrelevanten Kriterien hin gleich im Mail-Browser prüfen lässt. Mit BoardingPass sind auch Kundenberater und Avor-/Vertriebs-Mitarbeiter in der Lage, eingegangene Druckdaten innerhalb ihres Mail-Programmes sofort zu prüfen und dem Auftraggeber eine leicht verständliche Rückmeldung über diese zu geben. Die Druckdaten müssen also gar nicht erst über den internen Workflow des Druckdienstleisters laufen, sondern können direkt auf druckrelevante Kriterien geprüft und auch begutachtet werden.

Ja

Organisator: Impressed GmbH

Kontaktinformation: E-Mailschulungen AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=292

Enfocus BoardingPass
Veranstaltungen
02.11.2020 - 03.11.2020

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Montag, 02. Nov. 2020, 08.30 Uhr - Dienstag, 03. Nov. 2020, 17.00 Uhr

Kurs

Dieser Basic-Kurs ist der perfekte Einstieg in die Welt von InDesign, dem vielseitigen Layout-Programm. Sie lernen, wie InDesign aufgebaut ist, wie saubere Dokumente erstellt werden und wie man korrekt mit gelieferten InDesign-Projekten umgeht.

Preis: CHF 1'400.-
Dauer: 2 Tage

Nein

Organisator: Digicomp Academy AG

Kontaktinformation: Isil Günalp, E-Mailisil.guenalp AT digicomp DOT ch

https://www.digicomp.ch/weiterbildung/software-anwendungs-trainings/adobe-trainings/desktop-publishing/adobe-indesign-cc/kurs-indesign-cc-basic

Neuste Foreneinträge


Affinity Designer Objekte auswählen

Bestimmte PDF-Kommentare löschen

Affinity Photo und Photoshop: HSL-Farbbereich als Maske speichern

Buchdateien kopieren

Werkzeugleiste und Bedienfelder sind verschwunden

Wie importiere ich eine Word Datei mit Fussnoten in Indesign?

PDF Export mit Briefpapier einfügen

Pantone - reiner Buntaufbau

Flächendeckung einer Datei

Absurde Werte der automatischen Unterstreichungstärke
medienjobs