2009-11-25 7 views
1

플래시 플레이어에서 매우 큰 이미지를 캡처하려고하는데 이미지의 크기가 2400x12000 픽셀이며 매우 심각한 문제가 발생합니다. 나는 처음에 그 크기로 이미지가 어떻게 움직이는지를 조사한다 :플렉스에서 생성 된 큰 이미지 저장

사용자가 요소를 캔버스에 추가 한 다음 사용자가 끝나면 캔버스의 너비가 2400px, 높이가 12,000px까지 조정된다. 문제는 이미지를 하드 드라이브에 저장하려고 할 때 발생합니다. 자, 이것이 권장되는 수정에 영향을 미칠지는 모르겠지만 렌더링 된 이미지는 하드 드라이브에 저장되지 않을 것이며, 서버로 보내질 것입니다. Flash Player에서 ~ 4050 픽셀 제한에 대해 알고 있고 ImageSnapshot.captureBitmapData() 메서드로 이미지를 클리핑하고 필요한 Rectangle 변수를 4000px 미만으로 유지 한 다음 끝에 도달 할 때까지 큰 이미지를 반복하여이를 해결할 수 있다고 생각했습니다. 나중에 최종 이미지가 다시 결합됩니다. 그러나 ... 내가 언급 한대로 'fileReference.save (pngImage);에 도달하면 오류가 발생합니다.' 방법 ... 다른 사람이 이런 짓을 했니?

답변

1

fileReference.save (예 : 100 픽셀 높이와 같은 작은 이미지의 경우)을 사용해 보셨습니까? 이미지 데이터가 문자열 데이터로 변환 될 가능성이 있으므로 현재 알지 못하는 다른 제한이있을 수 있습니다 (압축되지 않은 이미지 데이터는 약 86MB이므로 압축률이 좋은 PNG 파일 일 수도 있습니다). 크기가 약 10MB이지만 3 분의 1을 절약하려고하는 순간에 3MB가 여전히 상당합니다).

+0

예 큰 이미지를 저장하기 전에 저장 작업을 수행했습니다. – Adrian

+0

그런 다음 이미지의 크기를 천천히 늘려 제한이있는 곳을 확인한 다음 f.e를 사용하십시오. 이 한도의 반은 안전한쪽에 있어야합니다. – schnaader

+0

그건 좋은 지적이지만, 클리핑없이 2400px img로 4000을 절약 해보고 작동하는지 확인해 보겠습니다. – Adrian