Transform Each 2.0

You know that feeling, when you look at your old works and think “What was I thinking!”. So, I looked at Transform Each script with same thoughts and decided to make an update for it.

I rewrote it from the ground, fixed previous bugs, redesigned the interface and added some features, which were requested in comments.


Oh, hey there. I have newer version of this script
Go check out →

If you’re new here, Transform Each is a script that gives ability to make individual transformations with a group of layers:

DownloadRequires Adobe Photoshop CS5 or CS6

Move downloaded file to Photoshop/Presets/Scripts/ and it’ll be available in Photoshop through the menu File → Scripts → ...

You can also set shortcut in Edit → Keyboard Shortcuts… (open File> Scripts> and find installed script).

Tested in Adobe Photoshop CS5, CS6, CC

New Interface

I guess most noticeable change is script’s new interface:

New look I decided to get rid of Skew, Move and Random, because, well, they were not so useful. Excpet for the Random I guess, it has potential, but I think it needs some rethinking, maybe I’ll make it as a separate script someday. Anyway, as the result we have Scale and Rotate — functions that were most popular among people I polled.

Anchor Point

I also added option to select the anchor point — point around which all transformations will be made. You can choose one of the nine positions: top left corner, middle center, bottom right corner etc. You can see how it works on this gif:

Basically it replicates functionality of the same control in Photoshop’s transform tool options.

Small fixes

Beside that, Transform Each now works correctly with layers inside different groups and you can now undo all script actions in one click. Finally.


Yeah, it’s 2.0 despite of the fact that previous version was just “Beta”. Because this is how things are work here, son.
Anyway, hope you’ll find this update useful. Have fun!


Found a bug? Something's not working?

If you encountered problems, please take a look at Troubleshooting first