'Tip/Flash'에 해당하는 글 3건

FlashVars

Tip/Flash 2006. 8. 28. 20:42

1. FlashVars

사용용도로는 플래시 메뉴에서 현재 경로를 가리키는 메뉴버튼을 활성화 시킬 때,
그리고 각종(로그인 등) 변수를 주고 받는 식의 상태 체크에도 사용.
파일이름 뒤에 변수를 보내는 것 대신에 FlashVars를 이용한 변수는 embed 태그와 동시에 param 태그로부터 보내지고, SWF 파일이 로드되는 즉시 변수 값을 전달받을 수 있다.
모든 브라우저에서 정상적으로 구현하기 위해 object와 embed 태그에 모두 할당되어야 하고, 변수는 플래시의 _level0(_root.)에 전달된다.

2. allowScriptAccess

웹페이지의 플래시 컨텐츠는 HTML code로부터 플래시 플레이어에 대한 스크립팅을 수락 또는 거부를 하기 위해 allowScriptAccess 속성을 지정해야 한다. (인터넷 익스플로러를 위해 PARAM 태그, 넷스케이프 네비게이터를 위해 EMBED 태그)
Flash version 8에서의 디폴트 값은 sameDomain, 그 전 버전에서의 디폴트 값은 always.
  • never - 외부 스크립팅은 모두 거부
  • always - 외부 스크립팅은 모두 수락
  • sameDomain - SWF 파일이 웹페이지와 같은 도메인에 있다면 외부 스크립팅 수락 (Flash version 8부터 지원)
<!-- 아래의 플래시 삽입 코드를 포함한 웹페이지를 불러오면 myflashvars.swf 파일에 -->
<!-- myURL 변수 값인 http://weblogs.macromedia.com 이 전달된다.-->

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="myflashvars" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="myflashvars.swf" />
<param name="FlashVars" value="myURL=http://weblogs.macromedia.com/">
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed src="myflashvars.swf" FlashVars="myURL=http://weblogs.macromedia.com/" quality="high" bgcolor="#ffffff" width="550" height="400" name="myflashvars" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

.

<!-- 아래의 플래시 삽입 코드를 포함한 웹페이지를 불러오면 flashvars.swf 파일에 -->
<!-- username 변수 값인 Thomas 가 전달된다.-->

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="flashvars" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="flashvars.swf" />
<param name="FlashVars" value="username=Thomas" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed src="flashvars.swf" FlashVars="username=Thomas" quality="high" bgcolor="#ffffff" width="550" height="400" name="flashvars" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

Suffixes

Tip/Flash 2006. 8. 8. 18:20
코드 힌트를 나타내기 위한 접미사 사용

코드 힌트를 나타내려면, 각 객체의 이름에 특정 접미사를 붙여야 한다.
예를 들어, Array 클래스의 코드 힌트를 나타내는 접미사는 _array 이다.

// Array 객체 생성
var my_array = new Array ( );
// 변수뒤에.을 사용하면 코드 힌트가 나타남
my_array.

Variable suffix (Object type)

  • _array (Array)
  • _btn (Button)
  • _cam (Camera)
  • _color (Color)
  • _cm (ContextMenu)
  • _cmi (ContextMenuItem)
  • _date (Date)
  • _err (Error)
  • _lv (LoadVars)
  • _lc (LocalConnection)
  • _mic (Microphone)
  • _mc (MovieClip)
  • _mcl (MovieClipLoader)
  • _pj (PrintJob)
  • _nc (NetConnection)
  • _ns (NetStream)
  • _so (SharedObject)
  • _sound (Sound)
  • _str (String )
  • _txt (TextField)
  • _fmt (TextFormat)
  • _video (Video)
  • _xml (XML)
  • _xmlnode (XMLNode)
  • _xmlsocket (XMLSocket)

WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

코드페이지

Tip/Flash 2006. 7. 23. 15:36

플래시는 내부적으로 유니코드를 사용하며 기본적으로 모든 데이터를 유니코드(UTF-8 Universal Character Set Transformation Format, 8 bit)로 다룬다. 경우에 따라 URL을 다루거나 외부와 통신을 할 때 UTF-8가 아닌 운영체제가 사용하는 인코딩을 그대로 써야 할 경우가 있다. 예를 들어, 웹 서버가 기본적으로 UTF-8을 인코딩을 사용하지 않고, KSC5601(EUC-KR)을 사용하는 경우이다. 이런 호환성을 위해 플래시 MX에 System.System.useCodepage이 추가됐다.

System.useCodepage는 입출력에 유니코드를 쓸 것인지(false) 아니면 플래시 플레이어가 동작하고 있는 운영체제의 기본 인코딩 언어(로케일)을 사용할 것인지(true)를 결정한다. 한글 윈도우에서는 기본적인 인코딩은 KSC5601(EUC-KR)이다. 만일, 일본어 윈도우라면 기본 인코딩은 SJIS가 된다. 즉, SWF가 수행되는 환경의 인코딩을 사용하게 된다. 운영체제의 인코딩을 그대로 사용하려면, 보통 무비 타임 라인의 첫 프레임에 다음과 같은 코드를 넣어 준다.

System.useCodepage = true;

SWF는 내부적으로 UTF-8만 다루며 이것을 바꾸는 방법은 없다. 또한 코드페이지를 지정하는 방법도 없다. 따라서 useCodepage가 true인 경우는 SWF가 수행되는 운영체제의 코드페이지를 따라가며, false인 경우는 유니코드(UTF-8)을 사용하게 된다. 플래시가 내부적으로 사용하는 UTF-8은 유니코드의 각 문자를 1~4개의 바이트로 인코딩한 형태인데 다음과 같은 액션 스크립트를 통해 쉽게 확인할 수 있다.

System.useCodePage= false; // 코드페이지 사용 안함(UTF-8)
trace(escape(”abc가나다”));
System.useCodePage= true; // 코드페이지 사용(EUC-KR)
trace(escape(”abc가나다”));

이 코드는 다음과 같이 출력된다. escape는 URL에 사용하기 위해 %가 붙은 형태로 인코딩하는 함수이다. 이 코드는 다음과 같이 출력된다.

abc%EA%B0%80%EB%82%98%EB%8B%A4
abc%B0%A1%B3%AA%B4%D9

UTF-8인 경우, 한글의 한 글자가 3개의 바이트로 인코딩되었음을 알 수 있다. useCodePage가 true인 경우는 한글 한 글자가 2개의 바이트가 된다.


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,