#include <allegro5/allegro.h> ALLEGRO_BITMAP *al_create_sub_bitmap(ALLEGRO_BITMAP *parent, int x, int y, int w, int h)
The sub-bitmap may originate off or extend past the parent bitmap.
See the discussion in al_get_backbuffer(3) about using sub-bitmaps of the backbuffer.
The parent bitmap’s clipping rectangles are ignored.
If a sub-bitmap was not or cannot be created then NULL is returned.
When you are done with using the sub-bitmap you must call al_destroy_bitmap(3) on it to free any resources allocated for it.
Note that destroying parents of sub-bitmaps will not destroy the sub-bitmaps; instead the sub-bitmaps become invalid and should no longer be used for drawing - they still must be destroyed with al_destroy_bitmap(3) however. It does not matter whether you destroy a sub-bitmap before or after its parent otherwise.
|Allegro reference manual|