fltk documentation对于 Fl_Image 类,提到了 Fl_Image::draw(int x, int y, int w, int h, int cx, int cy),据我所知,它绘制了 Fl_Image 的一部分。当然不能直接调用fltk中的任何draw()方法,那么如何实现类似的结果呢?如何使用 draw() 方法绘制 Fl_Image 的一部分?
不幸的是,fltk 的“Drawing Images”文档没有帮助,我已经检查了 fltk 安装提供的示例文件(我使用的是 ubuntu),但是没有一个示例提到如何使用此功能.
我知道通常绘制图像的方式是这样的:
//...
Fl_Box b(x,y,w,h);
Fl_PNG_Image i("ex.png");
b.image(i);
//...
但这没有用,因为它只是使用(我假设)常规的 Fl_Image::draw(int x, int y, int w, int h) 函数。有趣的是,documentation明确阅读“图像可以用作小部件的标签使用 image() 和 deimage() 方法或直接绘制。”。
最佳答案
How can I use the draw() method to draw a portion of an Fl_Image?
您需要子类化 Fl_Image 或某些 Fl_Widget 并覆盖绘制函数。
关于c++ - fltk1.3 Fl_Image::draw(边界框),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52416256/