태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

'Adobe'에 해당되는 글 8건

  1. 2009.01.09 Flash Catalyst, 촉매제로써 활약할까? (2)
  2. 2008.11.18 Flex 3.2 릴리즈 (2)
  3. 2008.11.09 런칭동영상으로 살펴본 FP10, CS4
  4. 2008.10.17 Flash Player10 보안샌드박스 변경에 따른 이슈 해결방법
  5. 2008.10.16 [FP10] FileReference는 어떻게 달라졌을까? (1)
  6. 2008.10.16 CS4 미리보기 - 1 (2)
  7. 2008.10.11 [FLEX/AIR] 현재까지 발견된 한글처리 문제 (15)
  8. 2008.10.06 Flash Player10 보안샌드박스 (6)

Flash Catalyst, 촉매제로써 활약할까?

여러분의 닉네임은 어떤 뜻을 가지고 있나요? ㅎㅎ
저는 워낙 작명하는 센스가 없어서, 제 이름을 가지고 항상 끄적여서 닉네임을 만들곤 합니다.

어도비에서도 4년전 이와 같은 고민을 했다고 하는데요.

사용자 삽입 이미지
2005년, 매크로미디어와 인수합병 이후, 회사의 조직이나 고객서비스등이 빠르게 흡수되기 시작되면서 펼친 정책중 하나가 바로 새로운 니모닉체계를 확립하는 것이었습니다.

양사의 주 플랫폼이 다르고, 그 플랫폼이 오랜기간동안 견고하게 자리 잡은 만큼, 통합이후 고객들이나 파트너사에 혼란을 주지 않을까 하는 우려도 있었고, 하나의 통합된 제품군으로써 시너지 효과를 내는 역할을 할 필요가 있었겠죠 ^^

어도비의 통합 니모닉체계는 CS3출시 이후부터 확고하게 자리잡히게 됩니다. 네모난 사각형 안에, 해당 제품들의 약어 두글자를 쓰는 비교적 간단한 체계인데요. 여러 이유로 약어를 쓸수 없을경우엔, 아이콘을 사용하기도 하네요. 이 체계에만 수십개의 특허나 법적절차(?)가 구비되어있고 사용시 어도비의 허가를 얻어야 하니, 정말 놀랍네요.

사용자 삽입 이미지
제일 처음 어도비의 통합니모닉을 보았을때가 고2였던것 같은데, 그때 한창 화학공부에 홀릭이되어있어서, '아 어도비의 아이콘들이 주기율표를 많이 닮았구나'라는 생각이 들었습니다. ㅎㅎ

주기율표는 원소들을 배열한 표의 일종인데, 화학에서 원소를 표기할때는 제일 첫글자는 대문자, 그리고 다음 글자들은 소문자로 나타냅니다. 대표적인 예로는 He(헬륨), Pb(납)등이 있습니다.

사용자 삽입 이미지

물론 예외적으로 한글자와, 세글자의 원소들도 있지만, 그래도 위의 어도비의 니모닉 체계와 상당히 닮아 있지 않나요?

화학에서 원소들의 특징은, 하나의 고유원소로써 존재하다가, 다른 원소들과도 함께 혼합될 수 있다는 점입니다. 예를들어서 나트륨(Na)원소와, 염소(Cl)원소가 함께 혼합하면 염화나트륨(NaCl) 즉, 소금이 되는것 처럼 말이죠.

어도비에서도 통합 이후 애플리케이션들이 각 원소들 처럼 고유한 개성을 잘 지키면서, 또 유연하게 잘 섞이길 바라는 마음 아니었을까요? ㅎㅎ

우리에겐 아직 Thermo로 익숙한 개발자-디자이너간 협업툴이, 어도비MAX에서 Flash Catalyst로 명명된 이후, 처음으로 Stinger 동영상이 공개되었습니다.

사용자 삽입 이미지

Stinger동영상은 어도비 Labs의 Flash Catalyst란에서 보실수 있습니다.
어도비 답게 역시 영상 하나는 멋들어지게 잘 만드네요.. ㅎㅎ

사용자 삽입 이미지

근데, 위의 그림 어디서 많이 보셨다는 느낌 드셨죠.
바로 주기율표의 원소들입니다. 란탄족과 악티늄족을 따로 빼놓는 센스도 곁들여 놓았네요.. ㅎㅎ

다만 어도비에서 주기율표를 아주 옛날걸로 참고했는지, 다룸슈타툼과 뢴트게륨은 아직 임시 원소기호로 표시해놓고 있습니다. 2005년경 정식적으로 인정되었는데, 해당 과학자들이 보면 불쾌해 하지 않을까요? ㅎㅎ 게다가 원소들도 총 114개밖에 없네요.

사용자 삽입 이미지

그리고 여러 원소들 사이에서, 어도비 일러스트레이터, 포토샵, 파이어웍스, 플렉스를 거쳐 오면서,

사용자 삽입 이미지

이렇게 플래시 카탈리스트로 모아지게 됩니다. 카탈리스트(Catalyst)의 한국어 뜻이 '촉매제'라고 하는데요.

물론 이런 원소들이 잘 섞여서 하나의 애플리케이션을 만들었다는 의미이기도 하지만, 플래시 카탈리스트는 개발자와 디자이너간의 좀더 유연한 협업을 위해 고안된 툴인데, 동영상에선 마치 6개 툴이 카탈리스트를 위해 들러리가 되는 느낌이 드네요.. ㅎㅎ

사용자 삽입 이미지

그리고 어도비 플래시카탈리스트의 몇몇 특징점들을 보여주고 영상이 종료됩니다.
영상 종료이후, 개발자와 디자이너간 협업 방법에 대해 자세히 다룬 영상도 있으니 참고해보시면 좋을것 같습니다. ^^

Flash Catalyst의 퍼블릭 배타는 올 Q1에, 정식런칭은 H2에 예정되어 있다고 하네요. 퍼블릭베타를 신청하실려면 아래의 주소를 클릭하세요.
퍼블릭베타 신청하기

그리고 Flash Catalyst를 이용한 다양한 워크픙로우에 대해서는 아래의 사이트를 참조하시면 많은 도움이 될것 같습니다. ^^
Thermo팀블로그

이후 제 블로그를 통해서도 자세히 다룰 예정이니, 참고하셔도 좋..좋겠죠?
(자주놀러오셔서 댓글좀 남겨주세요 ㅠ_ㅠ)

마이크로소프트를 세운 컴퓨터의 황제 '빌게이츠'는 얼마전 디자인회사인 'bgC3'를 설립했습니다.
이중,bg는 자신의 닉네임인 빌게이츠를 의미하고 재밌게도, 뒤의 C는 '촉매제'인 Catalyst를 의미한다고 하네요.

그만큼 디자인에서도 많은 분야와 함께 협력할수 있는 '중계자'형성이 나날로 중요해지고 있습니다. 특히 UI/UX디자인에서는 그 중요성이 더더욱 부각되고 있습니다.

Catalyst가 하나의 대세로 자리매김 하는 시대가 오게 될까요? ㅎㅎ
아직 Flash Catalyst의 정보들이 공개되지 않아 아쉬운점이 많지만, 어도비의 부단한 노력이 중계자 형성이라는 성과를 이루어 낼수 있길 바랍니다.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
트랙백 1 Comment 2

Flex 3.2 릴리즈

