Mobile app version of vmapp.org
Login or Join

Login to follow query

More posts by @Pierce403

3 Comments

Sorted by latest first Latest Oldest Best

 

@Murphy569

I'll just give my penny. You didn't specified whether you need your new layers as editable text or just rasterized layers, in the latter case you can:


Rasterize your layer
Make a selection around your first layer
Hit CTRL + SHIFT + J (Or CMD + SHIFT + J) to cut the selection to a new layer
Repeat step 2 and 3 for each letter


Again, do this only if you're ok with having rasterized layers. If you need text layers go with Lauren Ipsum answer as it is probably the faster way.

10% popularity Vote Up Vote Down


 

@Speyer780

Select the Type tool.
Type your letter.
Duplicate the layer.
Select the new layer.
Highlight the copied letter and type
the second letter.
Repeat as needed.


Unless you're breaking up "antidisestablishmentarianism," this is the faster way to go.

10% popularity Vote Up Vote Down


 

@Murray664

This can be done with scripting capabilities.

EDIT: I've update my answer below having tried and tested.


Open any text editor
Copy and paste the following code into it
Make sure whatever the name of the text layer is matches with what's defined in line 20
Save as splitText.jsx
Open with Photoshop. Also make sure the document you want to apply this to is the currently active document.


Contents of splitText.jsx

// enable double clicking from the Macintosh Finder or the Windows Explorer #target photoshop

// in case we double clicked the file
app.bringToFront();

// debug level: 0-2 (0:disable, 1:break on error, 2:break at beginning)
// $.level = 0;
// debugger; // launch debugger on next line

var strtRulerUnits = app.preferences.rulerUnits;
var strtTypeUnits = app.preferences.typeUnits;

app.preferences.rulerUnits = Units.PIXELS;
app.preferences.typeUnits = TypeUnits.POINTS;

var thisDocument = app.activeDocument;

// USE THIS LINE TO GRAB TEXT FROM EXISTING LAYER
var theOriginalTextLayer = thisDocument.artLayers.getByName("NAME-OF-LAYER");
var theTextToSplit = theOriginalTextLayer.textItem.contents;

// OR USE THIS LINE TO DEFINE YOUR OWN
// var theTextToSplit = "Hello";

// suppress all dialogs
app.displayDialogs = DialogModes.NO;

// the color of the text as a numerical rgb value
var textColor = new SolidColor;
textColor.rgb.red = 0;
textColor.rgb.green = 0;
textColor.rgb.blue = 0;

var fontSize = 120; // font size in points
var textBaseline = 480; // the vertical distance in pixels between the top-left corner of the document and the bottom-left corner of the text-box

for(a=0; a<theTextToSplit.length; a++){
// this loop will go through each character

var newTextLayer = thisDocument.artLayers.add(); // create new photoshop layer
newTextLayer.kind = LayerKind.TEXT; // set the layer kind to be text
// newTextLayer.name = textInLayer.charAt(a);

var theTextBox = newTextLayer.textItem; // edit the text
theTextBox.font = "Arial"; // set font
theTextBox.contents = theTextToSplit.charAt(a); // Put each character in the text
theTextBox.size = fontSize; // set font size
var textPosition = a*(fontSize*0.7);

theTextBox.position = Array(textPosition, textBaseline); // apply the bottom-left corner position for each character
theTextBox.color = textColor;

};

/* Reset */

app.preferences.rulerUnits = strtRulerUnits;
app.preferences.typeUnits = strtTypeUnits;
docRef = null;
textColor = null;
newTextLayer = null;


Then move the text layers about ass you please

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme