【问题标题】:Drawing part of image/font in Allegro5在 Allegro5 中绘制图像/字体的一部分
【发布时间】:2013-11-13 11:29:47
【问题描述】:

有没有办法在 Allegro5 中只绘制(或显示)图像/字体的一部分?

例如,如果我有一个正方形 A 和一个图像 B,并且我只想绘制/显示与 A(在本例中为 C)重叠的 B 部分,我该怎么做?

插图:

    +-----+
    |B +--|-----+
    |  | C|     |
    +-----+     |
       |   A    |
       |        |
       +--------+

如果我只是使用原语来覆盖 B 中我不想显示的部分,我可能会覆盖之前绘制的位于 B 所在位置的对象。

【问题讨论】:

    标签: c++ user-interface graphics allegro5


    【解决方案1】:

    我设法通过使用 al_set_clipping_rectangle 解决了这个问题,从而可以只裁剪某个矩形。

    来自 Allegro5 文档:

    void al_set_clipping_rectangle(int x, int y, int width, int height)

    设置目标位图或显示像素被剪裁到的区域。默认是将像素剪切到整个位图。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    • 2014-08-02
    • 2016-02-06
    相关资源
    最近更新 更多