[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt ID CS4 - Ebenen Sichtbarkeit ändern

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

ID CS4 - Ebenen Sichtbarkeit ändern

TMA
Beiträge gesamt: 399

3. Aug 2010, 16:59
Beitrag # 1 von 15
Bewertung:
(7274 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,
als Java-Script Neuling stehe ich grad mal auf dem Schlauch.

Folgendes:
Ich habe ein ID CS4 Dokument das ca. 8 Ebenen enthält.
Per Script möchte ich die Sichtbarkeit aller Ebenen ausschalten und nur bei 2 Ebenen (per Layername) wieder einschalten.

Wie mache ich das am besten? Kann ich die Sichtbarkeit aller Ebenen auf einmal ändern oder gehts nur in einer Schleife?

Gruß
TMA
X

ID CS4 - Ebenen Sichtbarkeit ändern

Uwe Laubender
Beiträge gesamt: 5316

3. Aug 2010, 17:04
Beitrag # 2 von 15
Beitrag ID: #448062
Bewertung:
(7270 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, TMA!
Mach's mit einer Schleife, die durch alle Layers geht. Innerhalb der Schleife kannst Du bereits eine Fallunterscheidung über ein if-Statement mit den Namen der Ebenen vornehmen, die eingeschaltet bleiben sollen.


als Antwort auf: [#448059]

ID CS4 - Ebenen Sichtbarkeit ändern

TMA
Beiträge gesamt: 399

3. Aug 2010, 17:11
Beitrag # 3 von 15
Beitrag ID: #448064
Bewertung:
(7269 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Da ich Neuling in Java-Script bin, weis ich nicht genau wie das geht. Ein paar Zeilen code würden mir schon helfen.
So ganz verstehe ich das ObjectModel noch nicht. Bin eher der AppleScript Typ. Es soll aber schon über Java-Script gelöst werden.

Gruß
TMA


als Antwort auf: [#448062]

ID CS4 - Ebenen Sichtbarkeit ändern

Gerald Singelmann
  
Beiträge gesamt: 6269

3. Aug 2010, 17:36
Beitrag # 4 von 15
Beitrag ID: #448067
Bewertung:
(7247 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Code
app.activeDocument.layers.item("ausschalten").visible = false; 
app.activeDocument.layers.item("einschalten").visible = true;


(Mal wieder aus dem Gedächtnis... die Eigenschaft ist doch "visible", oder?)


als Antwort auf: [#448064]

ID CS4 - Ebenen Sichtbarkeit ändern

TMA
Beiträge gesamt: 399

3. Aug 2010, 17:39
Beitrag # 5 von 15
Beitrag ID: #448068
Bewertung:
(7245 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Könnte auch ".currentVisibility" sein.

Ich probier mal.


als Antwort auf: [#448067]

ID CS4 - Ebenen Sichtbarkeit ändern

Uwe Laubender
Beiträge gesamt: 5316

3. Aug 2010, 17:43
Beitrag # 6 von 15
Beitrag ID: #448070
Bewertung:
(7242 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, TMA!
Bevor ich jetzt Codezeilen hier poste noch ein Hinweis: Du kennst das Programm ExtendScript Toolkit von Adobe? Wird jedem InDesign oder jeder Creative Suite mitgeliefert. Dort gibt es den Object Model Viewer (OMV), der Dir alle zur Verfügung stehenden Objekte mit deren Methoden und Eigenschaften auflistet.
Eine HTML- und eine durchsuchbare chm-Version (Windows-Hilfedateienformat) davon gibt's auch (dankenswerterweise vom Scripter Jongware). Falls Du auf dem Mac bist kannst Du mit der Freeware iChm die chm-Version des OMVs dort durchsuchbar einsehen:

http://www.jongware.com/idjshelp.html

idcs4js_chm_3.0.3d.zip
jscorechm.zip
scriptuichm.zip

Schließlich hat Gerald Singelmann einen Kurs für JavaScript-Neulinge im Angebot "Online-Training "InDesign-Scripting für Grafiker"":
http://www.hilfdirselbst.ch/...i?post=429673#429673

Wenn Du die Suche in der Scriptwerkstatt bemühst, dann müßtest Du auch schon auf den ein oder anderen brauchbaren Codeschnipsel gestoßen sein ;-)

Aber ich sehe gerade, Gerald hat bereits geantwortet…


als Antwort auf: [#448064]
(Dieser Beitrag wurde von Uwe Laubender am 3. Aug 2010, 17:47 geändert)

ID CS4 - Ebenen Sichtbarkeit ändern

Uwe Laubender
Beiträge gesamt: 5316

3. Aug 2010, 17:46
Beitrag # 7 von 15
Beitrag ID: #448071
Bewertung:
(7237 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, Gerald!
Ja doch: "layers.item("Ebenenname").visible = true" oder "false"…


als Antwort auf: [#448067]

ID CS4 - Ebenen Sichtbarkeit ändern

TMA
Beiträge gesamt: 399

3. Aug 2010, 17:50
Beitrag # 8 von 15
Beitrag ID: #448072
Bewertung:
(7234 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,
Toolkit benutze ich. Leider blicke ich da noch nicht so ganz durch. Werd mich da mal durchwuseln. Unklar ist mir auch noch wie man was loggen kann. Bisher noch nichts gefunden.

Der Link von JongWare ist super. Besten Dank.

Die Suche habe ich natürlich bemüht aber nichts passendes gefunden (sonst hätte ich kein neues Thema aufgemacht).

Schonmal besten Dank allen und Gruß
TMA


als Antwort auf: [#448070]

ID CS4 - Ebenen Sichtbarkeit ändern

TMA
Beiträge gesamt: 399

4. Aug 2010, 09:41
Beitrag # 9 von 15
Beitrag ID: #448106
Bewertung:
(7111 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,
habe es doch noch hinbekommen. Hier der code:
Code
var myDoc = app.documents[0]; 

// ebenen die sichtbar sein sollen
var layerText = "Text";
var layerKlinker = "Klinker";
var myDocLayers = myDoc.layers;

// Schleife durch die Anzahl der Ebenen. Gibt es keinen Match auf den Ebenennamen wird die Ebene unsichtbar gemacht
for ( var n = 0; n < myDocLayers.length; n++){
if (myDocLayers[n].name != layerText && myDocLayers[n].name != layerKlinker){
myDocLayers[n].visible = false;
}
}


Was mich jetzt noch interessiert:
Wie kann ich im ExtendScript Toolkit2 in der JavaScript-Konsole was mitloggen?

Gruß
TMA


als Antwort auf: [#448072]

ID CS4 - Ebenen Sichtbarkeit ändern

Gerald Singelmann
  
Beiträge gesamt: 6269

4. Aug 2010, 10:35
Beitrag # 10 von 15
Beitrag ID: #448111
Bewertung:
(7104 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Code
$.writeln("log this"); 



als Antwort auf: [#448106]

ID CS4 - Ebenen Sichtbarkeit ändern

TMA
Beiträge gesamt: 399

4. Aug 2010, 10:39
Beitrag # 11 von 15
Beitrag ID: #448114
Bewertung:
(7103 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Herr Singelmann,
besten Dank dafür. Wo steht so etwas beschrieben? Habe bisher nichts gefunden.

Gruß
TMA


als Antwort auf: [#448111]

ID CS4 - Ebenen Sichtbarkeit ändern

Martin Fischer
  
Beiträge gesamt: 12783

4. Aug 2010, 12:43
Beitrag # 12 von 15
Beitrag ID: #448140
Bewertung:
(7085 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
> Wo steht so etwas beschrieben? Habe bisher nichts gefunden.

Zum Beispiel im Objektmodell-Betrachter vom ExtendScript Toolkit.
Oder unter /Hilfe/Core JavaScript Classes vom ExtendScript Toolkit 2 (für InDesign CS3).


als Antwort auf: [#448114]
(Dieser Beitrag wurde von Martin Fischer am 4. Aug 2010, 12:46 geändert)

ID CS4 - Ebenen Sichtbarkeit ändern

Gerald Singelmann
  
Beiträge gesamt: 6269

4. Aug 2010, 12:44
Beitrag # 13 von 15
Beitrag ID: #448141
Bewertung:
(7084 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Das steckt alles im ExtendScript Toolkit, im Object Model Viewer.
Ich hatte eine ganze Reihe von Aha-Erlebnissen, als ich die Abschnitte $ und Globale Funktionen mal durchstöbert hab.

Es sollte mich nicht wundern, wenn es auch im JS Tools Guide erwähnt wird.

(Siehe Screenshots)


als Antwort auf: [#448114]
Anhang:
Bild 1.png (53.8 KB)   Bild 2.png (87.7 KB)   Bild 3.png (22.2 KB)

ID CS4 - Ebenen Sichtbarkeit ändern

Gerald Singelmann
  
Beiträge gesamt: 6269

4. Aug 2010, 12:45
Beitrag # 14 von 15
Beitrag ID: #448143
Bewertung:
(7082 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Dang, Martin war schneller. Aber ich hab ja auch drei Screenshots gemacht ;)


als Antwort auf: [#448141]

ID CS4 - Ebenen Sichtbarkeit ändern

TMA
Beiträge gesamt: 399

4. Aug 2010, 12:54
Beitrag # 15 von 15
Beitrag ID: #448146
Bewertung:
(7077 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Besten Dank.

Gruß
TMA


als Antwort auf: [#448143]
X