Fabrice Closier <[EMAIL PROTECTED]> wrote: > I have one script running where i use 2 members bitmap + 1 text member > to generate a new composite of the 3... i need to [minimize and] rotate > the text info before making the composite. > how do i do this?
Hi Fabrice, Here's a variation on Buzz's handler that allows you to scale the title, and keep it transparent and in its original color. It's a good deal faster than the other handler of mine that was quoted, but it only deals with 90° turns. If the text uses more than one color, you'll need to rotate the rgb channel as well as the alpha channel: there's a line in the code below that you'll need to uncomment. (Caution, though: a bug in Director means that parts of letters that overhang others may appear in the wrong color). Cheers, James ---------------------------------------------------------------------------- on RotateImage90(aTextMember, aScale) -------------------------------- -- INPUT: <aTextMember> should be a text member, but the handler -- could be adapted for 32-bit bitmaps, Flash and -- VectorShape members -- <aScale> should be an integer or floating point number -- OUTPUT: an image object representing aTextMember rotated through -- 90° and scaled by aScale -- -- EXAMPLE: -- member("Bitmap").image = RotateImage90(member("Text"), 0.5) -------------------------------------------------------------------- tSource = aTextMember.image.extractAlpha() tRect = tSource.rect tWidth = tRect.width * aScale tHeight = tRect.height * aScale -- Create a rotated alpha channel tAlpha = image(tHeight, tWidth, 8) -- Read from top to bottom tQuad = [ \ point(tHeight, 0), \ point(tHeight, tWidth), \ point(0, tWidth), \ point(0, 0)] -- -- To read from bottom to top, use this instead -- tQuad = [ \ --point(0, tWidth), \ --point(0, 0), \ --point(tHeight, 0), \ --point(tHeight, tWidth)] -- Copy the rotated text image into the alpha channel tAlpha.copyPixels(tSource, tQuad, tRect) -- Make a new image (rotated) to put the rotated version in tTarget = image(tHeight, tWidth, 32, 8) tTarget.fill(tTarget.rect, aTextMember.color)--only for text members -- Use the following line instead for text in multiple colors or for -- non text members: -- tTarget.copyPixels(aTextMember.image, tQuad, tRect) tTarget.setAlpha(tAlpha) return tTarget end RotateImage90 [To remove yourself from this list, or to change to digest mode, go to http://www.penworks.com/lingo-l.cgi To post messages to the list, email [EMAIL PROTECTED] (Problems, email [EMAIL PROTECTED]). Lingo-L is for learning and helping with programming Lingo. Thanks!]