2012-01-12 2 views
0

웹 페이지를 표시 할 때 WebView 구성 요소의 이미지를 캡처하려고합니다. 내가 480 개 많은 다른 조합에 AVD 해상도를 변경 한안드로이드 webview.capture 항상 같은 너비

Picture screenie = webview.capturePicture(); 
Log.d(TAG, "W: " + screenie.getWidth() + " H: " + screenie.getHeight()); 
// 800 x 1200 

:

왜 폭 항상 800입니다. 나는 다른 스킨을 사용했다. 내가 놓친 게 있니?

또한 사용하고 있습니다

webview.getSettings().setLoadWithOverviewMode(true); 
webview.getSettings().setUseWideViewPort(true); 

답변

1

다음과 같이 시도 할 수 있습니다. int imageWidth, imageHeight;

Bitmap result = Bitmap.createScaledBitmap(bitmapPicture, 
         imageWidth, imageHeight, false); 

여기에 너비와 높이를 추가 할 수 있습니다. bitmapPicture는 Bitmap의 객체입니다.

귀하에게 도움이 될 경우 알려주십시오.

+0

그 덕분에, 나는 그 일을 끝내고 그것을했습니다! – Abs

0

capturePicture 뷰가 아닌 화면의 현재 내용을 캡처합니다. 따라서이 문서는 "현재보기 내용을 포함하는 그림을 반환합니다.이 그림은 전체 문서에 대한 것이며보기 범위에만 국한되지 않습니다."

+0

그래서 너는 폭을 설정하거나 어떻게 든 제한 할 길이 없다고 말하는거야? 내용 너비에 관계없이 항상 너비가됩니까? – Abs

+0

나는 capturePicture가 항상 전체 View를 캡쳐한다고 말하고있다. 뷰는 WebView의 내용이 아니라 디스플레이이다. 보기의 크기로 놀지 않은 경우 전체보기/내용을 가져옵니다. 보기 크기를 변경하는 방법이있을 수 있지만 그 크기는 알 수 없습니다. http://stackoverflow.com/questions/3808532/how-to-set-the-initial-zoom-width-for-a-webview 또는 검색을 확인하십시오. – Torid

관련 문제