suggestions about image manipulation in double buffering

I’m making a GUI for my board game, and I want to have a better animation display. My question is how can I change the appearance(height or width) of an image in double buffering as it animate. More specifically, In my program, how can the arrow image loop like a conveyor belt? Like it will gradually decrease its width started from the right side.

hope you can help me!