[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt PhotoShop-Skript – Auswahl füllen tut net! *grmpf*

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

PhotoShop-Skript – Auswahl füllen tut net! *grmpf*

madoho
Beiträge gesamt: 148

2. Aug 2011, 17:22
Beitrag # 1 von 4
Bewertung:
(1425 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo zusammen,
ich hab ein kleines "photoshop" problem! ich versuche einen erstellten alpha-kanal zu füllen anhand einer auswahl die ich vorher aus einem beschneidungspfad erstelle.

Problem: Ich krieg's nicht gebacken die Auswahl zu füllen… immer is irgendwas undefined :D egal wie ich die farbe definiere…

Code
#target Photoshop 

main();

function main() {

var myImage = app.activeDocument;

var myPaths = myImage.pathItems;

var myAlphaChannel = myImage.channels.add();
myAlphaChannel.name = test";

for (i = 0; i < myPaths.length; i++){

if (myPaths[i].kind == PathKind.CLIPPINGPATH){

var mySelection = myPaths[i].makeSelection ();
}

}

mySelection.fill ({red:255, green:0, blue:0}, ColorBlendMode.NORMAL, 100, true);

}


zu testzwecken müsstet ihr ein bild im vordergrund haben, dass einen beschneidungspfad hat.

ich muss NUR NOCH die auswahl füllen, dann tut das dingel was ich will, den rest drum rum mit öffnen und speichern ist nimmer wild.

Vielen Dank im Voraus für eure Ideen!

Gruß Manu
X

PhotoShop-Skript – Auswahl füllen tut net! *grmpf*

Uwe Laubender
Beiträge gesamt: 5298

2. Aug 2011, 18:18
Beitrag # 2 von 4
Beitrag ID: #477341
Bewertung:
(1401 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, Manu!

Zwar sind wir hier nicht in der PhotoShop-Scripting-Abteilung, aber beim Anblick Deines Codes ist mir schon eines klar:

Du definierst eine Variable (mySelection) innerhalb einer for-Schleife. Diese Variable existiert aber nur innerhalb dieser Schleife und kann vom Rest des Scripts nicht erkannt werden. Deshalb rennst Du unweigerlich nach dem Abarbeiten der for-Schleife in einen undefined-Error.
Du müßtest also wahrscheinlich innerhalb der for-Schleife auch das Befüllen der Auswahl machen.

Weiter kann ich Dir im Moment nicht helfen, da ich mit PhotoShop-Scripting zu wenig Erfahrung gesammelt habe.

MacBook Pro 2.4GHz | OS X 10.5.8 | Adobe CS3/CS4/CS5/CS5.5 Design Premium


als Antwort auf: [#477338]

PhotoShop-Skript – Auswahl füllen tut net! *grmpf*

Gerald Singelmann
  
Beiträge gesamt: 6268

2. Aug 2011, 18:32
Beitrag # 3 von 4
Beitrag ID: #477342
Bewertung:
(1394 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Es ist wirklich, wirklich, wirklich wichtig, nicht einfach drauf los zu scripten, sondern im OMV zu kontrollieren, was die Objekte und Funktionen eigentlich machen.
path.makeSelection() zum Beispiel liefert keinen Wert zurück. Kein Wunder, dass mySelection undefined ist.

Außerdem ist es wirklich wichtig, die vorhandene Dokumentation zu lesen. Im Scripting Guide, der im Programmordner/Scripting liegt, stehen alle hier benötigten Techniken drin.
Code
#target Photoshop  

main();

function main() {

var myImage = app.activeDocument;

var myAlphaChannel = myImage.channels.add();
myAlphaChannel.name = "test";

myImage.activeChannels = [ myAlphaChannel ];

var colour = new SolidColor();
colour.gray.gray = 8.0;

var myPaths = myImage.pathItems;

for (i = 0; i < myPaths.length; i++){
if (myPaths[i].kind == PathKind.CLIPPINGPATH){
myPaths[i].makeSelection ();
// myPaths[i].fillPath( colour );
}
}
try {
app.activeDocument.selection.bounds;
myImage.selection.fill ( colour );
} catch(e) {
$.writeln(e);
}
app.activeDocument.selection.deselect();
app.activeDocument.activeChannels = app.activeDocument.componentChannels;
myAlphaChannel.visible = true;
}



als Antwort auf: [#477341]
(Dieser Beitrag wurde von Gerald Singelmann am 2. Aug 2011, 18:34 geändert)

PhotoShop-Skript – Auswahl füllen tut net! *grmpf*

madoho
Beiträge gesamt: 148

2. Aug 2011, 23:07
Beitrag # 4 von 4
Beitrag ID: #477349
Bewertung:
(1362 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hey gerald,
vielen, vielen dank! :)

ich hab immer den OMV nebenher offen… nur find ich den für photoshop meeehr als dürftig :(

und für mein erstes photoshop-skript bin ich eiiigentlich ziemlich weit gekommen ;)

nochmals vielen dank! ich klabuster das jetzt mal auseinander und versuch zu verstehen, was da jetzt der unterschied ist und wo meine fehler waren.

Gruß Manu


als Antwort auf: [#477342]
X