News und Tutorials zu Adobe Photoshop

[GastForen Programme Print/Bildbearbeitung Adobe Photoshop Bildgröße per Script ändern

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

Bildgröße per Script ändern

ninette
Beiträge gesamt: 5

25. Sep 2007, 17:32
Beitrag # 1 von 7
Bewertung:
(8036 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich möchte gern ein Photoshop-Script (JavaScript) schreiben, mit dem die Bildgröße abhängig von der Auflösung geändert wird.

Es soll also z.B. ein Bild mit einer Auflösung von 200 dpi auf 300 dpi umgerechnet werden, OHNE dass ich eine konkrete Bildbreite/-höhe angeben möchte. Allerdings soll die Bildbreite/-höhe natürlich mit umgerechnet werden und nicht statisch gleich bleiben.

Momentan sieht meine Scriptzeile folgendermaßen aus:
Code
activeDocument.resizeImage( , ,300,ResampleMethod.NONE); 


Als Fehlermeldung erscheint, dass Photoshop "Variablen oder Werte erwartet".

Laut Scripthilfe sollte ein Komma aber als Platzhalter für nicht benötigte und optionale Angaben funktionieren. Tuts aber nicht. Wo liegt mein Denkfehler??
X

Bildgröße per Script ändern

jekyll
Beiträge gesamt: 2047

25. Sep 2007, 20:35
Beitrag # 2 von 7
Beitrag ID: #314125
Bewertung:
(8021 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,
bei mir läuft´s so:
Code
activeDocument.resizeImage(undefined, undefined, 300,ResampleMethod.NONE); 



als Antwort auf: [#314093]

Bildgröße per Script ändern

ninette
Beiträge gesamt: 5

26. Sep 2007, 10:13
Beitrag # 3 von 7
Beitrag ID: #314179
Bewertung:
(8004 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
*jubel* Es funktioniert!! 1000 Dank!!!


als Antwort auf: [#314125]

Bildgröße per Script ändern

Martin Fischer
Beiträge gesamt: 12732

4. Dez 2007, 11:01
Beitrag # 4 von 7
Beitrag ID: #325516
Bewertung:
(7886 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Sándor,

mein Bild soll je nach Lage (Hoch- oder Querformat) eine bestimmte Breite bekommen, ohne daß es neu resampled/berechnet wird.

Die folgende Zeile gibt einen Fehler aus:
Code
aPic.resizeImage(undefined, 10.8, undefined, ResampleMethod.NONE); 

Fehler: "Pixel für 'height' und 'width' dürfen nur beim Resampling angegeben werden."

Wenn ich statt der Breite die Auflösung fest angebe, werden neue Höhe und neue Breite berechnet.
Ich kann also auf eine gewünschte Breite skalieren, wenn ich zunächst das Verhältnis zwischen der alten Breite und der erwünschten Breite feststelle und die Auflösung mit diesem Faktor multipliziere:
Code
function changeSize(aPic) 
{
var myWidth = (aPic.height > aPic.width) ? 5.85 : 10.8;
var myFactor = aPic.width/myWidth;
aPic.resizeImage(undefined, undefined, aPic.resolution * myFactor, ResampleMethod.NONE);
}


Geht es nur über den Umweg einer Berechnung der neuen Auflösung oder kann man die feste Breite auch irgendwie fix eingeben, indem man die Auflösung auf etwas anderes als null oder undefined setzt?

---
Die Frage bezieht sich auf PhotoShop CS3, Mac OSX 10.4.10.


als Antwort auf: [#314125]
(Dieser Beitrag wurde von Martin Fischer am 4. Dez 2007, 11:19 geändert)

Bildgröße per Script ändern

jekyll
Beiträge gesamt: 2047

4. Dez 2007, 21:35
Beitrag # 5 von 7
Beitrag ID: #325688
Bewertung:
(7858 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Martin,
probiere es mal hiermit:

--
var deinerWert = 100
var id5 = charIDToTypeID( "ImgS" );
var desc3 = new ActionDescriptor();
var id6 = charIDToTypeID( "Wdth" );
var id7 = charIDToTypeID( "#Rlt" );
desc3.putUnitDouble( id6, id7, deinerWert );
executeAction( id5, desc3, DialogModes.NO );
--

Ich habe es von der ScriptingListener.plugin (Phothoshop/Scripting Guide/Utilities). Den in den Ordner Photoshop/Plugins/Automate legen. Dieser plugin schreibt auf Deine Desktop alles was Du machst in PS als Javascript.

Leider habe ich sonst keine anderen Lösung :o(


als Antwort auf: [#325516]

Bildgröße per Script ändern

Martin Fischer
Beiträge gesamt: 12732

5. Dez 2007, 07:28
Beitrag # 6 von 7
Beitrag ID: #325721
Bewertung:
(7844 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Sándor,

ich danke Dir für den Lösungsvorschlag.
Allerdings muß ich zugeben, daß diese Codezeilen für mich unverständlich sind.
Ich sehe nicht, wie das zu kontrollieren oder zu steuern wäre.

Da eine JavaScript-Lösung auch mit Bordmitteln zu finden ist - eben über den Umweg des Umrechnungsfaktors für die Auflösung - verzichte ich lieber auf Plugins, die Unglaubliches aufzeichnen.


als Antwort auf: [#325688]

Bildgröße per Script ändern

jekyll
Beiträge gesamt: 2047

5. Dez 2007, 12:00
Beitrag # 7 von 7
Beitrag ID: #325759
Bewertung:
(7823 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

Antwort auf: Ich sehe nicht, wie das zu kontrollieren oder zu steuern wäre.
Da eine JavaScript-Lösung auch mit Bordmitteln zu finden ist…

Für Photoshop scheint der ActionDescriptor Bordmittel zu sein.
Man findet den Referenz in dem Javascript Guide Seite 37-50. (PS Scripting Guide ab Seite 72)

Antwort auf: verzichte ich lieber auf Plugins, die Unglaubliches aufzeichnen

Das würde ich auch gerne können! Ich bin aber noch weit davon entfernt :o(


als Antwort auf: [#325721]
X