【问题标题】:Imagick setResolution() to read an Imagick object but not an empty Imagick objectImagick setResolution() 读取一个 Imagick 对象,但不是一个空的 Imagick 对象
【发布时间】:2018-01-10 17:06:07
【问题描述】:

有没有办法读取文件的分辨率而不是空的 Imagick 对象?

我们从手册中知道应该在读取文件之前设置分辨率,但我意识到它只适用于空的 Imagick 对象。

读取空Imagick对象分辨率的方法:

$im = new Imagick();
im->setResolution(300,300);
$im-> readimage($files);

我的问题是如何读取以下 Imagick 对象的分辨率?

$im = new Imagick($files);

在我的应用程序文件路径中,应读取为新的imagick object,而不是readimage(); 隐含的image

【问题讨论】:

  • 不确定你的意思。你想要一个空对象的分辨率吗?或者文件列表的分辨率,所有这些都可能不同?您想获取使用setResolution()的分辨率吗?
  • @Mark Setchell 不是一个空的对象,我在我的例子中清楚地说明了这一点。 Imagick 应该将文件列表的分辨率读取为新的 imagick 对象,例如$im = new Imagick($files);$files 是这里的一个数组。任何想法都将不胜感激。
  • getImageResolution() 那么呢?
  • @Mark Setchell $im = new Imagick($files); $im ->getImageResolution(300,300); 没有任何区别。在这种情况下如何正确获得分辨率?谢谢,
  • 我想帮助你,但你没有告诉我任何新的东西。请再次阅读您的问题 - 拼写检查器可能意外更改了某些内容。您无法使用 setResolution()获取图像分辨率。

标签: php image-processing imagick


【解决方案1】:

哇!这个分辨率很有趣。

为了达到这个目的,$files 数组应该被定义为像 $im = new Imagick($files); 这样的 new Imagick(); 对象,然后在将 setResolution(); 定义为 $im-> readimage($files); 之后将 $files 循环为像 $im-> readimage($files); 这样的图像readimage(); 可以读取新设置的读取分辨率。

$im = new Imagick($files);
$im->setResolution(144, 144);
foreach ($myfiles as $files){   
$im->readimage($files);
}

但是我问Mark Setchell setImageResolution(); 是否确实起到了与我期待他的想法相同的目的,尽管我们知道setImageResolution(); 没有参与阅读原始文件的分辨率。实际上是setResolution(); 完成了这项工作。 setImageResolution(); 用于设置或重新定义已被setResolution(); 读取的对象的分辨率

【讨论】:

    猜你喜欢
    • 2013-06-12
    • 1970-01-01
    • 2013-01-17
    • 2016-05-29
    • 2011-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-08
    相关资源
    最近更新 更多