我编写了一个简单的Java (1.5) CORBA应用程序(部署在Tomcat-6服务器上),它使用-based与InDesign服务器通信。
在我设法添加作业选项(存储在文件系统中的单独文件中)之后,我想对Javascript文件执行同样的操作,它在InDesign客户机中已经运行得很好。不幸的是,我无法确定如何将脚本“挂钩”到我的CORBA应用程序中,就像我处理作业选项一样。
不幸的是,官方文档没有告诉我如何做到这一点。有人能提供帮助吗?
发布于 2012-07-26 21:06:23
在钻研了大量的文档(不存在;) )javadoc以及官方和非官方的adobe论坛之后,我自己找到了一个解决方案。
CORBA应用程序拥有一个未记录的方法doScript(arg0, arg1, arg2, arg3, arg4),它确实可以执行脚本。像这样的代码片段可以执行javascript (也许其他脚本也可以):
String scriptPath = "/path/to/my/javascripts/"; // indesign server needs file access to this folder
VariableType file = VariableTypeUtils.createFile(scriptPath);
// ScriptLanguage.UNKNOWN - 1433299822
// ScriptLanguage.APPLESCRIPT_LANGUAGE - 1095978087
// ScriptLanguage.JAVASCRIPT - 1246973031
// do javascript
OptScriptLanguageEnum scriptType = OptArg.makeScriptLanguageEnum(1246973031);
// add values ...
VariableType[] params = new VariableType[1];
params[0] = VariableTypeUtils.createBoolean(true);
OptVariableTypeSeq args = OptArg.makeVariableTypeSeq(params);
// or if you got no args
args = OptArg.noVariableTypeSeq();
// undo modes
OptUndoModesEnum undoModes = OptArg.noUndoModesEnum();
// string to undo mode
OptString undoName = OptArg.noString();
// add to application
VariableType vt = gApp.doScript(file, scriptType, args, undoModes, undoName);希望任何人都能证实这一点。:)
https://stackoverflow.com/questions/11634364
复制相似问题