skyhills13 / PhotoMosaic

2014-3-실전 프로젝트 레파지토리
3 stars 1 forks source link

0000 사진 고르기: Web Worker를 사용하여 dataURL 생성 #182

Open min20 opened 9 years ago

min20 commented 9 years ago

DataURL을 생성할 때 문제가 아닌가 싶은데, 일단 BackLog에 넣어두고 시간날 때 교수님 찾아뵙기.

min20 commented 9 years ago

2014.12.22에 한 일

  1. WebWorker에 대해 공부
  2. 간단한 동작법 구상: drag 이벤트로 받은 file을 worker에 보내면 dataURL을 생성하여 반환한다.
    • worker.postMessage({"targetMethod": /parameters/}) 형식으로 데이터를 보내고
    • worker.addEventMessage("message", function(event) { event.data }) 로 데이터를 받는다.
  3. 예제코드 작성(/WEB-INF/jsp/test/WebWorker.jsp 및 관련 자바스크립트)
min20 commented 9 years ago

코드 돌려보지 않고 그냥 암산하듯이... 머리 속으로 동작 흐름 떠올리면서 어기적 어기적 짜고 있었는데, 아주 큰 문제가 발생. File API와 CustomEvent를 직접 만들어 써보려 했고 이에 따라 코드까지 대충 만들어 놓았는데, worker에서는 여기에 어떻게 접근해야 하는지 모르겠다. Event야 소소한 문제지만, File API는.... 만약 지원되지 않는다면 Worker를 사용할 이유가 없어진다...

월요일에 Worker에 대해 추가정보 찾아보고, 없을 경우의 차선책

  1. drag & drop을 이용한 File Upload 예제들을 잘 살펴본다.
    • 저번주에 좀더 빠르고 쾌적하게 동작하는 Drag & Drop Uploader를 보았다. 이들의 코드를 분석해본다.
  2. 디자인 개편이나 열심히 한다.
min20 commented 9 years ago

공부할 것

  1. Javascript File System
  2. Basic Web worker
  3. The Synchronous FileSystem API for Workers

쭉 살펴보니까 별로 필요 없다

min20 commented 9 years ago

짱 크게 커밋함.

WebWorker에서는 비동기로 동작하는 FileReader() 는 지원하지 않고, 동기로 동작하는 FileReaderSync() 만 지원됩니다. 콜백 안 쓰니까 오히려 더 편한듯....

crongro commented 9 years ago

짱크네

min20 commented 9 years ago

File 을 dataURL 로 변경하는 것을 Web worker로 처리하였습니다. 속도측정은 안 했습니다.

(문제가 되었던) 큰 이미지파일 업로드 시에

작은 이미지파일 업로드 시에는

추가로 하고싶은 작업

  1. thumbnail 추가하는 부분이 conversion이 완료될 때까지 기다리고 있다. 이 부분에서 사용성을 크게 해친다. thumbnail wrapper를 먼저 추가한 후 dataURL 로드가 끝날 때 를 추가하는 것이 어떨까?
min20 commented 9 years ago

요약: 데모는 작은 이미지파일로 진행합시다...

skyhills13 commented 9 years ago

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