<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundGradientColors="[#808080, #808080]"
creationComplete="initApp();">
<mx:Script>
<![CDATA[
import mx.core.UIComponent;
private var img:Image;
private var offscreen:BitmapData;
private function initApp():void
{
// onscreen
testScreen.cacheAsBitmap = true;
testScreen.opaqueBackground = "opaque"; // 해결
// 오프스크린 생성
offscreen = new BitmapData(200,150,true,0xff000000);
// 동적 리소스 -> 비트맵데이터
//loadResource();
//test
testOffscreen();
}
private function loadResource():void
{
loadingImg.addEventListener(Event.COMPLETE, onLoadComplete);
loadingImg.source = "assets/0-0-0-0.png"; // 투명 타일(빨간색선 마름모)
}
// 이미지가 로드 되었다면, 화면에 그려본다.
private function onLoadComplete(e:Event):void
{
//trace("[loadingImg::Event.COMPLETE] lodingImg cw,ch : " + loadingImg.contentWidth + ", " + loadingImg.contentHeight);
// 오프스크린에 타일을 그려본다
offscreen.copyPixels(getBitmapData(e.target as Image),
new Rectangle(0,0, loadingImg.contentWidth,loadingImg.contentHeight),
new Point(0,0));
// flipping (offscreen -> onscreen)
testScreen.source = new Bitmap(offscreen);
}
private function testOffscreen():void
{
// 오프스크린에 타일을 그려본다
offscreen.copyPixels(getBitmapData(embeddedImg),
new Rectangle(0,0, embeddedImg.contentWidth,embeddedImg.contentHeight),
new Point(0,0));
// flipping (offscreen -> onscreen)
testScreen.source = new Bitmap(offscreen);
//onScreen2.opaqueBackground
}
// 이미지를 읽어서 비트맵 데이터로 만든다
private function getBitmapData( target : Image ) : BitmapData
{
var bd : BitmapData = new BitmapData( target.contentWidth, target.contentHeight,
true, 0x00ffffff); // 알파 적용
var m : Matrix = new Matrix();
bd.draw( target, m );
return bd;
}
]]>
</mx:Script>
<mx:Image x="10" y="10" id="testScreen"/>
<mx:Image x="379.5" y="10" id="embeddedImg" source="@Embed('assets/0-0-0-0.png')"/>
<mx:Image x="379.5" y="51" id="loadingImg"/>
<mx:Label x="271.5" y="10" text="투명 png : "/>
<mx:Label x="271.5" y="51" text="투명 png(동적로드)"/>
</mx:Application>
<![CDATA[
import mx.core.UIComponent;
private var img:Image;
private var offscreen:BitmapData;
private function initApp():void
{
// onscreen
testScreen.cacheAsBitmap = true;
testScreen.opaqueBackground = "opaque"; // 해결
// 오프스크린 생성
offscreen = new BitmapData(200,150,true,0xff000000);
// 동적 리소스 -> 비트맵데이터
//loadResource();
//test
testOffscreen();
}
private function loadResource():void
{
loadingImg.addEventListener(Event.COMPLETE, onLoadComplete);
loadingImg.source = "assets/0-0-0-0.png"; // 투명 타일(빨간색선 마름모)
}
// 이미지가 로드 되었다면, 화면에 그려본다.
private function onLoadComplete(e:Event):void
{
//trace("[loadingImg::Event.COMPLETE] lodingImg cw,ch : " + loadingImg.contentWidth + ", " + loadingImg.contentHeight);
// 오프스크린에 타일을 그려본다
offscreen.copyPixels(getBitmapData(e.target as Image),
new Rectangle(0,0, loadingImg.contentWidth,loadingImg.contentHeight),
new Point(0,0));
// flipping (offscreen -> onscreen)
testScreen.source = new Bitmap(offscreen);
}
private function testOffscreen():void
{
// 오프스크린에 타일을 그려본다
offscreen.copyPixels(getBitmapData(embeddedImg),
new Rectangle(0,0, embeddedImg.contentWidth,embeddedImg.contentHeight),
new Point(0,0));
// flipping (offscreen -> onscreen)
testScreen.source = new Bitmap(offscreen);
//onScreen2.opaqueBackground
}
// 이미지를 읽어서 비트맵 데이터로 만든다
private function getBitmapData( target : Image ) : BitmapData
{
var bd : BitmapData = new BitmapData( target.contentWidth, target.contentHeight,
true, 0x00ffffff); // 알파 적용
var m : Matrix = new Matrix();
bd.draw( target, m );
return bd;
}
]]>
</mx:Script>
<mx:Image x="10" y="10" id="testScreen"/>
<mx:Image x="379.5" y="10" id="embeddedImg" source="@Embed('assets/0-0-0-0.png')"/>
<mx:Image x="379.5" y="51" id="loadingImg"/>
<mx:Label x="271.5" y="10" text="투명 png : "/>
<mx:Label x="271.5" y="51" text="투명 png(동적로드)"/>
</mx:Application>
'프로그래밍 > Flex/AIR' 카테고리의 다른 글
마우스로 패널 크기 조절하기 예제 (2) | 2007.02.16 |
---|---|
BitmapData의 이해, BlendMode, alpha map (4) | 2007.02.09 |
BitmapData 투명 이미지 사용시..!! (3) | 2007.02.08 |
BitmapData 사용시 문제점? 투명 이미지 사용시.. (0) | 2007.02.08 |
Not using embedded fonts with rotation, alpha (1) | 2007.02.08 |
[other] napkin skins stage two programmatic (0) | 2007.01.30 |
TAG bitmapData
댓글을 달아 주세요
근데 겹쳐 그리니까. 불투명으로 인식되서....
2007.02.08 15:13 신고 [ ADDR : EDIT/ DEL : REPLY ]이상하다 =.=
사람들은 죽을걸 알면서도 살잖아 .사랑은 원래 유치한거에요
2013.07.29 04:41 [ ADDR : EDIT/ DEL : REPLY ]희미한 달빛이 샘물 위에 떠있으면,나는 너를 생각한다.
2013.08.04 06:34 [ ADDR : EDIT/ DEL : REPLY ]