É possível no Photoshop converter fatias em camadas do photoshop?

4

O que eu quero fazer é pegar uma imagem e recortar em pequenos quadrados que estão em camadas diferentes (não exportá-los como imagens individuais). Por exemplo, se eu tivesse uma imagem de 100px por 100px e quisesse usar essa camada e criar 100 camadas a cada 10px por quadrados de 10px. A imagem seria a mesma, mas em vez de ser uma camada, seria uma grade de camadas separadas que se encaixam perfeitamente como um quebra-cabeça. Se eu desativasse a visibilidade de uma das camadas, pareceria que faltava uma "peça" quadrada do quebra-cabeça.

Eu sei que posso fatiar uma imagem em uma grade, exportar as imagens e depois abri-las como camadas usando o Bridge. O problema com essa abordagem é que eu acabaria com um arquivo de 10 x 10 pixels com 100 camadas empilhadas em cima umas das outras, em vez de um arquivo de 100 x 100 pixels com todas as camadas organizadas corretamente.

Obrigado.

    
por MJR 17.05.2012 / 23:07

1 resposta

6

Você pode fazer isso usando JavaScript. Aqui está um pequeno e rápido script Eu escrevi, ele irá copiar sua imagem em 100 camadas , cada 10px por 10px:

/*
--------Photoshop Script - Grid to Layers------------
Author: Oisin Conolly
        www.DigitalBiscuits.co.uk

This basic script will create new layers from your active layer, each equal in size according to the grid dimensions specified.
*/


//this is the size of our squares in pixels
var squareSize = 10;



var docRef = app.activeDocument;

//set the ruler type
if (app.preferences.rulerUnits != Units.PIXELS)
{
    app.preferences.rulerUnits = Units.PIXELS;
}

var layerRef = docRef.activeLayer;

for (y = 0; y<docRef.height; y+=squareSize)
{
    for (x = 0; x<docRef.width; x+=squareSize)
    {
        //activate the original layer
        docRef.activeLayer = layerRef;
        //make the selection
        docRef.selection.select(Array (Array(x, y), Array(x, y+squareSize), Array(x+squareSize,y+squareSize), Array(x+squareSize,y)), SelectionType.REPLACE, 0, false);

        //copy the selection
        docRef.selection.copy();
        //create and paste new layer
        docRef.artLayers.add();
        docRef.paste();
    }
}

Para usá-lo, salve o arquivo e carregue-o no Photoshop indo para

File > Scripts > Browse

Verifique se o tipo de arquivo está definido como * .JS

Se você quiser alterar o tamanho de seus quadrados, basta abrir o arquivo JavaSCript no Bloco de Notas, alterar o valor de squareSize e salvá-lo e executá-lo.

* EDIT *

Se você quiser fazer coisas mais avançadas com esse script, faça o download de um guia de referência sobre scripts do Photoshop que lista todas as classes, funções e variáveis com as quais você pode trabalhar. (Por exemplo, como rodar uma camada).

O script acima usa a sintaxe JavaScript, mas você também pode usar o AppleScript e o VBScript para trabalhar com o Photoshop.

    
por 18.05.2012 / 04:07