[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Abweichungen eines bestimmten Objektstiles per Skript löschen

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

Abweichungen eines bestimmten Objektstiles per Skript löschen

lübcke
Beiträge gesamt: 23

21. Sep 2011, 15:36
Beitrag # 1 von 9
Bewertung:
(3440 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

gibt es eine Möglichkeit per Skript alle Abweichungen eines bestimmten Objektstiles (Objektstil xyz) in InDesign zu löschen?

Ich habe mehrere bereits platzierte Objekte die alle vom Originalstil abweichen, habe bereits versucht einen neuen Objektstil anzulegen und durch den alten zu ersetzen, es wird mir aber immer nur das markierte Objekt geändert.

Vielen Dank schon mal,
Tino
X

Abweichungen eines bestimmten Objektstiles per Skript löschen

Martin Fischer
  
Beiträge gesamt: 12783

21. Sep 2011, 16:06
Beitrag # 2 von 9
Beitrag ID: #480686
Bewertung:
(3426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Tino,

ersetze das betroffene Objektformat mit der Suchfunktion (Reiter OBJEKT) durch sich selbst – ohne weitere Parameter.


als Antwort auf: [#480680]
(Dieser Beitrag wurde von Martin Fischer am 21. Sep 2011, 16:07 geändert)

Abweichungen eines bestimmten Objektstiles per Skript löschen

lübcke
Beiträge gesamt: 23

21. Sep 2011, 16:27
Beitrag # 3 von 9
Beitrag ID: #480692
Bewertung:
(3409 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

danke für Deine schnelle Hilfe - an die Suchen/Ersetzen Funktion habe ich in diesem Zusammenhang gar nicht gedacht.

Hat auf jeden Fall super funktioniert!

Grüße Tino


als Antwort auf: [#480686]

Abweichungen eines bestimmten Objektstiles per Skript löschen

K45Tom
Beiträge gesamt: 238

21. Sep 2011, 21:02
Beitrag # 4 von 9
Beitrag ID: #480719
Bewertung:
(3383 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Genau hierzu (prinzipiell) hätte ich eine Frage zum Zuweisen von Absatzformaten - gibt es eine Möglichkeit ein Absatzformat (per Skript, nicht manuell) zuzuweisen, ohne, dass die manuellen (also alles, was nicht über Zeichenstil etc. gelöst ist) Änderungen verloren gehen?

Beispiel:

Manuelle Fußnotenplatzierung (zweispaltiger Text, Spalte von Fußnotenverweis egal, Fußnoten[text]platzierung immer rechte Spalte von unten nach oben [bitte, bitte Adobe: gebt uns mehr Möglichkeiten Fußnoten automatisiert zu platzieren!!!]).

Erster Fußnotentext auf der Seite mit Absatzlinie oben (Trennlinie zum Bodytext).

Gelöst wird das via Skript, das auf ein bestimmtes Absatzformat prüft und dem ersten Absatz eines Textrahmens ein Absatzformat zuweist, das identisch zu den weiteren Absätzen ist ... bis auf die beschriebene (Fußnoten-)Linie oben.

Dabei werden allerdings auch alle manuellen Eingriffe überschrieben. Es gibt zwar die Order manuelle Abweichungen zu vermeiden, aber wie das mit den Anweisungen so ist ... ;-)

Prinzipiell könnte man natürlich nur ein Absatzformat verwenden und als Abweichung die Linie dazufummeln bzw. wegnehmen - damit blieben auch die manuellen Abweichungen erhalten. Es würde mich trotzdem brennend interessieren, ob das auch via Skript mit Neuzuweisung eine Absatzformats geht.

Laaaanger Text - hoffentlich habe ich die Frage jetzt nicht totformuliert :)

Lösung bzw. Skriptschnipsel sollte ab InDesign CS4 funktionieren ... schon mal Danke für den Hirnschmalz!!!

Edit: Automatisiert wird mit JavaScript


als Antwort auf: [#480686]
(Dieser Beitrag wurde von K45Tom am 21. Sep 2011, 21:07 geändert)

Abweichungen eines bestimmten Objektstiles per Skript löschen

Martin Fischer
  
Beiträge gesamt: 12783

21. Sep 2011, 21:20
Beitrag # 5 von 9
Beitrag ID: #480721
Bewertung:
(3373 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jörg,

wie weist Du das Absatzformat zu?

Hast Du's schon mal mit dem applyParagraphStyle()-Befehl und der Option clearingOverrides = false versucht?


Code
app.selection[0].applyParagraphStyle(p_style, false); 



als Antwort auf: [#480719]
(Dieser Beitrag wurde von Martin Fischer am 21. Sep 2011, 21:22 geändert)

Abweichungen eines bestimmten Objektstiles per Skript löschen

Martin Fischer
  
Beiträge gesamt: 12783

21. Sep 2011, 21:27
Beitrag # 6 von 9
Beitrag ID: #480723
Bewertung:
(3361 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Bei manchen Abweichungen funktioniert das mit dem applyParagraphStyle()-Befehl mit clearingOverrides = false.
Die Linien scheinen allerdings nicht zu den Abweichungen zu gehören, die erhalten bleiben.

Vermutlich sind es die abweichenden Zeichenattribute, die erhalten bleiben.
Abweichende Absatzattribute werden gelöscht.


als Antwort auf: [#480721]
(Dieser Beitrag wurde von Martin Fischer am 21. Sep 2011, 21:28 geändert)

Abweichungen eines bestimmten Objektstiles per Skript löschen

K45Tom
Beiträge gesamt: 238

21. Sep 2011, 21:53
Beitrag # 7 von 9
Beitrag ID: #480725
Bewertung:
(3344 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hätte ich mir ja denken können, dass der Skriptprofi auf anhieb etwas aus dem Ärmel schüttelt ;-)

Danke Dir für den Ansatz, Martin!!

Gelöst ist das zurzeit so:
Code
#target InDesign 
var myDok = app.activeDocument;
var myTF = myDok.textFrames;

for (i = 0 ; i < myTF.length ; i++) {
var myPara = myTF[i].paragraphs;
var myFirstPara = myPara[0];
try {
if (myFirstPara.appliedParagraphStyle.name == "Fussnoten") {
myFirstPara.appliedParagraphStyle = "FussnotenLinie";
}
}

catch (myError) {}
}


... und bei diesem Konstrukt komme ich nicht dahinter, wie ich clearingOverrides auf false setzen kann ...

Muss aber nicht mehr heute sein - alter Nachtschwärmer ;-D


als Antwort auf: [#480721]

Abweichungen eines bestimmten Objektstiles per Skript löschen

Martin Fischer
  
Beiträge gesamt: 12783

21. Sep 2011, 22:03
Beitrag # 8 von 9
Beitrag ID: #480726
Bewertung:
(3335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jörg,

versuch's mal so:


Code
try  
{
if (myFirstPara.appliedParagraphStyle.name == "Fussnoten")
{
myFirstPara.applyParagraphStyle( app.activeDocument.paragraphStyles.itemByName("FussnotenLinie"), false );
}
}
catch (myError) {}



als Antwort auf: [#480725]

Abweichungen eines bestimmten Objektstiles per Skript löschen

K45Tom
Beiträge gesamt: 238

21. Sep 2011, 22:11
Beitrag # 9 von 9
Beitrag ID: #480727
Bewertung:
(3328 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
var Supergeil = "MegaDank";

;-))

Das ist es!!

Nochmals vielen Dank, Martin!!

... und eine gute Nacht, gell !


als Antwort auf: [#480726]
X