I want to enable a user on a website to upload an image, and write some text over it. Also, they should be able to crop/scale/move the image and text. For that stuff, I can do it in jQuery.
After they’ve made the image the way they want it, is there a way i can take a screenshot of that image (using PiL) and save it on the server?
What is the best/proper way to do this?
Taking a ‘screenshot’ of the picture is neither the best, nor the proper way to do it. To take a screenshot, you need to execute code on the client machine, which is ‘not possible’ in a website scenario.
Have a look at lolcat builder (I can’t think of a more serious example right now ;). Everytime you click the ‘Preview’ button, the image src is updated with an url containing the text, its style and position. The request is handled by the server which will generate a new picture to display.