【问题标题】:Open JPEG/PNG image in photoshop when downloaded from my website从我的网站下载时在 Photoshop 中打开 JPEG/PNG 图像
【发布时间】:2014-01-14 17:53:06
【问题描述】:

我有一个 PHP Web 应用程序正在运行,管理员可以在其中下载用户提交的图像文件。现在,我希望当管理员将这些图像下载到他的 PC 时,他应该双击该图像,如果安装了它应该在 Photoshop 中打开。 这可能吗? 或者有没有办法从 jpg/png 文件中写入 psd 文件? 我期待着您的回答。

谢谢

【问题讨论】:

  • 我很确定这是 PC 特有的东西,您可以尝试使用 .psd 文件作为图像格式,它们默认为 photoshop
  • 这取决于用户的机器。用户需要设置他/她的机器和/或浏览器以使用 Photoshop 打开 .psd 文件。
  • 我们可以用php写一个psd文件吗?

标签: php image shell


【解决方案1】:

您可以使用 PHP ImageMagick 扩展加载一个 JPEG 文件,并将其 as PSD 发送到带有 MIME 类型的浏览器。

我相信 ImageMagick 中始终提供 PSD 支持,但请检查一下;我可能错了。

然后,浏览器必须知道将该文件重新路由到 PhotoShop。很可能 PhotoShop 安装程序已经这样指示它,但您可能还需要配置浏览器。

$image = new Imagick();

$image->readImage("myImage.jpg");

$image->setImageFormat('psd');
header('Content-type: image/photoshop');
die($image);

真正肮脏的做事方式是“定义”你自己的 MIME 类型:

$jpeg = 'test.jpg';

Header('Content-Type: application/jpeg-with-photoshop');
Header('Content-Length: ' . filesize($jpeg);
readfile($jpeg);

浏览器将第一次弹出一个窗口,提示“WTF?我该怎么处理 jpeg-with-photoshop 文件?!?”。只需单击“打开方式 > 选择应用程序 > 在磁盘上查找应用程序 > clickety clickety click > Photoshop”,浏览器就会记住,并始终通过启动 Photoshop 打开真正的 JPEG 文件。然后 Photoshop 会将对象识别为 JPEG 文件并正确打开它。

【讨论】:

  • 这是一个PHP的图像处理包。您可以在php.net/manual/en/book.imagick.php 找到更多信息。大多数 PHP 托管服务默认提供 ImageMagick,有时您必须要求提供;您可以查看 phpinfo() 的输出以查看 Magick 是否在已安装的模块中。
  • 我可以将它与我的 WAMP/APACHE 一起使用吗?
  • 是的,当然。 Windows 也有一个发行版,你可以从 php.net 下载各种包。
  • 非常感谢,我已经设置了 imageMagick 并且工作正常。
猜你喜欢
  • 1970-01-01
  • 2019-05-17
  • 2014-08-15
  • 1970-01-01
  • 1970-01-01
  • 2021-12-29
  • 1970-01-01
  • 2018-09-12
  • 1970-01-01
相关资源
最近更新 更多