2016-09-04 11 views
2

私は、Photoshop用のスクリプトを使用して、テキストレイヤーとレイヤーコンテンツの名前をExcel CSVファイルに出力します。テキストは英語ですが、アラビア語/タイ語の場合は "??????"のように表示されます。これらのテキストを正しく表示するにはどうすればよいですか?その後Photoshopを使用してExcelファイルのアラビア語/タイ語テキストを出力するJavaScript

var iLayer = app.activeDocument.activeLayer.textItem; 
var LayerContents = iLayer.contents; 

Excelの名前は、このようなファイル出力:

私のスクリプトは、このようなlayernameおよびレイヤコンテンツを取得する

var Names =[ ]; 
Names.push([LayerName + "," + LayerContents]); 

私はアラビア語のためにMS Pゴシックするフォントスタイルを変更してみましたタイ語ではタホマですが、うまくいきません。 私はさらにLayerContents.toString()を変換しようとしました。

答えて

0

テキストを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(); 
} 
関連する問題