ich importiere per JScript eine XML Datei nach InDesign (Texte und Bilder).
Problem bei den Bildern: sie erscheinen im Hintergrund (Hinter dem Text, sind also nicht sichtbar, weil durch Text überdeckt) - obwohl in der Mustervorlage die Ebenenreihenfolgen etc. alles richtig ist (also Bilder stehen über Texte) nach Ausführung des Scripts ist die Ebenenreihenfolge nicht mehr wie ursprünglich in der Mustervorlage.
Lösung des Problems: entweder das Ebenenelement des Bildes nach weiter oben schieben oder Bild mit rechter Maustaste anklicken > Anordnen > in den Vordergrund wählen. Das müsste man dann aber bei jedem Bild "händisch" machen.
Frage nun: Kann ich diesem Problem irgendwie vorbeugen oder bessergesagt bezwecken, dass nach dem Import die Bilder im Vordergrund sind und der Text hinten?
Folgende Ansätze habe ich gefunden, aber nicht korrekt umsetzen können: - LocationOptions.BEFORE (http://www.hilfdirselbst.ch/foren/%5BJava_Script%5D_Reihenfolge_der_InDesign_Ebenen_%E4ndern_P377230.html) wie wende ich das an? - Oder eine eigene Idee: es muss doch eine Möglichkeit geben, mit der ich "Anordnen > in den Vordergrund" per Script schreiben kann?
Gruß J.R.
Objekt (Bild) in den Vordergrund (vor den Text) bringen (InDesign CS5, JScript, Windows)
Wo wende ich nun den Befehl "bringToFront()" an? Nach "_ebBild1 = getMasterPageItem("ebBild1", _page)" also so: "_ebBild1 = getMasterPageItem("ebBild1", _page).bringToFront()"?
Zu deinen Fragen: - Ich habe nur eine Ebene "Default" unter dieser sind die ganzen Elemente enthalten (Bildrahmen, Textrahmen etc.) - Ja, ich habe das ExtendScript Toolkit CS5 - schreibe das JS ja dadrin - das Objektmodell kann ich auch aufrufen aber da habe ich aber bisher nichts gefunden (fast nie).
Besten Dank Gruß J.R.
(Dieser Beitrag wurde von JonesRidder am 3. Mai 2011, 12:57 geändert)
Objekt (Bild) in den Vordergrund (vor den Text) bringen (InDesign CS5, JScript, Windows)
Der Befehl bringToFront() ist auf ein pageItem anzuwenden, also nicht auf ein Bild, sondern auf den 'Container' (meist rectangle) des Bilds.
Vermutlich ist _ebBild1 das Rechteck, welches das Bild enthält. Dies stellst Du mit folgendem Code in den Vordergrund:
In Deinem Beispiel etwa
Allerdings kann eine nachträgliche Platzierung von Textrahmen oder anderen pageItems (Rahmen, Ovale, Gruppen ...) diese Ordnung wieder stören. Neue Objekte werden stets im Vordergrund angelegt und drängen damit vorhandene Objekte in den Hintergrund.
Scheidet eine Arbeit mit unterschiedlichen Ebenen für Text und Bilder aus? Darüber wäre die Lage dieser Elemente leichter zu steuern.
In CS5 ist eventuell eine Steuerung auch über die Sub-Ebenen, auf welchen die pageItems innerhalb einer Ebene liegen, möglich. Da ich nicht mit CS5 arbeite, fehlt mir die entsprechende Erfahrung.
Viele Grüße Martin
Objekt (Bild) in den Vordergrund (vor den Text) bringen (InDesign CS5, JScript, Windows)
Ja genau, _ebBild1 ist der Name des Rechtecks ... und siehe da: ES FUNKTIONIERT (war ja auch nicht anders zu erwarten ;-) - bei der kompetenten Hilfe!) Vielen Dank!
Antworten zu deinen Fragen:
- bzgl. der Störung der Reihenfolgen: Das Problem leuchtet mir ein, bei mir trifft das jedoch nicht zu, da ich nur "einmal" importiere/platziere (sprich: es werden nachträglich keine Änderungen in der Hinsicht vorgenommen). Danke aber für den Hinweis.
- Arbeiten mit mehreren Ebenen .... ? Keine Ahnung, da kenne ich mich ZU WENIG mit InDesign aus.
Noch eine Frage nebenbei: Gibt es einen Grund, warum du nicht mit CS5 sondern mit CS3 (einer "älteren Version" arbeitet? Oder ist es einfach nur der, dass man sich besser in der jeweiligen (also CS3 i.d.F.) auskennt?
Gruß J.R.
Objekt (Bild) in den Vordergrund (vor den Text) bringen (InDesign CS5, JScript, Windows)
Ich arbeite mit CS4 (und bei Bedarf gelegentlich mit CS3). In CS5 kann ich meine Projekte wg. eines noch nicht behobenen Bugs (siehe Leere Seiten bei Fußnoten Indesign 7.0.4) nicht zufriedenstellend erledigen. Die Vorteile neuer Funktionen in CS5 wiegen für mich die Nachteile dieses Bugs nicht auf.
Viele Grüße Martin
(Dieser Beitrag wurde von Martin Fischer am 3. Mai 2011, 13:55 geändert)