当我没有为 sampleImage 或 resizeImage 设置可选的高度参数时,Imagick 会抱怨
Imagick complains when I don't set an optional height parameter for sampleImage or resizeImage
当我使用 resizeImage 或 sampleImage 时,出现错误提示我没有提供足够的参数,就像这样...
Warning: Imagick::sampleimage() expects exactly 2 parameters, 1 given
事实上,我只提供了第一个参数,因为我想设置宽度而不是高度,以保持纵横比...
$subImage->resizeImage($w);
代码有效,我相信除第一个参数外所有参数都应该是可选的,那么为什么会出现错误以及如何消除它?
对于Imagick::sampleImage
,您需要计算最终高度。
// new height = original height / original width * new width
$h = $subImage->getImageHeight() / $subImage->getImageWidth() * $w
$subImage->sampleimage($w, $h);
I believe all parameters should be optional
记住 Imagick
库绑定了 ImageMagick 的 C-API,一些继承自 CLI-API 的 porcelain 不会直接继承。您的应用程序 必须 进行额外的计算,否则您将遇到未定义的行为。处理纵横比、量子颜色、度数和百分比值是您负责的很好的例子。
当我使用 resizeImage 或 sampleImage 时,出现错误提示我没有提供足够的参数,就像这样...
Warning: Imagick::sampleimage() expects exactly 2 parameters, 1 given
事实上,我只提供了第一个参数,因为我想设置宽度而不是高度,以保持纵横比...
$subImage->resizeImage($w);
代码有效,我相信除第一个参数外所有参数都应该是可选的,那么为什么会出现错误以及如何消除它?
对于Imagick::sampleImage
,您需要计算最终高度。
// new height = original height / original width * new width
$h = $subImage->getImageHeight() / $subImage->getImageWidth() * $w
$subImage->sampleimage($w, $h);
I believe all parameters should be optional
记住 Imagick
库绑定了 ImageMagick 的 C-API,一些继承自 CLI-API 的 porcelain 不会直接继承。您的应用程序 必须 进行额外的计算,否则您将遇到未定义的行为。处理纵横比、量子颜色、度数和百分比值是您负责的很好的例子。