使用Photoshop JavaScript在Excel文件中输出阿拉伯语/泰语文本
我有一个photoshop脚本,它将文本层的名称和层内容输出到Excel CSV文件中。如果文本为英语,则可以正常工作,但如果文本为阿拉伯语/泰语,则显示如下“???????”。如何正确显示这些文本 “我的脚本”获取的图层名称和图层内容如下所示:使用Photoshop JavaScript在Excel文件中输出阿拉伯语/泰语文本,javascript,fonts,arabic,photoshop-script,thai,Javascript,Fonts,Arabic,Photoshop Script,Thai,我有一个photoshop脚本,它将文本层的名称和层内容输出到Excel CSV文件中。如果文本为英语,则可以正常工作,但如果文本为阿拉伯语/泰语,则显示如下“???????”。如何正确显示这些文本 “我的脚本”获取的图层名称和图层内容如下所示: var iLayer = app.activeDocument.activeLayer.textItem; var LayerContents = iLayer.contents; var Names =[ ]; Names.push([LayerN
var iLayer = app.activeDocument.activeLayer.textItem;
var LayerContents = iLayer.contents;
var Names =[ ];
Names.push([LayerName + "," + LayerContents]);
然后在Excel文件中输出名称,如下所示:
var iLayer = app.activeDocument.activeLayer.textItem;
var LayerContents = iLayer.contents;
var Names =[ ];
Names.push([LayerName + "," + LayerContents]);
我试着将阿拉伯文的字体样式改为Arial,泰文的字体样式改为Tahoma,但没有成功。
我甚至尝试转换layerContent.toString() 您需要将文本设置为Unicode。在下面的示例中,我将层名称写入文本文件。主体与CSV相同
// refer to the source document
var srcDoc = app.activeDocument;
var myLayerName = srcDoc.activeLayer.name; // ملعقة
alert(myLayerName) // alerts fine;
write_text(myLayerName, "C:\\temp\\layer_name.txt");
function write_text(str, apath)
{
// create a reference to a file for output
var txtFile = new File(apath);
// open the file, write the data, then close the file
txtFile.encoding = "UTF8"; // make it unicode
txtFile.open("w", "TEXT", "????");
txtFile.writeln(str);
txtFile.close();
}