어제, 플렉스가 사라진다는 다소 심란한 글을 올렸었는데, 오늘 코코모(CoCoMo) 공개에 이어, Flex 3.2(빌더 3.0.2)가 릴리즈되었습니다.

Flex SDK 홈페이지의 Last Mileston의 Stable Version 업데이트 일자가 지난달 28일이었는데, 이젠 공식적으로 릴리즈가 되었군요.


사용자 삽입 이미지

SDK는 3.2 버전으로 정식적으로 릴리즈 되었으며, 빌더는 이에 맞춰 3.0.2 버전으로 업데이트 되었습니다. 어도비 홈페이지에서 SDK Download를 선택하시면 3.2 버전을 내려받으실수 있습니다

사용자 삽입 이미지

하지만, 아직 어도비 본사 및 각 지사 홈페이지에선 Flex 빌더 다운로드 페이지의 버전은 그대로 3.0.1으로 표시되어있습니다. 그런데 재밌는건, POE버전을 내려받을땐 3.0.2로 표시되는것 보니, 아마 곧 홈페이지에도 업데이트가 되겠죠. ^^

플렉스 빌더 내부에서 업데이트를 하시면 Flex Builder 3.0.2 버전이 업데이트 목록에 나옵니다.

Flex 3.2에서의 큰 변화사항은 다음과 같습니다.

  1. Flash Player 10을 공식적으로 지원합니다.
  2. AIR 1.5를 지원합니다.
하지만 아쉽게도 Textinput, TextArea RichTextEdtor 컴포넌트를 사용해 한국어를 입력하는 경우 한글이 약간 지연되어서 입력되는 문제가 있었는데, 그 문제가 이번 Flex 3.2에서도 해결되지 않았습니다.

또 AIR1.1부터 제기되어온, 한국어 삭제시 자음 처리 문제도, 아직 처리되지 않아서 많이 아쉽습니다.

Flex 3.2로 업데이트 하시는 방법은 아래와 같습니다
  1. 플렉스 빌더인경우 : Help - Search for Flex Builder Updates
  2. 이클립스에서 플렉스 빌더 플러그인을 설치해서 사용하시는경우 - Flex SDK를 내려받아 업데이트
Flex 3.2 SDK 다운로드
Flex Builder 3.0.2 다운로드(업데이트전용)
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 2 Comment 2

런칭동영상으로 살펴본 FP10, CS4

CS4와 FP10이 2008년 10월 16일 부터 정식 판매 및 유통이 시작되었습니다. 아직 국내엔 유통되지 않고, 저 먼 미국에서 배를 타고 건너오고 있는 중이지만, 국내 CS4 정식런칭이 12월 4일로 다가온 만큼, 이제 국내에서 도입되는것도 초읽기가 된것 같습니다.

사실 모든 기업에서, 자사의 제품을 홍보할때는, 비교군과 자사 제품을 비교한다던지, 아니면 이전 버전에서 항상되거나 새롭게 추가되는 기능을 위주로 동영상이나 eDM, 홍보책자를 만들게 됩니다.

그래서, 그런지 홍보동영상 한편만 봐도, "아 이번 버전에선 무엇이 달라졌구나!"라고 간략히 알수 있는데요. 그럼 FP10과 CS4 런칭 동영상으로 FP10과 CS4에는 어떤점이 달라졌는가 살펴볼까요?


1. Flash Player10
Flash Player10은 이전에 astro라는 베타네임으로 시작했습니다. FP9이후의 큰 변화를 담고 있어서 많은 기대와 함께 혼선도 함께 가져온것 같습니다. (참고 - Flash Player 10 보안샌드박스 변화)

특히, 이번엔 Flash Player10의 정식출시가 Adobe MAX 이후로 예상되었지만, 실버라이트가 출시된 2일후 정식 출시가 되어서 많은 분들의 예상보다 약 1달가량 빨리 출시가 되었습니다.

그럼 Flash Player10에선 어떤 기능들이 새롭게 달라졌는지 살펴볼까요?
Flash Player 10의 런칭동영상은 여기서 살펴보실수 있습니다.

3D effects

사용자 삽입 이미지
Flash Player 10에서는 3D Draw가 Native에서 정식적으로 지원됩니다.
즉, 지금현재까지 x,y축에 극한되엇다면, z축을 이용해서 3D도 쉽게 렌더링 할수 있게 되었습니다.

3D Effect를 위해 GPU 가속기능이 추가되었으며, 조금더 원할한 랜더링을 위해 자바의 제너릭스와 흡사한 Vector, Vector3D도 추가되었습니다.

Custom filters and effects
사용자 삽입 이미지
Flash Player 10에서는 픽셀벤더라는 툴을 이용해서 포토샵이나 기타 툴에서 사용하는 필터나 이펙트를 스크립트로 만들어, Flash에 bytecode형태로 export하여, 런타임에서 바로 사용 할 수 있습니다.

즉, 이미지나 비디오 같은 화상자료도, 기존에 썼던 필터를 그대로 Flash에서 사용하 실 수 있다는 막강한 장점이 있습니다.

이와관련되어, 이번 RIA Camp에서 딴동네님께서 발표해 주셨습니다.(동영상 참고)

World-class typographic control
사용자 삽입 이미지
Flash Player9 에선 다국어가 제대로 지원되지 않는다는 아쉬움(?)이 있었는데요. Flash Player 10에서는 아시아권 문자를 포함한 전세계의 문자를 지원합니다. 또, 아시아권 문자에서는 안티앨리어싱 기능이 강화되었습니다. 그리고 새로운 텍스트엔진인 FTE(Flash Text Engine)을 지원해서, 단순한 문자열이 아닌, 다단의 문자열이나, 문자열 세로 쓰기등도 할 수 있습니다.

그런데 아쉽게도 Flash Player 10의 런칭동영상에 있는 World-class typographic control에서는 아랍어, 일본어, 중국어, 영문등은 흘러가는데 한국어는 보이지 않군요(?).....

Dynamic Sound Generation
사용자 삽입 이미지
그간 Flash Palyer 9에선 Sound와 관련해선 단순한 재생관리 정도만 할 수 있었습니다. 하지만 Flash Player 10에서는 SamplesCallBack 이벤트가 추가되고, 또 노이즈를 주는등 사운드를 동적으로 제어하고 효과를 줄 수도 있습니다.


2. CS4
Flash Player 10의 공개와 함께, CS4도 10월 16일 부터 정식 유통되기 시작하였습니다. 기존 CS3에 비해 여러 변화들이 있었는데요. 그 변화들을 간략히 런칭동영상에 담겨져 있습니다.

CS4의 런칭동영상은 여기서 보실수 있습니다. 초반의 1분 46초 분량이 런칭동영상이고 후반부터는 런칭과 관련된 온라인 쇼케이스입니다.

필자는 CS4정식 런칭동영상을 제일 처음봤을때는 지난 CS3 런칭동영상 보다는 약간 사이비종교(?)같은 느낌을 많이 받았는데, 보면볼수록, 왠지 CS4 제품군이 인터랙티브 하고, 크레이티브 한 점에 대해 더 잘 알게되는것 같습니다.

Procuction Premium
사용자 삽입 이미지
CS4 런칭 동영상은, 이전 시리즈와 다르게 마스터 콜렉션으로 부터 출발해서, 여러 제품들을 걸쳐와서, Procuct Premium으로 무엇을 만들수 있는가를 알려주는 부분부터 시작됩니다.

