2010. 5. 2. 12:01 ADOBE CREATIVE SUITE
[CS5, Flash] 플래시 CS5 변경사항들
변경사항은 직접 체험한것들만.
플래시 CS5를 키고 작업중이던 프로젝트를 열어봤습니다.

1. 일단 CS4에서 폰트임베딩을 했을때 느려지던점이 없어졌습니다. (만세)
2. 그리고 단축키, CS4에선 돋보기 단축키가 M이였는데 Z로 변경되었습니다. (다른 CS툴들과 같아진거죠.)
3. 스크립트방식으로 폰트임베딩하는것이 없어졌습니다.
   메뉴에 Text > Font Embbeding이란 메뉴가 새로 생겼고,
   모든 기능을 폰트임베딩창에서 설정할 수 있습니다.
   CS4에선 스크립트방식과 UI모두 지원했었는데, 둘다 불편한점이 많았습니다.
4. 텍스트필드에 TLF라는 콤보박스가 생겼는데, 이제 UI에서 텍스트포멧을 지원하는 모양입니다.
5. CS5에선 다이나믹,인풋 텍스트에 임베딩하지않고 폰트를 지정할 수 없습니다.
   임베딩하지않은 다이나믹,인풋박스들은 컴파일된 swf를 폰트가 없는 컴퓨터에서 볼땐 기본폰트로 대체됬었죠.
   앞으로는 모바일도 비중이 늘어나면서 윈도우의 기본폰트가 더이상 기본폰트가 아님으로 괜찮은 변화같아요.

개인적인 느낌이지만 속도도 많이 빨라진것 같고 좀더 안정적으로 실행되는것 같습니다. ㅋㅋ


텍스트박스타입에 TLF Text와 Classic Text를 선택할 수 있게 되었습니다.


Font Embedding 창, CS4이전엔 스크립트도해보고 UI방식도 해봤는데 둘다불편했었어요.

2010. 3. 16. 20:56 PROGRAMMING
[AS3] typeof, 1120: Access of undefined property [OBJECT].
ㅅㅂ훌레쉬 as2에서 쓰던 typeof함수 이젠 못쓰는거??

as2에서는 객체의 존재여부를 typeof를 통해 알수있었습니다.
하지만 as3에선 typeof(없는객체)를 뿌리게되면 컴파일이 안되면서,
stop()이 있음에도 불구, 화면은 딸딸이를 치며 지랄을해요.

없을만한 객체의 존재여부를 알고싶을땐,
eval연산자를 이용해서 검사하면 됩니다.

as2에선 대충 이런식의 함수를 썼을거에요.
if(typeof(OBJECT)!="undefined"){
// code
}

as3에선 이렇게 검사하면 됩니다. MovieClip(root)는 as2의 _root와 같습니다.
if(MovieClip(root)["OBJECT"]){
// code
}

MovieClip(root)는 루트라고 했으니, 다른객체에 종속되어있을땐 MovieClip(root)대신에 부모객체를 써주세요.
2009. 12. 17. 17:11 PROGRAMMING
[FLASH/AS2] 플래시 액션스크립트2 크로스도메인 설정, AS2 CrossDomain
플래시에서 XML 데이타를 읽어들여야할때
로컬에선 잘 됬을지 모르나,
인터넷상에선 서버가 서로 틀리게 되면 보안정책 위반으로 읽어오지 못함

1. xml이 위치한 서버에 crossdomain.xml을 생성
2. swf를 로딩하는 곳에서 allowScriptAccess 확인
* 스크립트에서 직접 보안정책파일(crossdomain.xml)을 지정할 수도 있다.

crossdomain.xml
<?xml version="1.0" encoding="utf-8"?>
<cross-domain-policy>
 <allow-access-from domain="*" />
</cross-domain-policy>
allow-access-from은 아래와 같이 쓸수 있음
<allow-access-from domain="*.kaudo.com" to-ports="*" />
<allow-access-from domain="kaudo.com" to-ports="80" />
<allow-access-from domain="www.kaudo.com" />


특별한 파일명으로 직접 설정할때에는 Flash 스크립트창에 직접 써줘도 된다.
System.security.allowDomain("*");
System.security.loadPolicyFile(http://도메인/crossdomain.xml);


그리고 swf를 로딩하는 <object나 <embed태그에 allowScriptAccess는 always로 명시해줘야한다.
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="984" height="855" align="middle">
<param name="allowScriptAccess" value="always" />
<param name="allowFullScreen" value="true" />
<param name="movie" value="플래시파일.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#FFFFFF" />
<param name="wmode" value="transparent" />
<embed src="플래시파일.swf" quality="high" bgcolor="#FFFFFF" width="984" height="855" align="middle" allowScriptAccess="always" allowFullScreen="true" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />
</object>
allowScriptAccess = always, sameDomain, never 기본값은 sameDomain
2009. 12. 17. 16:53 PROGRAMMING
[FLASH/AS2] 플래시 액션스크립트2 배열 섞는 함수, Array Shuffle
플래시 액션스크립트 2 프로토타입 함수

함수는 아무데나 붙여넣고
배열명.Shuffle();

Array.prototype.Shuffle=function(){
   for(i=0;i<this.length;i++){
      var tmp=this[i];
      var randomNum=random(this.length);
      this[i]=this[randomNum];
      this[randomNum]=tmp;
   }
}

aryDoori.Shuffle();
2009. 11. 16. 09:22 COMPUTER
Flash ActionScript 버전 변경
File > Publish Settings(Ctrl+Shift+F12) > Script > ActionScript X.X

2009. 7. 3. 17:09 PROGRAMMING
[FLASH/AS2] 액션스크립트 풀스크린 오른쪽메뉴, FullScreen, ContextMenu

Stage["displayState"] = "fullScreen";
Stage["displayState"] = "normal";

cmDefault=new ContextMenu();
cmDefault.builtInItems.zoom=false;
cmDefault.builtInItems.quality=false;
cmDefault.builtInItems.play=false;
cmDefault.builtInItems.loop=false;
cmDefault.builtInItems.rewind=false;
cmDefault.builtInItems.forward_back=false;
cmDefault.builtInItems.print=false;
cmDefault.builtInItems.save=false;
cmDefault.customItems.push(new ContextMenuItem("menuitem",functionname));
_root.menu=cmDefault;
function functionname(){
 // TODO
}

2008. 10. 20. 17:17 ADOBE CREATIVE SUITE
adobe flash player 9
자리를 비웠다가 왔더니 플래시 플레이어 10을 받아놓고 업데이트 하시겠냐?고 해서
기뿐마음에 업데이트를 눌렀다.
익스플로어 8 베타버젼이였는데 설치실패에러를 뱉어낸다.
3일동안 크롬쓰다가 혹시나해서 9.0으로 깔아봤더니 잘 된다.
역시나 훌레쉬는 믿을게 못되는것인가...

최근에 올라온 글

최근에 달린 댓글