답변:
"반 파장주의주의"를 깨뜨리지 않는 한, 이것이 가장 빠른 방법입니다.
이것은 스크립팅 기능으로 수행 할 수 있습니다.
편집 : 시도하고 테스트 한 결과 내 답변을 업데이트했습니다.
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;
그런 다음 원하는 엉덩이에 대한 텍스트 레이어를 이동하십시오.
대단한 아담 엘소 다니 (Adam Elsodaney) 감사합니다. 대단합니다. 그러나 만약 당신이 나처럼 스크립트가 문자가 아닌 단어를 찢어 내고 싶다면 스크립트를 수정해야합니다.
다음은 단어를 구분하는 동일한 스크립트입니다.
// 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.activeLayer;
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
var words = theTextToSplit.split(" ");
for(a=0; a < words.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
var theTextBox = newTextLayer.textItem; // edit the text
theTextBox.font = "Arial"; // set font
theTextBox.contents = words[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;
그리고 명확히하기 위해 (알지 못 했으므로 Google에 가져와야 함)
.jsx
)textlayer
해당 파일이 Photoshop에서 열려 있는지 확인하십시오 .편집 : 일부 reson의 경우 더블 클릭이 항상 작동하지 않으며, 그렇지 않은 경우 photoshp에서 파일> 스크립트> 찾아보기로 이동하여 파일을 두 번 클릭하십시오. 실행을 시작합니다.
var theOriginalTextLayer = thisDocument.artLayers.getByName("textlayer");
에 var theOriginalTextLayer = thisDocument.activeLayer;
선택된 텍스트 레이어에서 작동 스크립트 :에 이름을 바꿀 필요가 없습니다textlayer
난 그냥 내 페니를 줄 것이다. 편집 가능한 텍스트로 새 레이어가 필요한지 아니면 래스터 화 된 레이어인지를 지정하지 않았습니다. 후자의 경우 다음을 수행 할 수 있습니다.
래스터 화 된 레이어가있는 경우에만이 작업을 수행하십시오. 텍스트 레이어가 필요한 경우 Lauren Ipsum 답변이 더 빠를 것입니다.