Replace color for all layers
I have a file with about 500 layers, and I need to replace a color in all of them. I looked through different solutions here and elsewhere, and they all suggested using an adjustment layer or something similar. This doesn't help much - the layers are used for animation so it would break everything.
The best I could come up with is export layers to files, run a batch on those files, and load them back in. However, 15 minutes later it only managed me to export 3 frames out of 500. Is this some kind of a joke? The whole
gif is 300kb and imagemagick managed to export it in a fraction of a second, though I'm not happy with what it did to transparency.
ffmpeg did the exporting just fine, now I'm trying to get photoshop to replace color. I select a gray color
#e1e1e1, click on the result, and type in the required color
#f2f6f8. It suggests
hue -160, sat +30, lightness +8, which does pretty much nothing at all. How is it possible that when I specify the result color I need, it fails to figure out how to do the replacement?
I ended up using a short piece of code to do the color conversion (because I had a
png library at hand) and imagemagick to convert it back to
gif. So much for the almighty photoshop, failed me at all 3 steps.
First choose the color you want to change with Eyedroper.
Hide all layers. Right click the icon eye in any layer and choose: Show hide all other layers, repeat it untill you hide all Layers.
Select the first layer and create a new action. Name it as your wish.
While the action is recording, right click the eye icon of the selected layer and choose Show this layer.
Go to: Select>>Color range>>Sampled colors and click the color sampled in the toolbar.
Go to: Image>>Adjustments>>Hue saturation. Find the new color you want.
Now hide the layer. This will let you know the action has finished.
Stop the action.
Select the next layer and play the action...
Now the action will show the selected layer, select the old color, replace with the new color, hide the selected layer and stop.