我正在尝试编写一个程序,该程序可以将给定的BMP文件旋转180度并使用旋转后的图像创建一个新的BMP文件。我正在使用EasyBMP库。但是,每次尝试编译时,都会收到以下警告:
EasyBMP Warning: Attempted to access non-existent pixel (359, 236);
Truncating request to fit in the range [0,358] x [0,269].
我得到了数百个! (有问题的图像是359x270),奇怪的是我的代码实际上可以100%工作。当我运行该程序时,它确实会创建旋转的图像并且看起来很完美。
最佳答案
如果应该
for (int x = 0; x < width; x++) {
for (int y = 0; y < height; y++) {
color = in(x, y);
*(out(width - x - 1, height - y - 1)) = *color;
}
}
(请注意,添加了
<
而不是<=
和- 1
)。关于c++ - EasyBMP库编译错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4772148/