باستخدام Scripting JavaScript في Adobe Photoshop، كيفية تغيير محتويات طبقة النص المحددة

StackOverflow https://stackoverflow.com/questions/1287868

  •  18-09-2019
  •  | 
  •  

سؤال

بدلا من ذلك، كيفية تغيير محتويات TextItem باسم الطبقة.

ملاحظة: أنا أستخدم Photoshop CS4 (11.0.1)

هل كانت مفيدة؟

المحلول

أنا أستخدم Photoshop CS3، لكنني أخمن تغيير النص هو ميزة أساسية قد لا تتغير بسهولة من إصدار واحد إلى آخر؛

إليك قصتي:

//get the active document
var doc = app.activeDocument;
//get the active layer
var al = doc.activeLayer;
if(al.kind == LayerKind.TEXT) {
    //get the textItem
    var ti = al.textItem;
    //change contents
    ti.contents = "stackoverflow";
}

لست متأكدا مما إذا كنت أحصل على ما تقصد بالضبط عن طريق تغيير المحتويات باسم الطبقة، ولكن إليك الذهاب في ذلك:

function changeTextByLayerName(layerName,newText){
    var layer = doc.layers.getByName(layerName);
    if(layer.kind == LayerKind.TEXT) layer.textItem.contents = newText;
}

لحسن الحظ هناك طريقة GetbyName هناك حتى لا الحلقة اليدوية اللازمة، ثم أتحقق فقط إذا كانت الطبقة هي في الواقع طبقة نصية.

آمل أن يساعد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top