Created
April 28, 2015 22:48
-
-
Save isonno/af74a58e57502c39472c to your computer and use it in GitHub Desktop.
Sample code for creating a text layer in Photoshop using raw PS events
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const kfontNameStr = app.stringIDToTypeID("fontName"); | |
const kfontPostScriptNameStr = app.stringIDToTypeID("fontPostScriptName"); | |
const kfontStyleNameStr = app.stringIDToTypeID("fontStyleName"); | |
const kfromStr = app.stringIDToTypeID("from"); | |
const khorizontalStr = app.stringIDToTypeID("horizontal"); | |
const kmakeStr = app.stringIDToTypeID("make"); | |
const kmodalToolChangeKindPaint = app.stringIDToTypeID("paint"); | |
const knullStr = app.stringIDToTypeID("null"); | |
const kpercentUnitStr = app.stringIDToTypeID("percentUnit"); | |
const kpointsUnitStr = app.stringIDToTypeID("pointsUnit"); | |
const ksizeStr = app.stringIDToTypeID("size"); | |
const ktextClickPointStr = app.stringIDToTypeID("textClickPoint"); | |
const ktextKeyStr = app.stringIDToTypeID("textKey"); | |
const ktextLayerStr = app.stringIDToTypeID("textLayer"); | |
const ktextStyleRangeStr = app.stringIDToTypeID("textStyleRange"); | |
const ktextStyleStr = app.stringIDToTypeID("textStyle"); | |
const ktoStr = app.stringIDToTypeID("to"); | |
const kusingStr = app.stringIDToTypeID("using"); | |
const kverticalStr = app.stringIDToTypeID("vertical"); | |
// ======================================================= | |
var textString = "Text to place in layer"; | |
var desc5 = new ActionDescriptor(); | |
var ref1 = new ActionReference(); | |
ref1.putClass( ktextLayerStr ); | |
desc5.putReference( knullStr, ref1 ); | |
var desc6 = new ActionDescriptor(); | |
desc6.putString( ktextKeyStr, textString ); | |
var desc8 = new ActionDescriptor(); | |
desc8.putUnitDouble( khorizontalStr, kpointsUnitStr, 10 ); | |
desc8.putUnitDouble( kverticalStr, kpointsUnitStr, 20 ); | |
desc6.putObject( ktextClickPointStr, kmodalToolChangeKindPaint, desc8 ); | |
var list2 = new ActionList(); | |
var desc14 = new ActionDescriptor(); | |
desc14.putInteger( kfromStr, 0 ); | |
desc14.putInteger( ktoStr, textString.length ); | |
var desc15 = new ActionDescriptor(); | |
desc15.putString( kfontPostScriptNameStr, """MyriadPro-Regular""" ); | |
desc15.putString( kfontNameStr, """Myriad Pro""" ); | |
desc15.putString( kfontStyleNameStr, """Regular""" ); | |
desc15.putUnitDouble( ksizeStr, kpointsUnitStr, 12.000000 ); | |
desc14.putObject( ktextStyleStr, ktextStyleStr, desc15 ); | |
list2.putObject( ktextStyleRangeStr, desc14 ); | |
desc6.putList( ktextStyleRangeStr, list2 ); | |
desc5.putObject( kusingStr, ktextLayerStr, desc6 ); | |
executeAction( kmakeStr, desc5, DialogModes.NO ); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment