Umm you should probably use Manic Panic or Directions. I've been told they are the best semi permanent hair dyes. I used them when I was in High School.
As for the bleaching, hmm what kind of purple shade are you aiming for? Can you link me a picture? I also want a picture of how your hair looks right now in order to help you more. I don't think you need to bleach it by the way. If your hair is a combination of dark pink to dark purple, there is no need to bleach it. Just wait till it fades out a slightly bit more.
mix up a bowl of shampoo, baking soda and washing up liquid (this is very drying but won't damage like bleach), leave it on for 2 hours and then wash it off. itll fetch most of the colour right out unless your pink was atomic pink (that stuff is impossible to remove without bleach).
then you can pop a new purple dye directly on top (manic panic, la riche directions, sfx or crazy colour are all non damaging)
That depends on how dark your current shades are and what particular shade of purple you're going for. If it's a vivid purple then lightening it a little will help as the color will show up better. But if you're going for a darker purple like plum, then you could try putting the purple color you plan to use over your current shade and seeing what happens. However, since you have pinkish tones, that may affect the final result and give it a lighter shade where the pink is. Generally speaking, you have to bleach your hair, then color it your desired shade to get it a uniform color because the bleaching process makes it all one shade to start with. Dyeing hair will multi-tones with give you multi-tone results due to the presence of the different shades.
Manic Panic and Ion Color Brilliance are good brands to use.