이미지를 그레이 스케일로 변환하는 기능이 있습니다. 원본 이미지의 경우 URL을 가져오고 출력 캔버스를 사용하면 출력을 넣을 수 있습니다. 이 기능은 대부분의 브라우저에서 매우 빠르게 실행되지만 모바일 브라우저에서는 매우 느립니다 (700x700 이미지의 경우 ~ 3-4s). 이러한 이유로 (클라이언트에서) 그레이 스케일 이미지 데이터를 캐시하고 싶다면 이미지 요청이 여러 번 오면 캐시 된 그레이 스케일 데이터를 제공하고 다시 계산할 필요가 없습니다.캔버스에서 이미지 데이터를 캐싱 할 수 없습니다.
나는 jsfiddle에 대한 테스트를 수행했습니다. 여기에 있습니다 : http://jsfiddle.net/RCkDX/4/ 테스트 페이지에서 상단에 원형 이미지를 표시하고 하단에서 계산을 수행하는 데 사용되는 캔버스를 출력하고 두 캔버스를 중간에 출력하여 하단 이미지와 동일한 결과를 출력해야합니다 (캐시 된 데이터 제외).
순간에 'Uncaught TypeError : Type error'가 발생합니다. 캐시 데이터가 마음에 들지 않아 다른 방법을 시도했지만 아무런 행운이 없었기 때문에 생각합니다.
내가 사용하는 Android 모바일 브라우저가 현재 캔슬에 올바른 데이터가 아닌 작은 파란색 물음표 아이콘을 표시하므로 캐시 할 때 dataurls를 사용하지 않는 것이 중요하므로 dataurls가없는 모든 옵션은 작업.
그레이 스케일 변환 기능이 느리게 실행되므로 모바일 장치에서 속도가 어떻게 저하되는지 확인하십시오. 모바일 연결 속도가 데스크톱 연결보다 느릴 수 있으므로 속도가 느려지십니까? –
Expires 서버 쪽 헤더를 사용하여 캐시 된 이미지도 있기 때문에 이미지 다운로드 속도는 확실히 아닙니다. –
업데이트 된 코드보기 : http://jsfiddle.net/RCkDX/5/ 도움이 될 수도 있습니다. –