Hi zusammen,
ich bin als Scripting Noob schon echt weit gekommen, aber jetzt brauche ich mal einen Profi:)
Dieses Script soll erweitert werden und neben dem PDF auch JPEG oder PNG exportieren.
Code #target indesign //Deaktivieren der Abfrage beim Öffnen der Dateien wenn sich eine Verknüpfung geändert hat. app.scriptPreferences.userInteractionLevel = UserInteractionLevels.neverInteract; //Definieren der aktuellen Sprache DE oder EN //EN2 und DE2, da im Dokument Aufgaben_DE als Source verwendet wird. Die jeweilige Sprachdatei wird dann umkopiert und überschreibt die aktuelle Source. //Beim Einbinden eines neuen Datensourcefiles würde Komma als Trennzeichen verwendet und nicht Tabstop. var myLang = []; //myLang.push("EN2"); myLang.push("DE_Geburtstag"); myLang.push("DE_Hochzeit"); myLang.push("DE2"); //Definieren der KundenURL mit Kommentar zur Bestellung var URL = []; URL.push("WWW.PHOTOBOOTH-DELUXE.DE"); //URL.push(""); // //URL.push(""); // //Schleife durch die URL-Liste for ( u=0; u < URL.length; u++ ) { //Ordner für den Kunden erstellen var f = new Folder("O:/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Kundenexport/" + URL[u] + "/"); if (!f.exists) f.create(); //Definition des Ordners in dem die Indd Files mit den Layouts liegen. Wird für die Funktion getSubFolders verwendet. var myFolder = Folder("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Layouts") if ( myFolder != null ) { var myFiles = []; //Ermittle alle Indd Dateien im Layouts Ordner (inkl. Subfolder) GetSubFolders(myFolder); //Schleife durch alle gefundenen Indd-Files aus dem Layoutordner if ( myFiles.length > 0 ) { for ( i=0; i < myFiles.length; i++ ) { //Schleife durch die ausgewählten Sprachdateien for ( l=0; l< myLang.length; l++) { $.writeln(URL + " - " + myLang[l] + " - " + myFiles[i]); //Öffnen der Indd-Datei app.open(myFiles[i]); //Umbenennen der Textvariablen URL in die Kunden URL app.activeDocument.textVariables.item ('URL').variableOptions.contents = URL[u]; var myDoc = app.activeDocument; // Kopieren der Aufgabenliste in den Kundenordner File("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Aufgaben_" + myLang[l] + ".csv").copy(File("O:/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Kundenexport/" + URL[u] + "/Aufgaben_" + myLang[l] + ".csv")); $.sleep(500); // Überschreiben des Datasourcefiles mit der aktuell gewählten Sprache File("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Aufgaben_" + myLang[l] + ".csv").copy(File("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Aufgaben_DE.csv")); $.sleep(500); //Aktuallisieren des Indd Dokuments mit den neuen Datasourcewerten. myDoc.dataMergeProperties.updateDataSource(); //Exportieren der Datenzusammenführung als PDF var myLocation = "O:/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Kundenexport/" + URL[u] + "/" var myName = (myDoc.name.replace(".indd","")); var myExport = myLocation + myName + "_" + myLang[l] + ".pdf" myDoc.dataMergeProperties.exportFile(myExport, "[Qualitativ hochwertiger Druck]", ); //************************************************************ //HIER MÜSSTE NUN NOCH DER EXPORT ALS JPG ODER PNG REIN. //DIE DATEIEN SOLLEN WIE DAS PDF BENANNT WERDEN MIT _lfdNummer //************************************************************ app.documents.everyItem().close(SaveOptions.NO); } } } } } function GetSubFolders(theFolder) { var myFileList = theFolder.getFiles(); for (var i = 0; i < myFileList.length; i++) { var myFile = myFileList[i]; if (myFile instanceof Folder){ GetSubFolders(myFile); } else if (myFile instanceof File && myFile.name.match(/\.indd$/i)) { myFiles.push(myFile); } } } Kann sich einer der anwesenden Profis dem Problem annehmen. Selbstverständlich bezahle ich ordentlich:)
Gruß
Jürgen