probably the biggest problem you are going to have is registration from frame to frame. This will not be possible with an automated system, so you will need a way of manipulating the registration point visually. In the case of those sprites, they have just been ripped from a game and placed on an image, but the usual way to do this would be to create the animation using all the same size frames,... then output to a spritesheet where there are two options.
1. all frames the same size,...this would be the size of the largest frame so it can be wasteful, but it is very easy to do.
2. all frames get cropped and stored with registration info. In order to retrieve the sprite, you need to retrieve the registration info for how it is supposed to line up.
If you have a spritesheet like #2 (you do) it can be difficult to work out the proper registrations. The easiest way would be to import all the frames into a paint program that supports layers or frames, align them, and then export using one of the 2 methods.
1. all frames the same size,...this would be the size of the largest frame so it can be wasteful, but it is very easy to do.
2. all frames get cropped and stored with registration info. In order to retrieve the sprite, you need to retrieve the registration info for how it is supposed to line up.
If you have a spritesheet like #2 (you do) it can be difficult to work out the proper registrations. The easiest way would be to import all the frames into a paint program that supports layers or frames, align them, and then export using one of the 2 methods.