C++ 如何使用Magick+;定位图像+;?
我知道这是一个非常简单的问题,但我一直无法找到答案。作为一种解决方法,我一直在使用C++ 如何使用Magick+;定位图像+;?,c++,imagemagick,magick++,C++,Imagemagick,Magick++,我知道这是一个非常简单的问题,但我一直无法找到答案。作为一种解决方法,我一直在使用roll,但这并不理想。我希望能够使用Magick++库(而不是convert!)移动图像的内容,而不会将它们滚动到另一边。使用Magick::Image。正如fmw42在评论中指出的,扭曲()是您需要的方法 下面是一个使用-扭曲仿射的示例,但是SRT将为您提供更多的控制 #包括 int main(){ Magick::图像img(“向导:”); size_t numberOfArguments=4; double
roll
,但这并不理想。我希望能够使用Magick++库(而不是convert
!)移动图像的内容,而不会将它们滚动到另一边。使用Magick::Image。正如fmw42在评论中指出的,扭曲()是您需要的方法
下面是一个使用-扭曲仿射
的示例,但是SRT
将为您提供更多的控制
#包括
int main(){
Magick::图像img(“向导:”);
size_t numberOfArguments=4;
double*listOfArguments=新的double[numberOfArguments];
参数列表[0]=0.0;
参数列表[1]=0.0;
listOfArguments[2]=img.rows()/4.0;
listOfArguments[3]=img.columns()/4.0;
bool bestFit=Magick::MagickFalse;
变形,变形,变形,
许多争论,
论据清单,
最佳拟合);
img.write(“output.png”);
}
请记住,参数的数量在失真方法之间会发生变化,并且每个方法根据参数计数对参数的顺序进行不同的解释
例如,使用SRT
命令将映射为
=============== ========================================
Total Arguments Argument Order
--------------- ----------------------------------------
1 Angle
2 Scale, Angle
3 X, Y, Angle
4 X, Y, Scale, Angle
5 X, Y, ScaleX, ScaleY, Angle
6 X, Y, Scale, Angle, NewX, NewY
7 X, Y, ScaleX, ScaleY, Angle, NewX, NewY
=============== ========================================
使用-扭曲SRT。看见对不起,我不知道Magick++的等价物。