안녕하세요.
웹뷰로 이미지를 로드시켜 나오는 화면을 캡쳐하여 Bitmap 으로 변환 후 이미지뷰에 적용시키고 싶은데요
이 방식을 쓰는 이유가 로드하는 이미지의 크기가 너무 커서 그렇습니다..
cache 방식을 해 보니 디바이스의 세로 크기 만큼 (한 화면) 밖에 캡쳐가 안되더라구요
Picture.capturePicture 를 사용하면 낮은 api 레벨에서는 잘 불러와지지만 그 이상에서는 안불러와집니다.
높은 api 레벨에서 높이가 긴 이미지를 불러오고 싶다면 어떤 식으로 해야할지 며칠 째 답을 찾고 있는데 잘 안나오네요.
해보셨거나 좋은 방법 있으시면 팁좀 주세요!
* 정리
이미지의 크기는 최소 세로가 10000px 이상인 이미지 입니다.
웹뷰로 로드 시 스크립트로 width=100%를 하면 자동 스케일링이 되어 가로 대비 세로가 알맞게 로드 됩니다. (약 1300 / 13000 짜리 이미지를 웹뷰에 스크립트 width=100% 적용 시 디바이스 크기만큼의 가로 720 / 세로 7200 정도의 크기로 스케일링됩니다. 세로 스크롤이 매우 길겠죠?)
자동 스케일링 된 웹뷰 화면의 이미지를 캡쳐 합니다.
낮은 api 레벨에서는 Picture.capturePicture 를 사용하면 모든 스크롤 포함 이미지가 Bitmap 으로 저장 됨
높은 api 레벨에서는 안됨.
웹뷰의 cacheEnabled ? 를 걸면 화면에 보이는 한 화면만 캡쳐가 되므로 실패.
이후 방법 찾는중
도와주세요!