제일 첫번째에 있는 알수없는 표시는 아마 '아이디어'인것 같습니다. 그 외에는 일러스트레이터,포토샵, 사운드보스 인디자인, 플래시로 오른쪽에 있는 약간 사이비틱한 결과물을 만들어 내는군요.

Inspired vector graphics creation(영감적인 백터 그래픽을 만들기)
사용자 삽입 이미지
일단 저 위에 있는, 꿈틀꿈틀 거리는 이상한 시계모양의 그래픽을 만들려면, 밑그림 부터 그려야 겠죠?
일단, 영감적으로 벡터 그래픽을 만드는 과정으로 부터시작됩니다.

New dimensions in image editing(새로운 차원의 이미지 에디팅)
사용자 삽입 이미지
밑그림을 그렸으면, 이제 채색을 해야겠죠? 채색과 관련되어선 기존의 일러스트레이터나 포토샵을 사용했는데, 이번 CS4 제품군에서는 새로운 차원의 이미지 에디팅을 지원한다고 합니다.

예를들어 이미지를 에디팅 할때, 나침반 모양을 돌리면, 이미지가 회전되는등 다양한 기능들이 지원되는군요.

Compelling motion graphics(칭찬하지 않을수 없는 모션 그래픽)
사용자 삽입 이미지
밑그림을 채색을 하면, 이제 그 이미지들에 애니매이션 효과를 줘서 좀더 역동적으로 보이게 해야 겠죠? Flash CS4에서는 이와 관련해서, 모션을 좀더 다이나믹하고 쉽게 줄 수 있는 기능을 지원하고 있습니다.

Intuitive audio(직관적인 오디오)
사용자 삽입 이미지
이미지의 밑그림도 그리고, 채색도 하고, 애니메이션도 넣었다면? 이젠 마지막으로 음악을 삽입하면 완성이겠죠? 이와 관련해서 사운드보스로 직관적인 오디오를 넣게되면, 제일 처음에 보았던, 그 작품이 완성되게 됩니다.

그리고, 시작되었던 CS4의 여행은 좀더 더 멀리 퍼져나가서, 다양한 웹사이트들로 시작됩니다.

Web Premium
사용자 삽입 이미지
그리고 이런 여행들로 부터 잠시 나와, 사용자의 시각(See)와 Web Premium으로 이런 사이트들을 만들어 나가는 과정을 거치게 됩니다.

Efficient, powerful page design(유능한 그리고 강력한 페이지 디자인)
사용자 삽입 이미지
여러분이 보고 계시는 지금 현재 제 블로그도 하나의 웹페이지로 이루어 져있듯, 웹도 하나의 작은 페이지가 뭉쳐서 하나의 큰 웹사이트가 되게 되는데요.

이런 웹사이트들을 포토샵을 통해 디자인하고, 드림위버를 통해서 수십개의 페이지를 만들고, 그것들이 모여 하나의 웹이 되게 됩니다.

Rich expressive interactivity(리치하고 표현적인 인터랙티비티)
사용자 삽입 이미지
그간 HTML 위주의 웹 페에지의 가장 큰 장점은'정적'이다는 점이었습니다.
웹의 구조상 HTML은 웹사이트로부터 내려오고 브라우저에 뿌려주면 그걸로 끝입니다. 더 이상의 상호교류가 일어날 수 없습니다.

이런 웹 페이지의 어도비 RIA기술들이 총 출동해, 그간 고정적인 웹 페이지가 아닌 좀더 똑똑하면서 표현이 강하면서 상호 교류할수 있는 사이트들을 만들어 나갈 수 있습니다.

Flexible video editng(쉬운 비디오 편집)
사용자 삽입 이미지
웹사이트의 RIA 기술이 가미되면서, 가장 탄력을 붙은건 UCC산업입니다. 내가 찍은 홈비디오를 그대로 웹 사이트들에 올려서 전세계 네티즌과 손쉽게 공유할 수 있습니다.

이제 이런 공유를 넘어서서,나의 동영상을 손쉽게 편집하고, 또 인터넷에 간편하게 올릴 수 있습니다.

Shortcut to Brilliant(당신의 아이디어를 빚내는 가장 빠른 방법)
사용자 삽입 이미지

그간 동영상을 만들고, 여러 웹사이트를 만들어 보았는데요. 가장 마지막엔 CS4의 솔로건인 'Shortcut to Brilliant'를 보여주며 그 긴 여정을 마치게 됩니다..

CS4의 공식 솔로건은 Shortcut to Brilliant입니다. 한국어로 치면 "빚내는 가장 빠른 방법"인데요, 한국어 솔로건으로 바꿔보면 뭔가 빠진듯한 느낌이 들어서 걱정이었는데, 한국어 솔로건은 '당신의 아이디어를 빚내는 가장 빠른 방법' 이네요. ㅎㅎ


Flash Plasyer 10, 그리고 CS4의 출시로 분명 내년부터는 웹, 그리고 디자인 산업에서도 새로운 변화가 일어날것이라고 생각됩니다.

그 변화를 즐겨나갈 준비가 되셨는지요.
그리고 CS4의 솔로건처럼 "나의 아이디어를  빚나게 하는 가장 빠른길"이 될 수 있길 바랍니다.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
트랙백 1 댓글 0

Flash Player10 보안샌드박스 변경에 따른 이슈 해결방법

Flash Player10은 15일 비교적 조용한 분위기에서 정식 런칭되었습니다. Flash Player가 없는 클라이언트들이 Flash Player을 설치하게 되면, 가장 최신버전인 10을 설치하게 됩니다. 또, 어도비의 본사 및 각지역 지사의 Flash Player 설치버전도 10으로 높여졌습니다.

그런데, Flash Player10에서는 총 8가지의 보안샌드박스 변경/추가가 발생하였고, 이들 변경에 대한 파급력도 큽니다. 하지만, 이런 Flash Player10의 보안샌드박스 변경사항에 대해 Flash/Flex 제품군을 쓰는 고객에 사전 안내가 없었고, 또 출시된 이후에도 변경사항에 대한 공지 및 해결방법에 대한 한국어 문서 또한 아직 내놓고 있지 않은 실정입니다.

그래서 이 문서는, 현재 많은 웹사이트에서 사용하고 있는 개발방법이 Flash Player 샌드박스 변경으로 작동하지 않는 원인과 해결방법에 대해 다루어보고자 합니다.

먼저, Flash Player10의 보안샌드박스 변경사항은 아래의 문서에서 살펴보시길 바랍니다.
문서보기

아울러, 어도비에서도 이런 보안샌드박스 변경 및 해결방법에 대해 빠른시일 내로 해당 제품군들을 사용하는 고객사들에게 안내해주었으면 하는 바람입니다.



사례1. 업로더 시스템에서 UI는 HTML로 구현되어있고, 업로더는 Flash로 만들어진경우

문제
현재 많은 웹사이트에서, 업로더 시스템을 구현할때 Flash는 1x1으로 숨겨놓고, 파일 선택, 업로드부분은 자바스크립트로 Flash의 함수를 호출해 실행하고, UI는 HTML로 구현하는 방법을 사용하고 있습니다.

