[GastForen Programmierung/Entwicklung JavaScript Optimierung doc2pdf-withPresets.jsx

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

Optimierung doc2pdf-withPresets.jsx

rahel.burri
Beiträge gesamt: 6

24. Feb 2021, 17:36
Beitrag # 1 von 2
Bewertung:
(10311 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Zusammen

Ich habe folgendes Skript und möchte anbei ein paar Anpassungen machen. Leider bin ich noch nicht so geübt und frage hier um Hilfe.

Code
//doc2pdf-withPresets.jsx    
//von Martin Fischer
//
// Exportiert die aktive InDesign-Datei in PDF-Dateien.
// Dabei werden verschiedene PDF-Vorgabesets verwendet (s.u. PDF-Vorgabesets).
// Beim Export erhalten die PDF-Dateien den Namen des InDesign-Dokuments (ohne die Endung ".indd"),
// zuzüglich einem Trennzeichen ("_") und dem Namen des PDF-Vorgabesets, das zur Herstellung der PDF-
// Datei verwendet wurde.
// Als Vorgabesets werden entweder (1.) alle vorhandenen PDF-Vorgabesets verwendet (Voreinstellung) oder
// nur die Vorgabesets, die in der Liste unter 2. angegeben sind. Zur Aktivierung / Deaktivierung der einen oder anderen
// Einstellung bitte die Zuweisung auskommentieren bzw. den Kommentar entfernen.
//
//
// PDF-Vorgabesets
// bitte Vorgaben unter 1. oder 2. durch Löschen der Kommentierung wählen
//
// 1. alle vorhandenen Vorgaben berücksichtigen
// var myPresets = myGetPDFPresets(); ;
//
// 2. nur die unten angegebenen Vorgaben berücksichtigen
var myPresets = ["_druck", "_gzd"];

var myDoc = app.documents.firstItem();
var myFilePath = (myDoc.saved == true)
? myDoc.filePath
: '~/Desktop/TEstOrnder';
for (onePreset=0; onePreset < myPresets.length; onePreset++){
var pdfFile = new File( myFilePath +'/' + cut_suffix(myDoc.name ) + '_' + myCleanFileName(myPresets[onePreset]) + '.pdf' )
try{
myDoc.exportFile(ExportFormat.pdfType, pdfFile, false, myPresets[onePreset]);
}
catch(e){
alert("Error\nIst das Vorgabeset \"" + myPresets[onePreset] + "\" tatsächlich vorhanden?")
};
}

// Funktion zum Abtrennen der Dateiendung
function cut_suffix (oneFile) {
return oneFile.replace(/.indd$/i, '') ;
}

// Funktion zum Einlesen der PDF-Vorgabesets
function myGetPDFPresets(){
var myPDFPresets = new Array;
for(var onePreset = 0; onePreset < app.pdfExportPresets.length; onePreset++){
myPDFPresets.push(app.pdfExportPresets.item(onePreset).name);
}
return myPDFPresets;
}

// Funktion zum Ersetzen von (hinsichtlich des Dateisystems) problematischen
// Zeichen im Namen eines Vorgabesets (Slash, Backslash, Doppelpunkt)
function myCleanFileName(oneFilename){
var oneFilename = String(oneFilename.split('/').join('_').split('\\').join('_').split(':').join('¯'));
return oneFilename;
}



Ich möchte gerne definieren, dass die zwei unterschiedlichen PDFs welche generiert werden, in zwei unterschiedliche Ordner gespeichert werden. Der genaue Ordner-Pfad sollte dann im Skript angegeben werden.

Der Name der PDFs sollte gleich sein, aber nicht gleich wie der Dateiname. Die Basis des Namens sollte auch im Skript definiert sein und am Schluss die Seitenzahl (Das Indesign enthält jeweils nur eine Seite, aber die ist nicht immer die Seitenzahl 1)

Kann mir da eventuell jemand behilflich sein?

lg Rahel
X

Optimierung doc2pdf-withPresets.jsx

Martin Fischer
Beiträge gesamt: 12778

24. Feb 2021, 21:28
Beitrag # 2 von 2
Beitrag ID: #578937
Bewertung:
(10268 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Rahel,

das zitierte Skript stammt von mir.
Wie bereits per PM mitgeteilt, fehlen mir derzeit die Kapazitäten, das Skript an Deine Bedürfnisse anzupassen.

Vielleicht weiß jemand Anderer weiter oder kann das auf die speziellen Anforderungen als Auftragsarbeit erledigen.


als Antwort auf: [#578921]