2012-03-29 32 views
0

我在photoshop文件中有70個圖層。我需要垂直移動X,一個接一個。所以他們看起來像:如何運行批量Photoshop腳本按順序移動圖層X數量?

>>Layer 1<< 
>>Layer 2<< 
>>Layer 3<< 

而不是隻是堆疊在彼此之上。不知道如何做到這一點?理想情況下,我應該指定一個像素數量來轉換。

回答

0

一層似乎只能移動三角洲。

要移動增量,請使用MyLayer.transform(DeltaX,DeltaY);,其中MyLayer是要移動的artLayer的引用。 DeltaX和DeltaY的單位與photoshop中的統治者相同。

我寫了這個小函數來將圖層移動到絕對位置。我希望這對你有些用處...

//****************************************** 
// MOVE LAYER TO 
// Author: Max Kielland 
// 
// Moves layer fLayer to the absolute 
// position fX,fY. The unit of fX and fY is 
// the same as the ruler setting. 

function MoveLayerTo(fLayer,fX,fY) { 

    var Position = fLayer.bounds; 
    Position[0] = fX - Position[0]; 
    Position[1] = fY - Position[1]; 

    fLayer.translate(-Position[0],-Position[1]); 
} 
0

非常感謝!由於這個提示,我設法完成了一個腳本,下載/放置(成千上萬個)地圖塊......如果沒有你,就無法完成它; )

我是新來的'Photoscripting',所以我想指出一些可能還需要其他新手才能得到的東西(現在很明顯):如果您計算了'fX'和'fY '輸入通過一些數學手段,要小心顯式添加你使用的單位到你的輸入數字,否則你會把東西放在整個地方(waaaaaay離開畫布在我的情況; P)。

像這樣:再次

MoveLayerTo(myLayerRef, myX + "px", myY + "px"). 

非常感謝和歡呼聲!