이 방법을 이용해 얻을수 있는 장점은, Flash를 모르는 개발자 혹은 코더라도, Flash의 구속 없이 업로더의 UI를 자유 자재로 꾸밀수 있다는 장점이 있습니다.

또, 다중 파일을 쉽게 업로드 할 수 있다는 장점도 있습니다.

하지만, 이 방법은 Flash Player10 출시 이후로, 정상적으로 작동하지 않으며, 위와 같은 보안샌드박스 경고가 발생하게 됩니다.


원인

Flash Player10의 Filerefrence API의 보안샌드박스가 변경 되었습니다.
파일선택과 다운로드시 사용자의 직접적인 인터렉션을 필요로 합니다.
Filerefrence.browse를 통해 사용자의 로컬의 파일을 찾는 창을 띄울수 있고, Filerefrence.download를 통해 파일을 내려 받을수 있습니다.
두 메서드의 경우 종전엔 사용자의 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.
Filerefrence의 browse와 download 메서드를 실행할때에는 사용자가 Flash 상에서 직접 UI인터랙션을 취해 줘야 작동하게 됩니다.

따라서, 위의 방법은 UI를 HTML로 구현되어있고, 사용자의 인터랙션이 Flash 상이 아닌곳에서 browse, download 메서드를 호출하였기 때문에, 보안샌드박스 에러가 발생하게 됩니다.


해결방법
해결방법은 간단하게도, 기존 1x1 플래시 파일에서, 파일을 선택하거나 다운로드 하는 버튼은 HTML로 구현하지 않고, Flash로 구현해 주면 해결됩니다. 다만 업로드 버튼은 이번 보안샌드박스 변경사항에 반영되지 않았기 때문에, 기존처럼 HTML로 구현해서 사용하실수 있습니다.



사례2. 클립보드 지정에서 UI는 HTML로 구현되어있고, 클립보드를 지정하는 부분은 Flash로 만들어진 경우

문제
위의 사례1처럼 UI는 HTML로 구현되어 있고, 클립보드를 지정하는 부분은 1x1 플래시로 구현되어, 클립보드를 지정할때 JS로 플래시의 함수를 호출하는 방법은 현재 많은 웹2.0 사이트 혹은, 위젯 관련 사이트에서 클립보드를 지정할때 사용하고 있습니다.

이방법을 이용해서 얻을 수 잇는 장점은, 위처럼 Flash를 모르는 개발자나 코더도 UI를 HTML로 손쉽게 꾸밀수 있습니다. 그중 제일 강력한 장점은, JS로 클립보드를 지정하는것에 비해 거의 모든 크로싱플렛폼을 완벽히 지원한다는 점입니다.

하지만, 이 방법은 Flash Player10 출시 이후로, 정상적으로 작동하지 않으며, 위와 같은 보안샌드박스 경고가 발생하게 됩니다.


원인
Flash Player10에서 System.setClipboard 메서드의 보안샌드박스가 변경 되었습니다.
클립보드를 지정할시 사용자의 직접적인 인터렉션을 필요로 합니다.
System.setClipboard를 통해 사용자의 클립보드에 텍스트를 지정할 수 있습니다. 종전엔 사용자의 직접적인 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.
위의 내용처럼, 클립보드를 지정할때엔 반드시 사용자가 직접 Flash 상에서 UI인터렉션이 발생해야 작동하게 됩니다.

따라서, 위의 방법은 UI를 HTML로 구현되어있고, 사용자의 인터랙션이 Flash 상이 아닌곳에서 System.setClipboard 메서드를 호출하였기 때문에, 보안샌드박스 에러가 발생하게 됩니다.


해결방법
해결방법은 사례1과 같이 간단하게도, 클립보드를 지정하는 부분에 대한 버튼을 Flash로 구현하면 정상적으로 작동합니다.



사례3. Policy File

문제
두개 이상의 사이트에서 어느 한 사이트의 정보를 활용하기 위해 crossdomain.xml 정책을 사용하는경우, Flash Player 9에서는 정상적으로 정보를 받아왔지만, Flash Player 10에서 일부환경에서는 정보를 받아오는데 실패하거나 보안 샌드박스 오류가 발생하게 됩니다.


원인
Flash Player의 Policy file strictness Phase2의 보안샌드박스가 변경되었습니다.
Policy File
Flash 10에서는 meta-policy의 기본값이 all에서 master-only로 바뀝니다. 이 설정은 해당 swf파일이 존재하는 도메인 루트의 crossdomain.xml을 읽어옵니다. 그러나, meta-policy를 바꿔서 예전처럼 쓸수도 있습니다.
meta-policy의 all 속성은, 모든 곳에 위치한 policy-file를 허용하지만, master-only 속성은 파일이 위치한 도메인 루트의 crossdomain.xml을 읽어오게 됩니다. meta-policy의 속성값은 아래링크를 참조하시기 바랍니다.
(참조)


해결방법
Policy File의 meta-policy의 기본 설정이 master-only로 변경되지만, crossdomain.xml의 값을 설정하여 기존 all 을 그대로 사용할 수 있습니다.
<cross-domain-policy>
     <site-control permitted-cross-domain-policies="all"/>
</cross-domain-policy>




아직, Flash Player 10의 설치율이 낮은만큼, 미리미리 파악하시어 빠른시기 내로 해결될수 있길 바랍니다.
유익한 정보가 되길 바랍니다. 감사합니다.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 3 댓글 0

[FP10] FileReference는 어떻게 달라졌을까?

안녕하세요 : )

정말 오랫만에 글을 남기는것 같죠? 이녀석 예전처럼 게을러진거아냐? ㅋㅋ 라고 생각하셨던 분들도 계셨을것 같은데, 사실 이런 무시무시한 경고때문에, 글을 차곡차곡써가면서 여러분께 공개는 하지 못하고 있었습니다... (흑흑)

'임금님귀는 당나귀 귀' 라고 아무리 좋고 재미있는 얘기더라도, 떠들고 다니기 좋아하는 저로써는 입이 간질간질해서 참지못할 지경이더군요... ㅠㅠ

그래도! 16일부터는 여러분들과 함께, FP10에선 어떤 API들이 추가되었고, 어떤 변화사항이 있는지, 다루어 볼수 있게되어, 매우 즐겁게 생각하고 있습니다.

앞으로도 제 블로그에 계속 연재할 예정이니, 많이 많이 찾아주세요..
(방문자 늘리기 작전인가 -_-;;)
Flash Player10이 출시된 만큼 여러분께 유익한 정보가 될수 있었으면.... 합니다!

자 그럼 오늘의 주제인 Filerefrence는 어떻게 달라졌을까요?
우선, FileReference API에 대해 소개하자면, 이 API는 로컬의 파일을 접근하고, 업로드 하거나 다운로드 하는데 사용되는 API입니다.


변경사항

Flash Player10에서 FileReference의 변경사항입니다.

1. 사용자의 로컬 파일에 접근이 가능합니다(load(), save() 메서드 추가)
2. 보안샌드박스의 변경사항이 있습니다.

일단 제일 눈에 띄는게 사용자의 로컬 파일에 접근이 가능하다?! 는 점인데, "어라? 그럼 로컬 파일들을 불러올수 있다는건가요? 어디까지 접근할수 있나요?" 라고 궁금해 하시는분들이 많으실것 같습니다. 그 내용은 아래에서 ㅋ


