Design HTTP modules and handlers

What is the best way to intercept every request for an image on your site and ensure that a watermark is added to the image?

An HTTP module handling the AuthorizeRequest event
A custom HTTP handler configured to serve .png and .jpg files
An HTTP module handling the PostRequestHandlerExecute event
A custom HTTP handler set to handle .htm and .html pages