使用来自Web应用程序的photoshop文件

Ehs*_*san 6 php c# photoshop web-applications photoshop-script

我想与Photoshop文件交互并使用其动作和智能对象创建图像.

是否有任何php或C#API可以做到这一点?

Bik*_*nja 8

首先,我希望你能反思一下这种事情的合法性.Adobe会让你几乎只是将他们的应用程序代理到网络上吗?我看到他们有很多许可证,所以也许其中一个人实际上允许你这样做(但是,仍然可能有警告,所以我建议你阅读一下).由于这不是问题,我不再讨论这个问题了,我只是想提一下它,因为它应该是相关的.

现在,对于实际问题 - 如果您查看Microsoft Office Interop,Microsoft表示它在服务器端环境中不受支持.转到此Microsoft页面,并在"更多信息"部分中阅读使用Office的服务器端自动化的问题.

如果您决定运行常规客户端应用程序服务器端,有几个问题,如上述页面所述,但最重要的问题之一是:

与桌面交互: Office应用程序假定它们在交互式桌面下运行.在某些情况下,可能需要使应用程序可见,以使某些自动化功能正常工作.如果发生意外错误,或者如果需要一个未指定的参数来完成某个功能,则Office旨在通过模式对话框提示用户,该对话框会询问用户用户想要执行的操作.无法解除非交互式桌面上的模式对话框.因此,该线程无限期地停止响应(挂起).虽然某些编码实践可以帮助降低此问题的可能性,但这些实践无法完全阻止该问题.仅这一事实使得从服务器端环境运行Office应用程序变得风险且不受支持.

虽然这是Microsoft为其产品编写的,但这些或多或少适用于任何常规客户端应用程序.即使你仍然决定采用这种方法,正如Neville K已经建议的那样,这将是一项非常耗费资源的任务.

考虑到上述情况,我可能会问一个不同的问题,就像"使用什么库或服务器端应用程序来做任何你需要做的图像".


Dam*_*ien 3

这听起来很难,但有些公司似乎做到了Xee也可以读取 PSD(并且在源代码中对这种格式有一个史诗般的评论)。

但引用HN 的某人的话:

PSD从来没有打算成为一种数据交换格式:它是单个程序的序列化格式,与几乎任何其他软件相比,它具有更多实际人们所依赖的单独的不相关功能,并且保持了惊人的向后兼容性和几乎不间断的向前兼容性。在其存在的二十多年中的兼容性。在这种情况下,该产品的“文件格式”以及 Office 等类似的大型程序都需要受到批评。因此,我很难理解为什么有人会认为 PSD 文件将成为某种组织良好的文件格式,他们应该能够轻松地从自己的应用程序中进行解析,这只是天真的一厢情愿的想法:即使是Adob​​e 的其他产品打开这些文件时有限制;要真正操作这些文件,您确实需要与 Photoshop 的特定编辑模型高度兼容(因此这两类文件格式之间存在概念差异)。

我建议查看 Xee 的服务器端实用程序。

祝你好运。