首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Python在Photoshop中打开PDF

使用Python在Photoshop中打开PDF
EN

Stack Overflow用户
提问于 2013-02-05 01:07:38
回答 3查看 1.8K关注 0票数 0

我想用Python在Photoshop中打开一个PDF。我知道如何使用python打开photoshop (.psd)文件,但我想知道是否有一种方法可以指定用于打开文件的程序。

到目前为止,我要打开一个photoshop文档所要做的就是:

代码语言:javascript
复制
psd = "path\to\photoshop\document"
os.startfile(psd)

但当我在PDF上使用os.startfile时,它会用Adobe Acrobat打开。我想用photoshop打开PDF。有什么想法吗?

EN

回答 3

Stack Overflow用户

发布于 2019-11-27 14:54:17

代码语言:javascript
复制
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上有更多示例

票数 1
EN

Stack Overflow用户

发布于 2013-02-05 01:14:06

os.startfile只启动指定的文件with its default application。将PDF的默认应用程序更改为photoshop会得到您想要的结果,但代价是在其他情况下打开PDF非常烦人。

要正确地做到这一点,您需要使用photshop的COM接口编写脚本。我还没有尝试过,但是this tutorial看起来可以满足您的需求。

票数 0
EN

Stack Overflow用户

发布于 2014-01-20 15:30:18

Photoshop具有打开名为Photoshop.PDFOpenOptions的PDF文档的选项

您需要win32com来分派photoshop应用程序。请参阅下面的示例代码

代码语言:javascript
复制
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()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14691704

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档