Antworten auf deine Fragen:
Neues Thema erstellen

Photoshop CS 5 JavaScript

peter8500

Noch nicht viel geschrieben

Photoshop CS 5 JavaScript / Substring

Hallo! Ich möchte mit JavaScript für Photoshop CS5 von einem String die letzten beiden Zeichen abschneiden.

var neuerName=inhalt.substring(0,2);

Leider wird mit "substring" als keine Funktion reklamiert. Gibt es diese bei der CS5 nicht ?

Gibt es ggf. eine Alternative ?
 
Zuletzt bearbeitet:

Photoshop

leveler

00110100 00110010

AW: Photoshop CS 5 JavaScript

wie jetzt? mit photoshop in der cs5 kann man javascript coden? Ich bin immer noch auf dem Stand der CS3, ich hab echt was verpasst, scheint mir....
 
AW: Photoshop CS 5 JavaScript

Hallo! Ich möchte mit JavaScript für Photoshop CS5 von einem String die letzten beiden Zeichen abschneiden.

var neuerName=inhalt.substring(0,2);

Leider wird mit "substring" als keine Funktion reklamiert. Gibt es diese bei der CS5 nicht ?

Gibt es ggf. eine Alternative ?

Ich steck nicht so drin, aber guck doch mal im mitgelieferten Scripthandbuch-PDF. Steht alles drin, was geht.


wie jetzt? mit photoshop in der cs5 kann man javascript coden? Ich bin immer noch auf dem Stand der CS3, ich hab echt was verpasst, scheint mir....

Nicht mit PS sondern für PS. Skripten lässt sich Photoshop seit CS (=v8) geht.
 

randacek_pro

Mod | Forum

AW: Photoshop CS 5 JavaScript

Hab mal schnell die Javascript Scripting Reference für CS5 "befragt" und da nichts von "substring" gefunden...
Kann also sein, dass es die tatsächlich nicht gibt (PS verwendet nicht alle Konstrukte und Elemente von JS)

Eventuell findest du dort aber eine passende Entsprechung?

Ich weiß nicht, ob dir das hilft, aber vielleicht als Anregung zu einem "Workaround".

Viele Grüße
 

peter8500

Noch nicht viel geschrieben

AW: Photoshop CS 5 JavaScript

Vielen Dank für die schnellen Antworten. Hab leider auch nichts gefunden. Weder in der Scripting Reference noch im Netz.

Sehr schade, dann werd ich mal schauen wie ich das ganze umgehen kann. Das ExtendScript Toolkit schlägt allerdings .substring vor. Deswegen hatte ich Hoffnung.

Euch allen vielen Dank und einen schönen Nachmittag.

Peter
 

randacek_pro

Mod | Forum

AW: Photoshop CS 5 JavaScript

Wofür möchtest du denn die letzten beiden Zeichen entfernen?

Wenn es um Dateinamen und Pfade geht, könnte vielleicht wirklich der "Workaround", den ich in meinem Vorpost verlinkt habe, helfen...

Viele Grüße
 

peter8500

Noch nicht viel geschrieben

AW: Photoshop CS 5 JavaScript

Danke randacek_pro. Ich muss Ordner auslesen und dort die beiden letzten buchstaben (gg) entfernen. Das ganze muss in ein Array und in einem anderen Verzeichnis wieder von der Struktur mit anderem dem gekürzten Pfadnamen angelegt werden.

Vlg
 
AW: Photoshop CS 5 JavaScript

Du solltest vielleicht etwas mehr von deinem Code posten.
Denn substring funktioniert seit vielen Versionen.

Aber (0,2) liest „von vorn“ die ersten zwei Zeichen.

Zum Testen:
Öffne Illu, PS oder ID und öffne ein (gespeichertes) Dokument. (Der Skriptschnipsel muss natürlich vorher im Skriptpfad des Programmes gespeichert worden sein!)
Wird mit dem nachfolgendem Skriptschnipsel die Dateiendung des Dateinamens im Alert korrekt um zwei Zeichen gekürzt angezeigt?

(nur der Auszeichnung halber als PHP-Code dargestellt)
PHP:
var myDoc =app.activeDocument;
var myDocNm =myDoc.name;
var myDocNm2 =myDocNm.slice (0, -2);
alert(myDocNm + " um 2 Zeichen mit slice gek\u00fcrzt ergibt: " + myDocNm2);
var myDocNm3 =myDocNm.substring (0, myDocNm.length-2);
alert(myDocNm + " als substring (minus 2 Zeichen) ergibt auch: " + myDocNm3);
:uhm:
 

peter8500

Noch nicht viel geschrieben

AW: Photoshop CS 5 JavaScript

Danke für die Antwort! So sieht meins aus:

PHP:
var ausgewaehltesVerzeichnis = Folder.selectDialog();
var inhalt = ausgewaehltesVerzeichnis.getFiles();
var zielVerzeichnis = new Folder(ausgewaehltesVerzeichnis+ "/fs");

