繁体   English   中英

Magick ++ API中用于调整大小的默认过滤器类型

[英]Default filter type for resize in magick++ api

我正在尝试使用C ++中的Magick ++ API调整图像大小。 我已经使用以下代码,并且运行良好。

Image second = image;
Geometry newSize = Geometry(69,69);
// Resize without preserving Aspect Ratio
newSize.aspect(true);
second.resize(newSize);

结果很好,但是我需要知道它使用的默认过滤器类型,因为我没有在resize()函数中提供任何其他参数。 我已经搜索了文档,但找不到太多。 感谢您的帮助。

在MagickCore库中, ReszieImage方法确实默认为LanczosFilter

MagickCore/resize.c

 filter_type=LanczosFilter; if (filter != UndefinedFilter) filter_type=filter; 

但是在Magick++ ,默认的filterType是UndefinedFilter 采取以下。

Magick::Image image("rose:");
std::cout << image.filterType() << std::endl;
//=> 0

恕我直言,始终使用Magick::image::filterType( const Magick::FilterTypes filterType_ )定义过滤器。 将来在您阅读代码时会有所帮助。

我有自己的问题的答案。 Lanczos重新采样 可以在这里找到非常好的magick ++文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM