bake blf/bgl results in a buffer ?

I was wondering about this, I lack of gl knowledges :

once I trigger this one time :


scene.post_draw = [Area._draw]

it runs the _draw() function. in this case it draws blf and bgl items for an ui.

for area in Area.members : 
    blf...
    bgl..

most of the time the gl items are not modified after that.

would it be possible to store the result the first time into a buffer to gain some cycles ?


if Area.buffer == False
    scene.post_draw = [Area._draw]
else :
    scene.post_draw = [Area.buffer]

store it as a texture ?