load(), save() 메서드

Filerefrence에는 load(), save()라는 메서드가 추가되었습니다.  두 메서드는 로컬파일에 접근하여, 파일을 읽거나 쓰는데 활용할 수 있습니다.

근데, '어? 파일을 읽고 쓰고 하면 사용자의 컴퓨터에 위해를 줄수 있지 않나요' 라고 생각하시는 분들이 많으실것 같습니다.

하지만 load(). save() 메서드의 경우 다이렉트로 호출할수 없으며, 사용자가 browse창에서 직접 파일은 선택해야 호출할수 있는 메서드 입니다.


위의 소스코드는 파일을 불러오는(load) 예입니다. 파일을 선택하고(browse), 파일을 불러오는(load) 구조로 로컬 파일에 접근할 수 있습니다.
load() 메서드의 경우 파일의 경로 지정없이 바로 메서드로 호출하게 되며, 파일의 스트림, 파일명, 파일크기등의 자료는 이벤트 데이터로 불러올 수 있습니다.


위의 소스코드는 파일을 저장하는(save) 예입니다.
save() 메서드의 경우 파라미터에 저장될 파일의 내용, 파일의 이름을 지정하게 되면, 자동으로 browse 창이 뜨게 됩니다.
한가지 주의할점은, 기존 파일에 중복해서 저장하게 될경우 ioerror가 발생하게 됩니다.


보안샌드박스

Flash Player10에서 기존 Filerefrence와, 또 새로 추가되는 매서드에 대한 보안 샌드박스가 강화되어 적용되었습니다.

파일선택과 다운로드시 사용자의 직접적인 인터렉션을 필요로 합니다.
Filerefrence.browse를 통해 사용자의 로컬의 파일을 찾는 창을 띄울수 있고, Filerefrence.download를 통해 파일을 내려 받을수 있습니다.
두 메서드의 경우 종전엔 사용자의 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.

로컬파일을 불러오고 저장할때 사용자의 직접적인 인터렉션을 필요로 합니다.
Flash 10에서는 SWF파일에서 사용자 로컬의 파일을 읽어오고 또 저장할 수 있습니다. 다만, 이 메서드들은 사용자가 파일 선택창에서 직접 파일이나 경로를 선택할때만 가능합니다.

따라서, 현재 UI를 HTML로 꾸며놓고, 플래시와 JS의 통신으로 파일 업로드가 구현되어있는 티스토리나, 기타 사이트들은 사용자의 직접적인 UI인터렉션으로 browse()메서드가 호출되지 않았기 때문에, 샌드박스 오류가 발생하게 됩니다.

Flash Player10이 출시된 만큼, 보안샌드박스의 변화를 빨리 파악해서, 사용자가 불편을 입지 않도록 신속히 대응하는것이 좋겠습니다.



기대분야

1. 이미지 편집기

많은 디지털 멀티미디어 기기가 보편화 되고, 또 1인미디어가 대중화됨에 따라, 웹에서 이런 멀티미디어 자료들을 손쉽게 편집할수 있는것에 대한 사용자의 요구가 날로 늘어갔습니다.

대부분의 업체는, 이를 해결하기 위해 Active X방식으로 이미지 편집기를 만들어 제공해 왔으나, Active X방식의 애플리케이션은 크로싱 플랫폼을 지원하지 않는다는 단점이 있습니다.

그래서 이를 해결하기 위해, 플래시를 통한 이미지 편집기가 스타플(http://starpl.com), 싸이월드 블로그(http://cyworld.com)에서 개발되어 사용중입니다.
 

다만, 현재까지의 flash의 Filerefrence는 파일을 선택하고, 그 파일을 업로드하거나, 다운로드 하는데에 한정되어 있었습니다.

따라서 이미지를 편집하기전 해당 이미지를 불러오기 위해, 임시 서버에 업로드 해 두고, 업로드된 주소를 플래시 상에 불러와서 작업을 해야 합니다.

이 방법의 경우, 불필요한 자원을 추가로 낭비한다는 문제점도 있지만, 최근 대부분의 멀티미디어 화상 이미지가 고 해상화 됨에 따라 파일 용량이 커지고, 또 해외지역이나 네트워크 지역이 느린 환경에선 업로드와 또 플래시에서 이미지로 불러오는데 상당한 시간 지연이 발생하게 됩니다.

하지만 Flash 10의 Filerefrence에는 load() 메서드가 추가되어 데스크탑 내의 로컬 자원에도 엑세스 할 수 있습니다. 따라서, 불필요한 자원을 낭비할 일이 줄게 되며, 또 고 해상도의 이미지를 처리하거나, 네트워크 환경이 느린 사용자에서도 지연 없이 빠르게 이미지를 불러올수 있습니다.

또, "Flash에서는 로컬 자원만 불러와 이미지 편집→서버업로드"로 프로그램의 구조적 장점도 얻을수 있습니다.


2. 대용량 파일의 안정적 전송

보통 로컬에 있는 파일을 플래시로 서버에 전송할때엔, Filerefrence의 upload는 HTTP를 통해 전송하게 됩니다.
작은 용량일 경우엔 HTTP로의 전송은 큰 무리가 없지만, 대용량 파일의 경우, 해당 서버에 과부화가 발생하거나, 중간에 연결이 끊기는 등의 문제가 발생할 수 있습니다.

그래서 대부분의 메일 서비스의 경우에도, 5mb이내의 작은 용량의 전송은 HTTP로 전송하지만, 대용량의 파일전송은 안정적인 서버와의 연결이 중요하기 때문에, Active X 컨트롤을 설치해 서버로 보내고 있습니다.

이 방법을 Flash에서 활용을 해보면 어떨까요?

이전의 Flash Player의 경우, 사용자가 파일을 선택하고, 업로드하고, 다운로드 받는등 아주 작은 부분에 대한 관여만 가능했지만, 이젠 로컬의 파일을 직접 불러와서 엑세스 할 수 있습니다.

또 Flash에서는 서버와 Socket을 주고 받을수 있는데 우리가 흔히 대용량 파일전송에 사용하는 FTP도 Socket를 통해 연결하게 됩니다.

따라서 FTP의 Socekt에 접근해서(policy-file을 설정하고, port도 1024이상으로 설정하고), 파일의 스트림을 FTP로 보내면 대용량 파일을 좀더 안정적인 전송하는게 가능하지 않을까요?


이외의 여러분들의 깜짝 놀랄만한 아이디어, 그리고 의견, 질문사항은 댓글로 남겨주세요!
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 2 댓글 1

CS4 미리보기 - 1

9월 23일(한국시간으로 9월 24일), 어도비에서 라이브 캐스트 방식으로 CS4 제품군을 발표한 날입니다. (시보기)
MM과 인수합병 이후, '크레이티브 스위트'라는 제품군으로 묶이고 난후로 부터 4번의 큼직한 변화이기도 합니다.

CS3이후부터, 필자가 가장 인상깊었던건 크레이티브 스위트 제품군간의 협업강화에 어도비에서 많은 노력을 쏟아 부었다는 점입니다.

사용자 삽입 이미지

CS3를 설치하고, 제일 당황했던점은, 제품군들의 아이콘들이, 포토샵은 Ps, 드림위버는, Dw, 플렉스는 Fx, 인디자인은 ID, 플래시는 Fl...과 같이 사각형 박스에 프로그램의 약칭을 두 글자로 줄이거나 혹은, 아이콘으로 통일했다는 점입니다.
(제일 첨엔 이게 화학원소 기호인가 싶었습니다 ㅋㅋ)

CS3에 대해 알게된지도 얼마 안된것 같은데(사실 그동안은 CS초기버전이 편해서 그걸 계속 써오고 있었습니다.) 벌써 CS4가 세상에 나오게되었군요... 흐흐흐..

필자는 얼마전에 어도비 제품군들을 사랑하는 사람들끼리 모인 '어도비서포터즈1기' 멤버로 선정되어, 어도비 CS4제품군들을 '누구보다 빠르게, 난 남들과는 다르게' 미리 써볼수 있는 기회가 주어졌습니다.

CS4제품군들을 미리 받아서 써본지는 꽤 되었습니다.
'왜 최신기술 너만 먼저 써보고, 알려주지 않는가 -_- 못된놈!! 엉덩이에 뿔이나 놔라'라고 하실분들을 위해

사용자 삽입 이미지
비..비밀유지각서가 10/15일까지 걸려있어서, 글을 미리 써놓고도, 이렇게 늦게 공개하게 되는군요..
(후... 후덜덜..)

그...래...서!
CS4에 대한 유익한 정보, 새로운 기능들을 여러분들께 가장 먼저 알려드리는 창구가 되고자!
CS4 미리보기 시리즈를 연재할려고하니다.

전 주로 Web Premium 위주로 다루어볼 예정이니 많이 기대해주세요 : )

