Jeg har begynt å leke meg litt med javascript i Photoshop, men jeg sliter med at scriptene er ufattelig trege å kjøre
Her er et eksempel, dette scriptet itererer rekursivt igjennom alle layers i dokumentet, og dersom det aktuelle layeret er et text-layer så setter den antialias til Smooth:
Kan noen forklare meg hvorfor dette er så tregt? Er det selve itereringen over alle layers som tar tid, eller er det endringen av antialias på teksten? Man skulle tro det var itereringen, men dersom jeg fjerner antialias-kommandoen så går det raskt, så tipper det er sistnevnte? Er det noe som kan optimeres for å få det til å gå raskere? Nå bruker den ca. 1 time på 300 layers (ish)
Lurer også på om det er vanskelig å få lagt til en progressbar, slik at man faktisk kan se hvor langt den er kommet i prosessen, noen tips?
Her er et eksempel, dette scriptet itererer rekursivt igjennom alle layers i dokumentet, og dersom det aktuelle layeret er et text-layer så setter den antialias til Smooth:
Kode
// FUNCTION function changeAntiAlias(target) { // Get the layers of the active document var docLayers = target.layers; // For each layer in the document for (var i = 0; i < docLayers.length; i++) { // If the current layer is a LayerSet if (docLayers[i].typename == "LayerSet") { // Recursive: Re-run function with the current LayerSet as target changeAntiAlias(docLayers[i]); } // Else if the current layer is a text layer else if (docLayers[i].kind == LayerKind.TEXT) { docLayers[i].textItem.antiAliasMethod = AntiAlias.SMOOTH]; }; }; }; // Get the active document var doc = app.activeDocument; // Execute the function changeAntiAlias(doc);
Lurer også på om det er vanskelig å få lagt til en progressbar, slik at man faktisk kan se hvor langt den er kommet i prosessen, noen tips?