[GastForen Programme Print/Bildbearbeitung Adobe Illustrator Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

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

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

Ad-Rock
Beiträge gesamt: 11

27. Aug 2020, 08:46
Beitrag # 1 von 8
Bewertung:
(2645 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

ich benutze öfters ein Skript, um AI-Dateien zu SVG-Dateien zu konvertieren.

Das funktioniert an sich richtig gut, allerdings verhaspelt sich das Skript, wenn die Ausgangsdateinamen Punkte im Namen enthalten (z.B. "Datei1.2.ai").

Ich denke, dass dieser Code-Block angepasst werden müsste, aber trotz viel lesen und rumprobieren kriege ich es nicht hin...

Hier der gesamte Code des Skripts

Code
/********************************************************** 

ADOBE SYSTEMS INCORPORATED
Copyright 2005-2010 Adobe Systems Incorporated
All Rights Reserved

NOTICE: Adobe permits you to use, modify, and
distribute this file in accordance with the terms
of the Adobe license agreement accompanying it.
If you have received this file from a source
other than Adobe, then your use, modification,
or distribution of it requires the prior
written permission of Adobe.

*********************************************************/

/**********************************************************

Save as SVGs.jsx

DESCRIPTION

This sample gets files specified by the user from the
selected folder and batch processes them and saves them
as SVGs in the user desired destination with the same
file name.

Based on Adobe's "Save as PDFs" sample script, intended for Illustrator CS6

**********************************************************/

// Main Code [Execution of script begins here]

// uncomment to suppress Illustrator warning dialogs
// app.userInteractionLevel = UserInteractionLevel.DONTDISPLAYALERTS;

var destFolder, sourceFolder, files, fileType, sourceDoc, targetFile, svgSaveOpts;

// Select the source folder.
sourceFolder = Folder.selectDialog( 'Quell-Verzeichnis mit AI-Dateien auswählen', '~' );

// If a valid folder is selected
if ( sourceFolder != null )
{
files = new Array();
fileType = prompt( 'Select type of Illustrator files to you want to process. Eg: *.ai', ' ' );

// Get all files matching the pattern
files = sourceFolder.getFiles( fileType );

if ( files.length > 0 )
{
// Get the destination to save the files
destFolder = Folder.selectDialog( 'Ziel-Verzeichnis für die SVGs auswählen.', '~' );
for ( i = 0; i < files.length; i++ )
{
sourceDoc = app.open(files[i]); // returns the document object

// Call function getNewName to get the name and file to save the SVG
targetFile = getNewName();

// Call function getSVGOptions get the SVGSaveOptions for the files
svgSaveOpts = getSVGOptions( );

// Save as svg
sourceDoc.exportFile(targetFile, ExportType.SVG, svgSaveOpts );

sourceDoc.close();
}
alert( 'Files are saved as SVG in ' + destFolder );
}
else
{
alert( 'No matching files found' );
}
}


/*********************************************************

getNewName: Function to get the new file name. The primary
name is the same as the source file.

**********************************************************/

function getNewName()
{
var ext, docName, newName, saveInFile, docName;
docName = sourceDoc.name;
ext = '.svg'; // new extension for svg file
newName = "";

for ( var i = 0 ; docName[i] != "." ; i++ )
{
newName += docName[i];
}
newName += ext; // full svg name of the file

// Create a file object to save the svg
saveInFile = new File( destFolder + '/' + newName );


return saveInFile;
}


function getSVGOptions()
{
var svgSaveOpts = new ExportOptionsSVG();
svgSaveOpts.DTD = SVGDTDVersion.SVG1_1;
svgSaveOpts.embedRasterImages = false;
svgSaveOpts.cssProperties = SVGCSSPropertyLocation.STYLEATTRIBUTES;
svgSaveOpts.coordinatePrecision = 3;
svgSaveOpts.fontType = SVGFontType.SVGFONT;
svgSaveOpts.documentEncoding = SVGDocumentEncoding.UTF8;
svgSaveOpts.fontSubsetting = SVGFontSubsetting.None;
svgSaveOpts.response = false;
svgSaveOpts.sVGTextOnPath = true;
svgSaveOpts.slices = false;
svgSaveOpts.preserveEditability = false;
svgSaveOpts.sVGAutoKerning = false;
return svgSaveOpts; }


Hier noch ein Beispiel was passiert:

Drei Ursprungsdateien sollen umgewandelt werden:
900.10.ai
900.11.ai
900.12.ai

Erstellt wird nur eine SVG-Datei:
900.svg

Es sollten srei SVG-Dateien erstellt, leider wird nur die eine Datei mit falschem Namen erstellt.

Bei Quell-Dateien ohne Punkt im Namen funktioniert alles prima...

Kann mir da eventuell jemand helfen?

Vielen Dank und liebe Grüße,
BlindJones
X

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

Ad-Rock
Beiträge gesamt: 11

29. Aug 2020, 20:20
Beitrag # 2 von 8
Beitrag ID: #576562
Bewertung:
(2534 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Schade, dass hier niemand Lust hatte zu antworten.

Der Beitrag kann aber auch geschlossen werden, ich habe anderweitig Hilfe erhalten und das Skript funktioniert jetzt auch bei Sonderzeichen im Dateinamen.


als Antwort auf: [#576543]

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

Peter Lenz
Beiträge gesamt: 2237

29. Aug 2020, 21:01
Beitrag # 3 von 8
Beitrag ID: #576563
Bewertung:
(2519 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ad-Rock,

das hat nichts mit Lust zu tun. Es gibt nicht so viele Personen, die sich mit Illustrator-Scripten auskennen.

Außerdem antworten wir hier alle ehrenamtlich, und wenn uns die entsprechende Zeit zur Verfügung steht. Ich bin übrigens nicht mit Scripts vertraut.

Da Du anderweitig Hilfe bekommen hast, wäre es dennoch schön, wenn Du das Resultat hier veröffentlichen würdest.

Viele Grüße Peter
•------------------------------------------------------------------------------------------------------•
iMac 27" Retina 5K, i7, macOS 10.14.6 Mojave, Adobe CC2018, CC2019, CC2020


als Antwort auf: [#576562]

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

Ad-Rock
Beiträge gesamt: 11

29. Aug 2020, 21:53
Beitrag # 4 von 8
Beitrag ID: #576564
Bewertung:
(2494 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Hallo Ad-Rock,

das hat nichts mit Lust zu tun. Es gibt nicht so viele Personen, die sich mit Illustrator-Scripten auskennen.

Außerdem antworten wir hier alle ehrenamtlich, und wenn uns die entsprechende Zeit zur Verfügung steht. Ich bin übrigens nicht mit Scripts vertraut.

Da Du anderweitig Hilfe bekommen hast, wäre es dennoch schön, wenn Du das Resultat hier veröffentlichen würdest.

Viele Grüße Peter


Hallo Peter,

es geht hier trotz Illustrator-Unterforum um reines Java-Script, und in der Vergangenheit wurde mir so schnell in diesem Forum geantwortet, dass ich zeitlang Premmium-Mitglied geworden bin.
Das habe ich erneut überlegt vor diesem Post, aber über 110 Ansichten und keine Antwort ist schon schade. Vielleicht war die Frage zu kompliziert formuliert oder ähnliches.

Ich kopiere die Code-Lösung hier noch rein später, ich teste den Code erst noch auf Herz und Nieren.

LG
Ad-Rock


als Antwort auf: [#576563]

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

Thomas Richard
Beiträge gesamt: 18518

1. Sep 2020, 13:46
Beitrag # 5 von 8
Beitrag ID: #576591
Bewertung:
(1996 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Der Grund warum das nicht klappt, ist die nicht allzu behutsame Behandlung des vorherigen Dateinamens um ihn in einen neuen Namen umzuwandeln.

Code
docName = sourceDoc.name;  
ext = '.svg'; // new extension for svg file
newName = "";

for ( var i = 0 ; docName[i] != "." ; i++ )
{
newName += docName[i];
}
newName += ext; // full svg name of the file

// Create a file object to save the svg
saveInFile = new File( destFolder + '/' + newName );


Warum da nicht mit basename gearbeitet wurde oder zumindestens das kappen des alten Suffixes von hinten angegangen wurde, ist mir auch unklar. Der vorhandene Code sammelt die Namensteile Zeichenweise von vorne bis zum ersten Punkt und kappt ihn dort, daher die komischen Ergebnisse.


MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/


als Antwort auf: [#576564]

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

pixxxelschubser
Beiträge gesamt: 1611

2. Sep 2020, 21:53
Beitrag # 6 von 8
Beitrag ID: #576613
Bewertung: |||
(1817 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo @Ad-Rock,
entschuldige vielmals, dass manche (von den sehr sehr sehr wenigen) Illustrator Skriptern in ihrem Urlaub interessante Fragen zwar lesen, aber dennoch nicht antworten - gerade weil die Beantwortung einige, unter Umständen zeitraubende Tests und auf jeden Fall das Studium des Quellcodes voraussetzt.

Andere lesen, weil sie vielleicht eine Lösung anbieten möchten - es aber letztlich mangels der speziellen Problematik nicht vermögen.

In diesem Fall hat dir ja dein Crossposting https://community.adobe.com/...td-p/11390815?page=1 im Adobe Forum bereits weitergeholfen. Und Vasily hat dir dort eine gute Lösung aufgezeigt. Sie sollte problemlos funktionieren. Ich verwende diese Variante auch sehr häufig.

Aber nein. Auch wenn diese Frage durch Javascript und Regex zu lösen war - Illustrator Scripting mit reinem Javascript gleichzusetzen wäre ziemlich töricht. Das sind definitiv Äpfel und Birnen!


<edit>
Und nicht vergessen: Solange du die Namenskonventionen beachtest (manche Zeichen z.B. der Punkt gehören einfach NICHT in einen Dateinamen!) funktioniert auch das ursprüngliche Script

Wink
Viele Grüße
pixxxelschubser




Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean.

Isaac Newton




als Antwort auf: [#576564]
(Dieser Beitrag wurde von pixxxelschubser am 2. Sep 2020, 21:59 geändert)

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

Uwe Laubender
Beiträge gesamt: 4777

3. Sep 2020, 11:37
Beitrag # 7 von 8
Beitrag ID: #576628
Bewertung:
(1732 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat von pixxxelschubser …Und Vasily hat dir dort eine gute Lösung aufgezeigt. Sie sollte problemlos funktionieren…


Hallo zusammen,
da bin ich mir nicht ganz so sicher.

Muss mein "Bauchgefühl" aber noch mit ein paar Tests untermauern.
Vielleicht am Wochenende, falls ich Zeit habe.

Aber zum restlichen Adobe-Code muss ich noch sagen:
Potentielle Probleme birgt auch die Auswertung des Prompts zur Ermittlung des Werts der Variable fileType.

Zumindest findet keine Prüfung statt, ob der Anwender "Unsinn" im Prompt eingetragen hat.
Auch nicht, ob das Prompt mit Abbruch beantwortet wurde.
*****
Mit herzlichem Gruß,
Uwe Laubender


als Antwort auf: [#576613]

Problem mit Illustrator Skript bei Dateinamen mit einem "." im Namen

pixxxelschubser
Beiträge gesamt: 1611

3. Sep 2020, 15:39
Beitrag # 8 von 8
Beitrag ID: #576641
Bewertung:
(1708 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,
bin ja auf deine Ergebnisse gespannt. Für den TO hat sich das Thema ja wahrscheinlich erledigt.

Zum Code selbst: der Regex passt – ungetestet. Den verwende ich persönlich am liebsten, egal ob mit replace() oder mit match() oder oder oder. Und da es IMHO nur um das Überschreiben des Dateinamens gehen dürfte, habe ich mir den restlichen Code überhaupt nicht wirklich angesehen. Sieht aber insgesamt doch ein bisschen verbesserungswürdig aus.

Letztlich scheint das eingangs gepostete Script wohl nur ein "Example script" von Adobe zu sein.

Wink
Viele Grüße
pixxxelschubser




Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean.

Isaac Newton




als Antwort auf: [#576628]
X

Aktuell

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
04.09.2020 - 05.03.2021

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Freitag, 04. Sept. 2020, 13.00 Uhr - Freitag, 05. März 2021, 12.00 Uhr

Lehrgang

Bilden Sie sich zum zertifizierten Publishing-Multimedia-Profi aus. Neben Fotografie und Video befassen Sie sich mit der Medienproduktion, digitalen Publikationen und dem Webdesign für Desktop- und mobile Endgeräte. Mit dem Abschluss «Publisher Professional – Profil «Multimedia» verliehen durch die Digicomp Academy AG, bestätigen Sie Ihre Praxiserfahrungen und Qualifizierung in den genannten Themengebieten gegenüber Ihrem Arbeitgeber sowie Ihren Kunden.

Preis: CHF 10'500.-
Dauer: 30 Tage (ca. 210 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Nein

Organisator: Digicomp Academy AG

Kontaktinformation: Isil Günalp, E-Mailisil.guenalp AT digicomp DOT ch

https://www.digicomp.ch/weiterbildung/software-anwendungs-trainings/adobe-trainings/publishing-lehrgaenge/lehrgang-publisher-professional-profil-multimedia

Veranstaltungen
02.10.2020 - 11.12.2020

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Freitag, 02. Okt. 2020, 13.00 Uhr - Freitag, 11. Dez. 2020, 15.00 Uhr

Lehrgang

Steigen Sie in die Welt des Publishings ein und erlangen Sie die Zertifizierung von publishingNETWORK. Lernen Sie in diesem Lehrgang Druckmedien professionell zu erarbeiten, druckfertige PDFs zu erstellen und CI/CD-Vorgaben umzusetzen. Mit dem Abschluss «Publisher Basic» verliehen durch die Digicomp Academy AG, bestätigen Sie Ihre Praxiserfahrungen und Qualifizierung in den genannten Themengebieten gegenüber Ihrem Arbeitgeber sowie Ihren Kunden.

Preis: CHF 6'300.-
Dauer: 18 Tage (ca. 126 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt.

Nein

Organisator: Digicomp Academy AG

Kontaktinformation: Isil Günalp, E-Mailisil.guenalp AT digicomp DOT ch

https://www.digicomp.ch/weiterbildung/software-anwendungs-trainings/adobe-trainings/publishing-lehrgaenge/lehrgang-publisher-basic

Neuste Foreneinträge


Programmabsturz beim Veröffentlichen als PDF (FM 2019 unstrukturiert)

Excel-Tabelleninhalte via Incopy in InDesign Vorlage aktualisieren

In die/eine Auswahl einfügen!

Dropdown Farbmenu

RTF Export Fußnoten (CC2020[15.1.1],WIN10)

InDesign-Settings (Adobe Cloud) von einem anderen Mac übernehmen

Werkzeugleisten verschwunden

Konvertierung von Framemaker 2019 nach Word

Indesign Fußnoten/Endnoten bei Buchfunktion

JavaScript mit IF Else um Email Adresse auszwählen
medienjobs