사용자 삽입 이미지
CS4는 이전 CS3와 같이 5개의 제품군, 그리고 한개의 모듬세트 -_-...로 구성되어서 출시될 예정입니다.
미국에서는 11월 중으로 유통될 예정이고, 한국에서는 12월쯤에 유통될 예정이라고 합니다.

그럼 이제부터 본격적으로 CS4를 살펴보도록 할까요?



1. 설치과정

(본 리뷰는 CS4 July 2008 Beta기준으로 작성되었으며, 정식 출시시 내용이 상이해질수도 있습니다.)

사용자 삽입 이미지

서포터즈 발대식 이후 두근거리는 마음을 앉고, 첫번째 CD를 넣고 기다려보았습니다.
잠깐 불러오는 과정이 진행되더니, Adobe CS4 Master Collection을 설치해볼까? 라고 예쁜 화면이 나오네요.

사용자 삽입 이미지

사용권 계약을 마치고, 시리얼을 넣고, 설치 옵션을 지정해주는 화면으로 왔는데..
(혹시 Winxp SP3 이하이신 분들은, 지원하지 않는 환경이다 라고 경고메세지가 나옵니다. 하지만 무시하고 진행해도... 큰 무리는 없습니다...)
모든 제품군들을 설치하고 나면 모두 14GB이네요..

사용자 삽입 이미지

제일처음에 CD를 받고 나서도, 아 CD가 4장인거보니 DVD를 분할압축했구나.. 라고 생각이 들었는데..
알고보니 DVD가 4장인 셈이군요..

사용자 삽입 이미지

옵션을 지정하고 나면 이제부터 광란의 설치절차..에 돌입하게됩니다.
참고로 필자의 컴퓨터는, CS4의 모든 제품군들을 설치하는데 약 2시간여가 소요되었습니다.
그나마도 DVD를 4장 갈아가면서 해야하니, 가벼운 마음으로 웹 서핑하면서 진행하는게... 정서건강에 좋습니다..
(물론 설치마법사에는 인터넷좀 꺼트려줄래? 라고 하지만..)

그렇게 광란의 설치절차를 마치고 나면..

사용자 삽입 이미지

요렇게 이쁜 CS4 제품군들의 설치가 완료되었습니다.

평가
설치 절차가 이전 CS3제품군이나 다른 제품군에 비해 크게 바뀐점은 없습니다. 설치 과정도 복잡하지 않고, 간단간단하게 몇번의 클릭과, DVD 갈아넣기만 잘 해주면 설치가 쉽게 완료됩니다.


사용자 삽입 이미지
2. Dreamweaver CS4
(본 리뷰는 CS4 July 2008 Beta기준으로 작성되었으며, 정식 출시시 내용이 상이해질수도 있습니다.)

사용자 삽입 이미지

Dreamweaver는 웹 페이지 저작툴로, 현재 많은 개발자, 코더, 디자이너분께서 이 툴을 활용해서 웹페이지를 만들고 있습니다.
Dreamwever는 디자인 프리미엄, 웹 프리미엄, 웹 스탠다드, 마스터콜렉션 제품군에 포함되어있습니다.

1부, 2부에서는 Dreamweaver CS4가 어떻게 멋진 모습으로 바뀌었는가에 대해 다루어보고자 합니다 +ㅁ+


-1. Liveview

얼마전 출시된 Adobe AIR에서도 Webkit엔진을 채용해서  HTML을 처리하고 있습니다. Webkit엔진은 사파리에서 채택해 사용중인 웹브라우저 엔진으로 오픈소스 프로젝트로 진행중입니다.

사용자 삽입 이미지

Dreamweaver에서도 이 Webkit엔진을 채용해서 소스코드에 접근중이면서도, 웹 페이지를 실제 브라우저의 조건에서 볼수 있는 Liveview 기능이 추가되었습니다.

Liveview는, 웹 브라우저에서 어떻게 돌아갈것인지 실제로 보면서, 해당 부분이 HTML중 어느 부분인지 쉽게 파악할 수 있고, 또 결과물을 보면서 코딩을 할 수가 있어 유용합니다.


-2. Related Files

웹 페이지를 생성하다보면, 여러 스타일 파일(css)이나, 스크립트 파일(js), xml파일 등을 import해서 작업하게 됩니다.

이 경우 연결 파일을 해당 페이지 퍼블리셔 이외의 사람들이 작업할려면, 소스코드를 직접 찾아서 연결 파일의 경로를 확인해서 봐야 하기 때문에, 작업 효율이 떨어지고, 또 코딩스타일에 따라 import된 파일이 한곳에 몰려있지 않고, 뒤죽박죽인 경우 쉽게 파악할수 없다는 단점이 있습니다.

사용자 삽입 이미지

Dreamweaver CS4에서는 related files라고 해서, 해당 페이지와 연관된 스타일파일(CSS), 자바스크립트파일(JS), XML, PHP, ASP.NET 파일등을 상단 사이드에 표시해 주기 때문에, 해당 페이지를 구성하는 여러 파일들을 좀더 효과적으로 관리하고, 또 해당 페이지를 작업한 사람이 아니라도, 쉽게 파악하고 작업할 수 있다는 장점이 있습니다.

해당 페이지의 경우엔 source code로, 나머지 연결된 파일의 경우 연결된 파일의 이름으로 출력됩니다.


-3. Code Navigator

한 페이지를 작업하다 보면, 이 페이지의 이런부분은 '어떤 부분의 영향을 받았지? 어떤 자바스크립트로 동작하지?'에 대해 알아볼려면, 제일 먼저 소스코드를 직접 살펴보고, 해당 스크립트나 스타일들의 연결고리들도 직접 살펴보아야 하기 때문에, 쉽게 살펴볼수 없다는 단점이 있습니다.

사용자 삽입 이미지

