views:

909

answers:

3

Hi,

How do I programatically take a screenshot of an application in Linux? I'm using c++. Any idea? For windows there are a lot of resources but I can't find anything for linux

Any help? Thanks

+2  A: 

Already answered here:

http://stackoverflow.com/questions/675471/screenshot-of-a-windows-application-running-under-wine-linux/675561

Edit: if you want to do it in C, try Xlib. Some links:

ChristopheD
Humm... Since I'm building a screencast application, I need it to be as fast as possible. Saving it to disk and opening it again is probably time consuming. But I'll give it a try!
Noyoudont
Ok, i added some C links.
ChristopheD
Xlib alone does not really help. AFAIK, there is no way to do fast screenshots purely using Xlib.
Zifre
+1  A: 

If you just want a screen recorder, try using xvidcap. If you want to make your own, try looking at the sources. I'm not really sure how it works though. My guess is that it uses the XShm extension somehow.

Zifre
A: 

Can't you just do this with http://www.imagemagick.org/script/index.php ?

It's usually onboard the linux repos, and you can do a lot more than just take a screen shot with it... http://tips.webdesign10.com/how-to-take-a-screenshot-on-ubuntu-linux