[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt JS Absatzformate umbenennen

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

JS Absatzformate umbenennen

netsrik
Beiträge gesamt: 93

11. Mär 2011, 12:44
Beitrag # 1 von 6
Bewertung:
(2836 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

jetzt versuche ich es in Javascript und das klappt auch nicht besser.
Ich möchte aus einer CS 1-Datei die Absatzformate umbenennen und ein paar davon in einen im Script dafür angelegten Absatzformateordner zu schieben.

Ich habe es erstmal nur mit den Absatzformaten versucht, die in den Ordner geschoben werden sollen, die anderen habe ich erstmal außen vor gelassen.

Dafür habe ich mir das Script von Martin Fischer (moveStyles2Group.jsx) ausgeborgt und darin weitergearbeitet. Das mit dem Umbenennen der Absatzformate funktioniert super, nur das Bewegen in den entsprechenden Ordner klappt nicht. Es muss also am letzten Teil im Script liegen.

Kann mal bitte jemand drüber schauen, woran es liegt?
Code
//FormatNamenUmbenennen.js  

var myOldStyleRubrik = ["Rubrik Überschrift", "Rubrik Aufzählungspunkte", "Rubrik DZ International", "Rubrik DZ Versuchsberichte", "Rubrik Fließtext", "Rubrik Fließtext ohne Einzug", "Rubrik Interview Überschrift", "Rubrik Interview Antwort", "Rubrik Interview Frage", "Rubrik Produkt-Info", "Rubrik Vorspann", "Rubrik_Initial_2zeilig"]
var myNewStyleRubrik = ["Rubrik_Titel", "Rubrik_Aufzaehlungspunkte", "Rubrik_DZ_International", "Rubrik_DZ_Versuchsberichte", "Rubrik_Bodytext", "Rubrik_Bodytext_ohne_Einzug", "Rubrik_Interview_Titel", "Rubrik_Interview_Antwort", "Rubrik_Interview_Frage", "Rubrik_Produkt-Info", "Rubrik_Vorspann", "Rubrik_Initial_2zeilig"]

var d = app.activeDocument;
var myStyles = d.paragraphStyles;

if (myOldStyleRubrik.length == myNewStyleRubrik.length){
for (k=0;k<myOldStyleRubrik.length;k++){
changeName(myOldStyleRubrik[k], myNewStyleRubrik[k]);
}
}
else{
alert(myOldStyleRubrik.length + " alte Formate gegen " + myNewStyleRubrik.length + " neue Formate.\rBitte angleichen.")
}

function changeName(oldStyle, newStyle){
try{
myStyles.item(oldStyle).name=newStyle;
}
catch(e){
//möglichereise newStyle nicht überschreibbar
alert("Absatzformat \"" + oldStyle + "\" nicht vorhanden oder Absatzformat \"" + newStyle + "\" nicht überschreibbar.")
}
}
Object.prototype.get = function( )
{
try {
var myObject = this.item( arguments[0].name );
myObject.name;
}
catch (e) {
var myObject = this.add( arguments[0] );
}
return myObject;
}

groupPS(d.name);

function groupPS(s){
var myGroup = d.paragraphStyleGroups.get({name: "Rubrik"});
var myStylesRubrik = d.paragraphStyles.itemByName ("Rubrik_Titel", "Rubrik_Aufzaehlungspunkte", "Rubrik_DZ_International", "Rubrik_DZ_Versuchsberichte", "Rubrik_Bodytext", "Rubrik_Bodytext_ohne_Einzug", "Rubrik_Interview_Titel", "Rubrik_Interview_Antwort", "Rubrik_Interview_Frage", "Rubrik_Produkt-Info", "Rubrik_Vorspann", "Rubrik_Initial_2zeilig") ;
//for (var i = myStylesRubrik.length-1; i > 1 ; i--){
try{
myStylesRubrik[i].move( LocationOptions.AT_BEGINNING, myGroup );
} catch(e){}
}
//}

Danke!
Viele Grüße,

Kirsten
X

JS Absatzformate umbenennen

Martin Fischer
  
Beiträge gesamt: 12783

11. Mär 2011, 13:13
Beitrag # 2 von 6
Beitrag ID: #466779
Bewertung:
(2829 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Kirsten,

die Prototype-Definition muß ganz am Anfang des Skripts stehen.
Code
Object.prototype.get = function( )    
{
try {
var myObject = this.item( arguments[0].name );
myObject.name;
}
catch (e) {
var myObject = this.add( arguments[0] );
}
return myObject;
}


Geht's dann?


als Antwort auf: [#466776]
(Dieser Beitrag wurde von Martin Fischer am 11. Mär 2011, 13:36 geändert)

JS Absatzformate umbenennen

Martin Fischer
  
Beiträge gesamt: 12783

11. Mär 2011, 14:01
Beitrag # 3 von 6
Beitrag ID: #466792
Bewertung:
(2808 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Geht's dann?


Nein, dann geht's immer noch nicht, weil in der Funktion groupPS() etwas durcheinandergeraten ist.


Versuch's mal damit.
Code
groupPS ( ["Rubrik_Titel", "Rubrik_Aufzaehlungspunkte", "Rubrik_DZ_International", "Rubrik_DZ_Versuchsberichte", "Rubrik_Bodytext", "Rubrik_Bodytext_ohne_Einzug", "Rubrik_Interview_Titel", "Rubrik_Interview_Antwort", "Rubrik_Interview_Frage", "Rubrik_Produkt-Info", "Rubrik_Vorspann", "Rubrik_Initial_2zeilig"] )  

function groupPS(p_styles) {
var myGroup = d.paragraphStyleGroups.get( { name: "Rubrik" } );
for (var i = p_styles.length-1; i > 1 ; i-- ) {
try {
d.paragraphStyles.itemByName.move( LocationOptions.AT_BEGINNING, myGroup );
} catch(e){}
}
}



als Antwort auf: [#466779]

JS Absatzformate umbenennen

netsrik
Beiträge gesamt: 93

11. Mär 2011, 16:09
Beitrag # 4 von 6
Beitrag ID: #466803
Bewertung:
(2784 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

jetzt bekomme ich keine Fehlermeldung mehr, aber er verschiebt die Absatzformate immer noch nicht in den Ordner Rubrik.
Code
//FormatNamenUmbenennen.js  

Object.prototype.get = function( )
{
try {
var myObject = this.item( arguments[0].name );
myObject.name;
}
catch (e) {
var myObject = this.add( arguments[0] );
}
return myObject;
}

var myOldStyleRubrik = ["Rubrik Überschrift", "Rubrik Aufzählungspunkte", "Rubrik DZ International", "Rubrik DZ Versuchsberichte", "Rubrik Fließtext", "Rubrik Fließtext ohne Einzug", "Rubrik Interview Überschrift", "Rubrik Interview Antwort", "Rubrik Interview Frage", "Rubrik Produkt-Info", "Rubrik Vorspann", "Rubrik_Initial_2zeilig"]
var myNewStyleRubrik = ["Rubrik_Titel", "Rubrik_Aufzaehlungspunkte", "Rubrik_DZ_International", "Rubrik_DZ_Versuchsberichte", "Rubrik_Bodytext", "Rubrik_Bodytext_ohne_Einzug", "Rubrik_Interview_Titel", "Rubrik_Interview_Antwort", "Rubrik_Interview_Frage", "Rubrik_Produkt-Info", "Rubrik_Vorspann", "Rubrik_Initial_2zeilig"]

var d = app.activeDocument;
var myStyles = d.paragraphStyles;

if (myOldStyleRubrik.length == myNewStyleRubrik.length){
for (k=0;k<myOldStyleRubrik.length;k++){
changeName(myOldStyleRubrik[k], myNewStyleRubrik[k]);
}
}
else{
alert(myOldStyleRubrik.length + " alte Formate gegen " + myNewStyleRubrik.length + " neue Formate.\rBitte angleichen.")
}

function changeName(oldStyle, newStyle){
try{
myStyles.item(oldStyle).name=newStyle;
}
catch(e){
//möglichereise newStyle nicht überschreibbar
alert("Absatzformat \"" + oldStyle + "\" nicht vorhanden oder Absatzformat \"" + newStyle + "\" nicht überschreibbar.")
}
}


groupPS(["Rubrik_Titel", "Rubrik_Aufzaehlungspunkte", "Rubrik_DZ_International", "Rubrik_DZ_Versuchsberichte", "Rubrik_Bodytext", "Rubrik_Bodytext_ohne_Einzug", "Rubrik_Interview_Titel", "Rubrik_Interview_Antwort", "Rubrik_Interview_Frage", "Rubrik_Produkt-Info", "Rubrik_Vorspann", "Rubrik_Initial_2zeilig"] );

function groupPS(p_styles){
var myGroup = d.paragraphStyleGroups.get({name: "Rubrik"});
for (var i = p_styles.length-1; i > 1 ; i--){
try{
d.paragraphStyles.itemByName.move( LocationOptions.AT_BEGINNING, myGroup );
} catch(e){}
}
}


Habe ich was vergessen?

Viele Grüße,

Kirsten


als Antwort auf: [#466792]

JS Absatzformate umbenennen

Martin Fischer
  
Beiträge gesamt: 12783

11. Mär 2011, 16:36
Beitrag # 5 von 6
Beitrag ID: #466809
Bewertung:
(2780 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Sorry.

Diesmal ist mir auf die Schnelle was schiefgelaufen.

Probier's damit:
Code
groupPS ( ["Rubrik_Titel", "Rubrik_Aufzaehlungspunkte"] ) 

function groupPS(p_styles) {
var myGroup = d.paragraphStyleGroups.get( { name: "Rubrik" } );
for (var i = p_styles.length-1; i >= 0 ; i-- ) {
try {
d.paragraphStyles.itemByName(p_styles[i]).move( LocationOptions.AT_BEGINNING, myGroup );
} catch(e){}
}
}



als Antwort auf: [#466803]

JS Absatzformate umbenennen

netsrik
Beiträge gesamt: 93

13. Mär 2011, 21:30
Beitrag # 6 von 6
Beitrag ID: #466896
Bewertung:
(2698 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

bingo, das war’s!
Vielen vielen Dank.

Gruß, Kirsten


als Antwort auf: [#466809]
X

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
14.05.2024

Online
Dienstag, 14. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Prozessoptimierung ist ein Teamsport! Keine Software und keine Maschine allein kann Ihnen helfen, die Effizienzpotenziale Ihres Betriebes maximal auszuschöpfen. Von der Auftragsannahme über die Vorstufe und den Druck bis hin zur Weiterverarbeitung – alles muss optimal ineinandergreifen. Apropos Weiterverarbeitung – in vielen Druckbetrieben fristet sie in Sachen Prozessoptimierung immer noch ein Schattendasein. Dabei liegen hier mittlerweile die größten Einsparpotenziale! In einem Webinar von Horizon und Impressed erfahren Sie, wie Sie diese Einsparungen realisieren können. Horizon, bekannt für innovative Lösungen in der Druckweiterverarbeitung, bietet mit iCE LiNK eine Workflowlösung für die Weiterverarbeitung. iCE LiNK überwacht, visualisiert und analysiert Produktionsabläufe und unterstützt bei der Wartung – damit immer alles reibungslos läuft. Den gleichen Anspruch hat der von Impressed entwickelte Impressed Workflow Server – er ist die smarte PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt. Im Webinar zeigen Ihnen die Experten von Horizon und Impressed, wie beide Lösungen im Team die Effizienz und Produktivität Ihres Betriebes steigern können. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Horizon

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

Einsparpotenziale in der Weiterverarbeitung
Veranstaltungen
16.05.2024

Online
Donnerstag, 16. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Nein

Organisator: Impressed / Günther Business Solutions

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

Und es geht doch: Automatisierung im Großformatdruck!