for (var i = 0; i < laenge; i++) {
alert(inhalt[i].name); 
var neuerName=inhalt[i].slice(0, inhalt.length-2);
alert(neuerName);
}
Als Rückmeldung krieg ich "slice ist keine Funktion" bei substring das gleiche ;-(

Danke für weitere Tips!

Schönen Tag!
 

OliB

Aktives Mitglied

AW: Photoshop CS 5 JavaScript

Willst du nun den Dateinamen, die Dateiendung oder wie du geschrieben hast, den Pfadnamen kürzen?
Falls es nicht der Pfadname sein soll, stellt sich noch die Frage, ob du damit die Dateiendung meinst (z.B. .jpg > .j) oder den eigentlichen Dateinamen (z.B. Beispiel.jpg > Beispi.jpg)
 

peter8500

Noch nicht viel geschrieben

AW: Photoshop CS 5 JavaScript

Danke OliB, den Pfadnamen will ich kürzen.

Die Ordner heissen derzeit 399230gg und sollen danach
nur noch die ArtNr ausweisen.


Schönen Gruß
 
Zuletzt bearbeitet:

peter8500

Noch nicht viel geschrieben

AW: Photoshop CS 5 JavaScript

Danke für euere Hilfe. Es läuft ...

var ausgewaehltesVerzeichnis = Folder.selectDialog();
var inhalt = ausgewaehltesVerzeichnis.getFiles();
var laenge = inhalt.length;

for (var i = 0; i < laenge; i++) {
var gekName=inhalt.name.slice(0, -2);
var neuesZielverzeichnis = new Folder(ausgewaehltesVerzeichnis+ "/fs/"+gekName);
neuesZielverzeichnis.create();
}
 
Zuletzt bearbeitet:

OliB

Aktives Mitglied

AW: Photoshop CS 5 JavaScript

Abgesehen davon, daß gestern deine Lösung noch ganz anders aussah, bin ich jetzt doch etwas verwundert...

Sofern ich das Script richtig interpretiere, dann kürzt du jetzt aber nicht den Pfadnamen, des zuvor ausgewählten Ordners, sondern erstellst in diesem Ordner einen Unterordner (fs), in dem weitere Unterordner erstellt werden, deren Namen aus den um 2 Stellen gekürzten Bilder-Dateinamen bestehen...

Das wäre ja etwas völlig anderes, was du im Eingangs- bzw. den Folgepostings beschrieben hast... :?::?:
 
Zuletzt bearbeitet:
AW: Photoshop CS 5 JavaScript

Ich bin der gleichen Meinung.

Richtiger wäre IMHO ein Abgleich, ob der Ordner mit gg endet und wenn das zutrifft, das direkte Umbenennen des Ordners.
Etwa in der Art (nur der Auszeichnung halber als PHP deklariert):
PHP:
var counter = 0;
var myString = "gg"
var gekName;

var ausgewaehltesVerzeichnis = Folder.selectDialog();
var inhalt = ausgewaehltesVerzeichnis.getFiles();
var laenge = inhalt.length;

for (var i = 0; i < laenge; i++) {
    var myString2 = inhalt[i].name.slice(-2);
    
    if (myString == myString2) {
        gekName = inhalt[i].name.slice(0,-2);
        inhalt[i].rename (gekName);
        counter++;
        }
    }
alert (counter + " Ordner wurde/n umbenannt");
Teste es einfach aus und gib bitte ein Feedback.



.
 

Ellersiek

JedenTag ein wenig besser

AW: Photoshop CS 5 JavaScript

Und wäre es dann nicht noch sicherer, wenn

myString = "GG"

und der Vergleich

If (myString == myString2.ToUpper())

lautet (keine Ahnung wie ToUpper jetzt unter PHP lautet - Uppercase halt)?

Dann wäre man noch uunabhängig von Groß/Kleinschreibung.

Gruß
Ralf
 
AW: Photoshop CS 5 JavaScript

Hallo Ellersiek,
ja das könnte man. Der TO wollte allerdings genau das:
… Ich muss Ordner auslesen und dort die beiden letzten buchstaben (gg) entfernen …

Und auch ich habe mich durch meinen Vorposter „auf's Glatteis führen lassen“. Der der TO wollte die Ordner überhaupt nicht umbenennen sondern:
… und in einem anderen Verzeichnis wieder von der Struktur mit anderem dem gekürzten Pfadnamen angelegt werden …

Such as live …

Nur noch kurz: Der von mir gepostete Code ist kein PHP sondern Javascript (wenn auch der farblichen Hervorhebung wegen mit dem foreneigenen PHP-Highlightning). Es gibt hier leider nichts vergleichbares für Javascript. Die reine Code-Auszeichnung empfinde ich persönlich als unzweckmäßig. Deshalb habe ich auch dieses Thema eröffnet:
Leider hat sich bisher noch kein Admin zu dieser Anfrage geäußert.

Und die von dir angeregte Großschreibvariante wird in Javascript mit der (von dir fast richtig vermuteten) Methode:
Code:
.toUpperCase()
erreicht.
Deine Anregung passt auf jeden Fall gut zum Thema.

;)
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.480
Mitglieder
67.559
Neuestes Mitglied
hanuta
Oben