Package org.apache.flex.swf.tags

Examples of org.apache.flex.swf.tags.DefineBitsLossless2Tag


        return readDefineBitsLossless(new DefineBitsLosslessTag());
    }

    private DefineBitsLossless2Tag readDefineBitsLossless2() throws IOException
    {
        return (DefineBitsLossless2Tag)readDefineBitsLossless(new DefineBitsLossless2Tag());
    }
View Full Code Here


        }
    }

    public static DefineImage createDefineBitsLossless(int[] pixels, int width, int height) throws IOException
    {
        DefineBitsLossless2Tag defineBitsLossless = new DefineBitsLossless2Tag();
        defineBitsLossless.setBitmapFormat(DefineBitsLosslessTag.BF_24BIT_RGB_IMAGE);
        defineBitsLossless.setBitmapWidth(width);
        defineBitsLossless.setBitmapHeight(height);

        byte data[] = new byte[pixels.length * 4];

        for (int i = 0; i < pixels.length; i++)
        {
            int offset = i * 4;
            int alpha = (pixels[i] >> 24) & 0xFF;
            data[offset] = (byte)alpha;

            // Premultiply the alpha channel
            if (data[offset] != 0)
            {
                int red = (pixels[i] >> 16) & 0xFF;
                data[offset + 1] = (byte)((red * alpha) / 255);
                int green = (pixels[i] >> 8) & 0xFF;
                data[offset + 2] = (byte)((green * alpha) / 255);
                int blue = pixels[i] & 0xFF;
                data[offset + 3] = (byte)((blue * alpha) / 255);
            }
        }
        defineBitsLossless.setZlibBitmapData(JPEGTranscoder.deflate(data));
        return new DefineImage(defineBitsLossless, width, height);
    }
View Full Code Here

TOP

Related Classes of org.apache.flex.swf.tags.DefineBitsLossless2Tag

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.