It depends on what sort of graphics and graphics manipulation you're planning to do. You mention a couple of things you want to do, and I think that Image::Magick is more geared to that sort of work. GD and other modules built on top of that (like GD::Graph
) are more aimed at producing "new" images like charts.
Of course, the best thing to do is to experiment with both modules. Read the documentation and determine if it will do what you want. Write sample programs and experiment. Maybe there are other modules (you examples hint at Web-oriented graphics manipulations) which provide your needs out of the box and you don't need the "lower-level" Image::Magick or GD libraries.