我正在尝试使用AE Extendscript将AE中的一些文本复制到系统剪贴板中。 After Effects不直接在Extendscript中提供此功能。
我可以将文本放在文本层上,然后将其复制到剪贴板:
app.executeCommand(app.findMenuCommandId("Copy"));
但要做到这一点,必须选择文本。 可以通过以下方式完成:
app.executeCommand(app.findMenuCommandId("Select All"));
但是,光标必须位于该字段中才能工作。
我正在尝试将光标放在带有After Effects中的Extendscript的文本层文本字段中。 无论如何我都看不到这样做。
我已经设法使用.bat方法将变量的值复制到系统剪贴板,但这不适用于所有系统。最好的办法是留在AE内。
有没有人知道如何控制AE Extendscript中的文本光标?
有什么想法吗?
答案 0 :(得分:0)
如何使用vbs脚本和sendkeys
?您可以创建脚本来执行sendkeys事务(因为您无法在javascript中执行此操作),然后使您的javascript文件在适当的位置调用vbs脚本。
答案 1 :(得分:0)
以下是Extendscript中的作用:
//This works on Vista and Win 7, XP requires the user to copy 'clip.exe' to the 'sys32' folder.
function copyTextToClipboard2(text)
{
var folderForTempFiles = Folder.temp.fsName;
//alert(folderForTempFiles)
// create a new textfile and put the text into it
var clipTxtFile =new File(folderForTempFiles + "/ClipBoard.txt");
clipTxtFile.open('w');
clipTxtFile.write(text);
clipTxtFile.close();
// use the clip.exe to copy the contents of the textfile to the windows clipboard
var clipBatFile =new File(folderForTempFiles + "/ClipBoard.bat");
clipBatFile.open('w');
clipBatFile.writeln("clip < " + folderForTempFiles + "/ClipBoard.txt");
clipBatFile.close();
clipBatFile.execute();
}
有没有人有类似的苹果?
答案 2 :(得分:0)
我在After Effects CC的Mac上对此进行了测试,效果很好:
text = 'Lets copy some text'
var folderForTempFiles = Folder.temp.fsName;
// create a new textfile and put the text into it
var clipTxtFile =new File(folderForTempFiles + "/ClipBoard.txt");
clipTxtFile.open('w');
clipTxtFile.write(text);
clipTxtFile.close();
system.callSystem("cat " + folderForTempFiles + "/ClipBoard.txt" + " | pbcopy");