我想用Python在Photoshop中打开一个PDF。我知道如何使用python打开photoshop (.psd)文件,但我想知道是否有一种方法可以指定用于打开文件的程序。
到目前为止,我要打开一个photoshop文档所要做的就是:
psd = "path\to\photoshop\document"
os.startfile(psd)但当我在PDF上使用os.startfile时,它会用Adobe Acrobat打开。我想用photoshop打开PDF。有什么想法吗?
发布于 2019-11-27 14:54:17
from comtypes.client import GetActiveObject
# Start up Photoshop application
# app = Dispatch('Photoshop.Application')
# Or get Reference to already running Photoshop application instance
app = GetActiveObject("Photoshop.Application")
fileName = "C:\Git\PS_Samples_Files\MyPDFFile.pdf"
docRef = app.Open(fileName)在https://github.com/lohriialo/photoshop-scripting-python上有更多示例
发布于 2013-02-05 01:14:06
os.startfile只启动指定的文件with its default application。将PDF的默认应用程序更改为photoshop会得到您想要的结果,但代价是在其他情况下打开PDF非常烦人。
要正确地做到这一点,您需要使用photshop的COM接口编写脚本。我还没有尝试过,但是this tutorial看起来可以满足您的需求。
发布于 2014-01-20 15:30:18
Photoshop具有打开名为Photoshop.PDFOpenOptions的PDF文档的选项
您需要win32com来分派photoshop应用程序。请参阅下面的示例代码
import win32com.client
import os, glob
folderin = r'D:\in'
if (__name__ == '__main__'):
psApp = win32com.client.Dispatch('Photoshop.Application')
for infile in glob.glob(os.path.join(folderin, '*.pdf')):
options = win32com.client.Dispatch('Photoshop.PDFOpenOptions')
options.CropPage = 0 # BoundingBox
options.Resolution = 300 # Pixels
options.Mode = 1 # Grayscale
options.BitsPerChannel = 8 # 8 bits per channel
options.AntiAlias = True
options.ConstrainProportions = True #Deprecated for Adobe Photoshop CS3
doc = psApp.Open(infile, options)
doc.flatten
doc.Trim(1)
doc.Close(2)
psApp.Quit()https://stackoverflow.com/questions/14691704
复制相似问题