I would to have mulitple images for products. IE One image would be the product the second image would be the product image with a on sale banner in it. Is therea was to tell magento which image to use? So when the product is on sale the picure with the banner will be displayed.
I think this will help you: https://www.magecomp.com/magento-product-labels.html
You can try this extension - Product Labels
This extension will let you set product statuses based on product attributes, it will be easy to highlight products on sale.
While Amasty is obviously pushing their own solution, I have to say that it is a good solution. We use it on a number of sites without any real problems. The ability to create rules (similar to promotions rules) to apply labels is pretty easy to use and flexible.
I've not used the other extension, but it looks similar although with fewer conditions available.