Dreamweaver CS4에는 Code Navigator이라는 기능이 추가되었습니다. Code Navigator는 팝업창 형태로 표시되며, Code View, Design View에서 특정영역에서 우측 클릭으로 볼 수 있습니다.

Code Navigator는 해당 특정영역에 영향을 미치는 CSS, JavaScript, ServerSide includes, iframe등의 모든 소스코드들을 보여줍니다.

예를들어, '이 메뉴바의 경우 링크에 롤오버시 밑줄을 없애주고 싶어'와 같은 상황이 발생하였다면,
해당 메뉴바에서 Code-Navigator을 열어서 a:hover을 찾고, 그 부분으로 들어가서 text-decoration을 none로 바꿔주면 적용이 완료됩니다.

Code Navigator은 위처럼, 소스코드의 영향을 미치는 어떤 일부분을 한눈에 파악하고, 또 그 부분들을 수정하거나 추가하는데 있어 특히 유용합니다.




이상으로 CS4미리보기 1부를 마칩니다 : )
궁금하신점은, 밑에 댓글로 남겨주세요!

그럼 2부에서 뵙겠습니다!
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
트랙백 0 Comment 2

[FLEX/AIR] 현재까지 발견된 한글처리 문제

어도비 플렉스가 국내 시장에 활발히 도입된지도 근 3년이 되어가고 있습니다. 지금 이시간에도 많은곳에서 플렉스를 도입하여 프로젝트를 진행하고 있습니다.

매크로미디어(현 어도비)에서 RIA 즉, '똑똑한 인터넷'이라고 제안한지도 약 5년이 되어갑니다. 그동안 정말 많은 변화를 겪었습니다. 또 올해엔 Flash Player 10(astro)가 출시를 예고 하고 있고, 내년엔 Flex 4도 정식으로 출시될 예정입니다.

하지만, 한국에선 아쉽게도 '똑똑한 인터넷'이 제 힘을 발휘하고 있지 못합니다. 한글조차 제대로 처리하지 못하고 있기 때문입니다. 한글을 사용하고 또 사랑하는 한국인으로써 제일 화가 나고 짜증나는 부분이기도 합니다. 많은 개발자들이 Flex 2부터 어도비에 수정을 요구했던 부분이지만 아직까지도 수정이 되고 있지 않습니다.

어도비에 빠른 수정을 바라면서, 현재까지 발견된 문제점과 해결법에 대해서 다루어 보고자 합니다.

우선 지금까지, 약 4가지의 문제가 알려져있습니다.

  1. 한글을 입력할때 영어나 숫자를 입력할때 보다 지연되는 현상이 있습니다.
  2. 텍스트 블록을 벗어날때 까지 해당 텍스트가 인식되지 않는 문제가 있습니다.
  3. wmode가 transparent일때 IE를 제외한 브라우저에서 한글이 입력되지 않는 현상이 있습니다. (FP-479)
  4. AIR 1.1에서 한글을 삭제할때, 자소 처리에 문제가 있습니다.

1번문제

플렉스에는 Textinput, TextArea, 또 전혀 Rich하지 않은 RichTextEditor컴포넌트를 통해 텍스트를 입력할 수 있습니다. 하지만, 이들 컴포넌트에는 한글 입력시, 영문이나 숫자보다 한글이 다소 지연되어서 입력되는 문제가 있습니다.

이런 문제가 플렉스 챔피언이신 신호승님에 의해 의외로 간단히(?) 해결되었는데, TextField의 alwaysShowSelection 프로퍼티의 값을 true로 바꿔주게 되면, 한글 입력 지연현상이 말끔히 사라집니다.

TextField의 alwaysShowSelection 프로퍼티를 true로 설정하게 되면 텍스트필드에 포커스가 없는경우, 선택영역이 회색으로 강조표시가 됩니다. 어째서 이렇게 해결이 되는지 저도 많이 궁금하네요.. ㅋㅋ

TextInput, TextArea, RichTextEditor의 TextField에는 바로 접근할수 없기 때문에, 별도로 mxml 컴포넌트나 as컴포넌트를 만들어서 해결해야 합니다.
 


하지만 위의 해결 방법은 문제점이 있습니다. 근본적으로 AlwaysShowSelection이 TextField의 강조표시와 관련된 프로퍼티이기 때문에, 여러개의 입력 컴포넌트를 사용하게 될경우 각 입력컴포넌트에 텍스트블록 잔상이 남게 됩니다.

무엇보다 이런 문제가 Flex 2 부터 제기되어온 문제인 만큼, Flex 3.2, Flex 4(Gumbo)에서는 꼭 해결될수 있길 바랍니다.
 

2번문제

이 문제는 앞서 설명드린 Flex의 입력컴포넌트 Textinput, Textarea, Richtexteditor에서 발생하는 문제입니다.
이들 입력컴포넌트에는 text 프로퍼티로, 해당 입력컴포넌트에 입력된 plain text를 받아올 수 있습니다.

하지만, 2byte 문자열을 입력하게 될경우 해당 문자가 텍스트블록에서 벗어나거나, 입력컴포넌트가 포커스 아웃 될때까지 text 프로퍼티에 정상적으로 인식되지 않는 문제가 있습니다.



예를들어 가방이라는 문자열을 입력할경우, "ㄱ", "가", "갑"의 경우 아직 텍스트블록에서 벗어나지 않았기 때문에 입력컴포넌트의 text프로퍼티의 값은 공백으로 인식됩니다.

물론 이들 입력컴포넌트는 다른 UIComponent를 클릭할때 포커스아웃이 되기 때문에, 버튼을 눌러서 정보를 보낼때에는 문제가 없지만, 입력컴포넌트의 입력값의 변화를 비 동기적으로 서버와 주고받아야 할 경우 문제가 발생하게 됩니다.
(예를들어, 구글의 검색어 제안이나, 우편번호 검색 등등..)

이 문제의 경우 TextField의 text 프로퍼티를 불러오게 될경우 정상적으로 해결 됩니다.
TextField는 각 입력컴포넌트에서 직접 사용할수 없기 때문에 mxml 컴포넌트나 as 컴포넌트를 만들어서 불러와야 합니다.




위의 예는 두개의 입력 컴포넌트에 keyup 이벤트를 걸어둔 예시입니다.

두 입력컴포넌트 모두, 한글자씩 입력할때 마다, 정상적으로 keyup 이벤트가 발생하지만, 첫번째 입력컴포넌트의 경우 text프로퍼티로 불러와서 해당 텍스트블록을 벗어날때까지 텍스트가 인식되지 않지만, 두번째 입력컴포넌트의 경우 위에서 정의해둔 ktext 프로퍼티로 textfield의 text를 불러오기 때문에 텍스트블록을 벗어나지 않더라도 한글자씩 정상적으로 인식이 됩니다.


3번문제

Flash Player의 embed, object에 넣을수 있는 프로퍼티중 wmode라는 프로퍼티가 있습니다. wmode는 삽입될 Flash의 투명정도, 계층정도, 배치정보등을 설정할 수 있습니다.

그중 transparent 설정이 있는데, flash 배경을 투명으로 설정해두면 뒤의 HTML 배경이 해당 flash에 빚추어서 보이게됩니다.

