Some question about alpha

Hello, I’m making a project and I’m having some problems

  1. I have some images and I want to blit them inside another surface that i
    created using SDL_CreateRGBSurface the images are the corners and the
    filing, to make resizeble chat bubbles, the problem is that I’m not finding
    a way to make the transparent spaces transparent without filling the
    surface i created with a color and then using SDL_SetColorKey

  2. I’m using SDL_gfx to rotate some images, but the ones that I have used
    SDL_SetAlpha lose the alpha, is there a way to keep the alpha that i have
    set or i will have to save the value in a temporary variable to set the
    alpha again after rotating? is there a way to retrieve the alpha the i have
    set on the SDL_SetAlpha?