javascript - 如何从 Photoshop 脚本运行 Python 脚本?
问题描述
是否可以从 Photoshop 脚本运行 Python 脚本?例如:我有两个文件:my_photoshop script.jsx,它将从 Photoshop 运行。还有秒 (python) my_python_script.py,它是由第一个脚本从 Photoshop 调用的。
my_photoshop script.jsx
// Call external file from Photoshop
call my_python_script.py; //pseudo code
my_python_script.py
# Python script
print ("Hello from Photoshop!")
我知道可以通过批处理文件做类似的事情......
my_photoshop script.jsx
// Call the external batch files
var myBat = new File("D:\\temp\\my_batch_file.bat");
alert(myBat);
myBat.execute();
my_batch_file.bat
echo Python...
"C:\path\to\python.exe" "c:\path\to\hello_world.py"
pause 100
但是,可以直接做吗?或者这是尽可能接近?
解决方案
使用app.system
:
my_script.jsx
app.system('python "D:/path/to/my_py.py" ' + app.version)
my_py.py:
import sys
file = open("D:/path/to/py.log", "w")
file.write("Hello from Photoshop!\n")
file.write("PS version: " + str(sys.argv[1]))
file.close()
py.log的结果:
Hello from Photoshop!
PS version: 20.0.10
ps 注意File.execute()
使用默认应用程序打开文件。如果用户将.bat
文件与文本编辑器关联,运行myBat.execute()
将在文本编辑器中打开文件。
推荐阅读
- angular - Ionic 4:“加载控制器”dismiss() 在 present() 之前调用,这将保持微调器而不关闭
- mysql - MySQL - 如果字段有值则选择行,否则选择空值
- java - 可以做些什么来优化给定的代码
- java - Android/Firebase - 如何将检索到的数据添加到 ArrayList
- python - python - 如何在pythons Popen中将args传递给args?
- ios - ios / swift - 我无法附加表格视图单元格
- c++ - 如何从文件中读取值,然后使用它们来初始化 2D 数组 C++
- iphone-x - ios12 和 xcode 10 中的验证码错误
- apache-kafka - KSQL - 在 WINDOW TUMBLING 子句中更改时区
- uicollectionview - IOS ReactorKit 单元选择无法正常工作