C# コンソール アプリケーションを使用して Adobe ブリッジと通信する方法はありますか?
ブリッジを使用して、特定の画像フォルダー (例: SamplePictures) のサムネイルを作成したい..
Bridge が Java スクリプトをサポートしていることは知っていますが、JavaScript を使用して Bridge にプログラミングする方法はありますか?
C# コンソール アプリケーションを使用して Adobe ブリッジと通信する方法はありますか?
ブリッジを使用して、特定の画像フォルダー (例: SamplePictures) のサムネイルを作成したい..
Bridge が Java スクリプトをサポートしていることは知っていますが、JavaScript を使用して Bridge にプログラミングする方法はありますか?
プロセスは次のとおりです。
Bridge SDK を実行する
サムネイルを作成する方法を見つける
JScript 経由でメソッドを呼び出す
JScript から C# を呼び出す
参考文献
Bridge をプログラムする唯一の方法は、com、Photoshop、Indesign、Illustrator などを備えた Adobe 製品を使用して、com 経由で BridgeTalk を使用することです。選択した Bridge ファイルのリストを取得する例を次に示します。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
namespace Bridge
{
class Program
{
[STAThread]
static void Main(string[] args)
{
dynamic app = Activator.CreateInstance(Type.GetTypeFromProgID("Photoshop.Application"));
//Get list of select files from Bridge
String Code = "var fileList;" +
"var bt = new BridgeTalk();" +
"bt.target = 'bridge';" +
"bt.body = 'var theFiles = photoshop.getBridgeFileListForAutomateCommand();theFiles.toSource();';" +
"bt.onResult = function( inBT ) { fileList = eval( inBT.body ); }" +
"bt.onError = function( inBT ) { fileList = new Array(); }" +
"bt.send(8);" +
"if ( undefined == fileList ) {" +
"fileList = new Array();}" +
"fileList = decodeURI(fileList.toString());";
String RC = app.DoJavaScript(Code, null, null);
ArrayList list = new ArrayList();
list.AddRange(RC.Split(new char[] { ',' }));
for (int index = 0; index < list.Count; index++)
{
Console.WriteLine(list[index]);
}
Console.ReadLine();
}
}
}