2007년 6월 17일 일요일

Flash를 이용해서 이미지 에디터를 만든다면? - 간단한 조사와 메모

Flash로 이미지 에디터를 만들어볼까 해서 몇 가지를 조사해봤습니다. (거의 메모 수준입니다. 틀린 부분있으면 얘기해주세요.)

MATSC로 개발할 것을 생각했기에 ActionScript 2.0 API를 찾아보았습니다. 그런데, adobe.com에는 마땅하게 전체를 살펴볼 API가 안보이더군요. Flex와 관련된 API는 쉽게 볼 수 있는데, ActionScript 2.0과 관련해서는 영 안보이네요. -_-;; 결국 brajeshwar.com에서 찾았습니다.

ActionScript에서는 이미지를 표현하기 위한 클래스 flash.display.BitmapData라는 클래스를 가지고 있더군요. BitmapData는 pixel데이터(32bit-integers)를 가지고 있어서 이미지를 표현할 수 있습니다. BitmapData에서 이미지 파일을 업로드할 수 없으므로 MovieClipLoader로 이미지를 MovieClip에 로딩한 다음에, 이를 캡쳐하는 방법으로 이미지를 BitmapData로 로딩할 수 있습니다.(MovieClip 생성관련 글)

_movieClipLoader = new MovieClipLoader();
_movieClipLoader.loadClip(imageFilteName, _holderMovieClip);
...
_bitmap = new BitmapData(...);
_bitmap.draw(_holderMovieClip);

그리고, flash.filters.* 를 살펴보면 BitmapData에 적용할 수 있는 필터들도 있습니다. Bevel, Bitmap, Blur, Glow 등의 필터들이 존재하고 있구요. flash.geom.* 을 이용하면 여러가지 도형을 이미지 위에 그릴 수도 있습니다. (필터와 관련된 Adobe의 문서들)

문제는, 이렇게 생성된 이미지를 서버로 전달하는 방법인데요. 마땅한 방법이 잘 안보이네요.
인터넷으로 검색을 해보니 다음과 같은 방법이 있다고 하더군요.
  • BitmapData를 로컬(Client)에 이미지로 저장한 다음에 서버에 파일을 전송한다.(AS3에는 JPEGEncoder가 있군요. AS2에서의 Storing and displaying image 글)
  • 또, 하나의 방법으로는 BitmapData의 Pixel 데이터를 서버에 전송한 후 이미지로 만들어 클라이언트에 보여준다.
쉽지가 않군요. -_-;;

여기까지 조사를 하고 쉽게 만들 수 없겠다는 생각이 들어서 일단은 여기까지하고 마무리져야 겠네요.
좋은 방법 있으시면 나누어 주세요~~

P.S. 샘플입니다.

댓글 7개:

  1. @쟤시켜 알바 - 2007/06/18 07:52
    샘플 올렸삼...

    답글삭제
  2. trackback from: Flex로 Image Editor 만들기
    <DIV class="head_title articleHead"><A target='_blank' class='con_link' href="http://okjungsoo.tistory.com/entry/Flash%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EC%9D%B4%EB%AF%B8%EC%A7%80-%EC%97%90%EB%94%94%ED%84%B0%EB%A5%BC-%EB%A7%8C%EB%93%A0%EB%..

    답글삭제
  3. adobe에서 Flex 를 오픈소스 했다던데, 그러면 AS3 컴파일러 및 FlashVM 모두 오픈됬다는거 아닌가요?

    AS3 맘대로 사용해도 될꺼 같은데...

    답을 알려주시오~

    답글삭제
  4. @bannyang - 2007/06/22 11:34
    AS3 컴파일러가 오픈이 되었어도 툴까지는 오픈이 되지 않아서 메모장이나 EditPlus같은데서 컴파일을 해야되죠. 결국에는 Flex툴을 구매해야해서.. ^^;;;;

    답글삭제
  5. @지돌스타 - 2007/07/05 01:01
    넵 ^^

    답글삭제