하지만 wmode 프로퍼티가 아직 완벽히 브라우저, 플랫폼을 지원하지 않기 때문에, 일부브라우저에서는 제대로 지원되고 있지 않습니다. wmode 프로퍼티의 transparent 설정과 관련된 문제는 Flex Bug and Issue Management System의 단골 과제가 되어버렸습니다.

특히 wmode프로퍼티에 transparent를 지정하게 될경우 인터넷익스플로러(IE)외의 브라우저에서는 2byte의 문자열이 정상적으로 입력되지 않는 문제가 있습니다.

이 문제를 해결할만한 꼼수는 아쉽게도 아직 없습니다. IE이외의 브라우저에서 한글 입력이 반드시 필요하시다면, wmode 프로퍼티에 transparent를 지정하는것을 피하시는게 좋겠습니다.

이 문제와 관련된 꾸준한 버그 리포팅이 올라와서, Flash Player 10에는 수정될것으로 기대 되었습니다만, 지금 현재까지 출시된 Flash Player 10 Beta에선 수정되고 있진 않습니다.


4번문제

이 문제는 아주 최근(2008년 6월 16일)에 AIR1.1이 릴리즈 되면서 발견된 문제입니다.
AIR1.1의 입력컴포넌트중 Textinput, TextArea, RichTextEditor에서 한글을 삭제할때 마지막 글자의 자음이 남게됩니다.


Flex에선 텍스트블록이 검정색으로 표시되고 backspace(←)로 삭제하게 될경우 모두 제거가 되지만,


AIR1.1에서는 텍스트 블록이 노란색으로 표시되어 있고, 또 프롬프트도 입력된 글자 이전에 위치해 있습니다.
이상태에서 해당 글자를 backspace(←)로 삭제하게 되면, 제일 마지막 글자의 자음이 남게 됩니다.

이 문제에 있어서 아직 마땅한 해결 방법은 없습니다.
또, 아이러니 하게도 바로 전 버전의 런타임인 AIR1.0에서는 이런 문제가 없습니다.

이 문제가 AIR1.1 릴리즈 이전에 제대로된 로컬라이징 테스트 부족으로 발생한 문제이기 때문에, 곧 릴리즈 되는 AIR 1.5에서는 반드시 고쳐지길 바랍니다.



우리나라는 타 국가에 비해 많은 분야에서 Flex/AIR를 통한 프로젝트가 활성화가 되어있습니다.
하지만, 아직 몇몇부분에서 한국어 조차 제대로 처리하지 못하고 있는 사실이 아쉽습니다.

곧 릴리즈 되는 Flex 3.2, Flex4에서는 반드시 이런 문제가 해결될수 있길 바랍니다.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
트랙백 0 Comment 15

Flash Player10 보안샌드박스

Flash Player 10(astro)의 베타버전이 공개된지 엊그제 같은데, 지난달 Adobe CS4출시와 곧 있을 Flex 3.2 출시로 Flash Player 10의 정식 출시가 초읽기로 다가왔습니다. 

올 4월 Flash Player9의 ExternalInterface와 NavigateToURL의 보안샌드박스 적용등으로 엄청난 충격을 받은적이 있었는데, 이번 Flash Player10에서도 역시 보안샌드박스가 변경되거나 추가되었습니다. ㅎㄷㄷㄷ 

엄청난 고생길이....... 눈앞에 선하군요.......
 

1. 변경된 사항 

1. Policy File
Flash 10에서는 meta-policy의 기본값이 all에서 master-only로 바뀝니다. 이 설정은 해당 swf파일이 존재하는 도메인 루트의 crossdomain.xml을 읽어옵니다. 그러나, meta-policy를 바꿔서 예전처럼 쓸수도 있습니다.

2. 소켓 타임아웃
액션스크립트에서 Socket, XMLSocket의 모든 securityError이벤트는 connect()메서드의 호출 이후 일정시간 경과후 발생하게 됩니다. 이것은 송출 이후 즉각적인 securityError가 더 늦게 발생하게 되며, 또한 더 일찍 연결에 성공하게되면 securityError 이벤트는 긴 딜레이가 발생하게 됩니다. 그래서, 20초의 소켓 타임아웃을 정해 두었습니다. 물론, 개발자들은 Socket.timeout과 XMLSocket.timeout를 통해서 이 시간을 조정할 수 있습니다.

3. 파일선택과 다운로드시 사용자의 직접적인 인터렉션을 필요로 합니다.
Filerefrence.browse를 통해 사용자의 로컬의 파일을 찾는 창을 띄울수 있고, Filerefrence.download를 통해 파일을 내려 받을수 있습니다.
두 메서드의 경우 종전엔 사용자의 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.

4. 클립보드를 지정할시 사용자의 직접적인 인터렉션을 필요로 합니다.
System.setClipboard를 통해 사용자의 클립보드에 텍스트를 지정할 수 있습니다. 종전엔 사용자의 직접적인 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.

 

2. 추가된 사항

1. 로컬파일을 불러오고 저장할때
Flash 10에서는 SWF파일에서 사용자 로컬의 파일을 읽어오고 또 저장할 수 있습니다. 다만, 이 메서드들은 사용자가 파일 선택창에서 직접 파일이나 경로를 선택할때만 가능합니다.

2. 풀스크린 모드에서 제한적으로 입력허용
근래의 플래시 플레이어에서는 풀스크린 모드에서는 입력이 허용되지 않았습니다. 하지만 Flash 10에서는 탭, 스페이스, 방향키의 사용이 허용됩니다.

3. RTMFP
플래시 플레이어와 플래시 미디어서버간의 통신에 UDP기반의 RTMFP를 지원합니다.

4. Paste event handler를 통한 클립보드 데이터 핸들링
Flash 9에서는 시스템 클립보드의 데이터를 불러오지 못했습니다. Flash 10에서는 새롭게 추가된 Clipboard.generalClipboard.getData() 메서드를 통해 시스템 클립보드의 데이터를 읽어올수 있습니다. 다만, flash.events.Event.PASTE 이벤트가 발생할때에만 불러올수 있습니다 -_-;;;;

링크 : http://www.adobe.com/devnet/flashplayer/articles/fplayer10_security_changes.html#head5 

특히 제일 주목이 되는것은, UI인터렉션 후 클립보드 저장이나, 파일 창띄우기, 다운로드가 가능하다는 점인데, 현재 많은 개발자들이 쓰고있는 꼼수가 대부분 새로운 샌드박스의 영향으로 막히게 되어버립니다.

예를들어, 클립보드 복사의 경우, JS로 처리할때 IE외의 브라우저는 제대로 처리되지 않는 문제가 있습니다. 이 문제를 해결하기위해, flash의 setClipboard를 쓰는데, 대부분의 경우 UI는 HTML상에서 구현하고, JS로 Flash내부의 함수를 호출해 처리하는 방법이 있는데, 이 방법이 사용이 불가능해집니다.
(사용자의 직접적인 UI인터렉션이 발생하지 않음으로)

필자의 경우 Yezzang&Naru이미지호스팅(http://img.yezzang.net)를 운영하고 있습니다. 이미지를 업로드 하게 될경우, 업로드된 이미지 주소를 받아와 자동으로 클립보드에 담기게 하는데, 이 부분에 있어서 수정을 해야할것 같습니다.. 흑흑 (ㅠㅠ)

역시 개발자에겐 야근은 기본 스펙이 되어버리는군요..

신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 3 Comment 6
prev 1 next


티스토리 툴바