アプリケーションの webview が非常に長くなります。共有を有効にするために、ユーザーが webview を画像として保存できるようにしたいと考えています。現在は機能していますが、コードによって長い画像が生成されます。保存する前に高さ\幅をプロポーショナルにしたい.800\600など.
やり方がわからない??
これは私がjpgを保存する方法です:
Picture picture = webview.capturePicture();
Bitmap b = Bitmap.createBitmap(picture.getWidth(), picture.getHeight(), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(b);
picture.draw(c);
FileOutputStream fos = null;
try {
File file = new File(pathName);
file.createNewFile();
fos = new FileOutputStream(file);
if (fos != null) {
b.compress(Bitmap.CompressFormat.JPEG, 90, fos);
fos.close();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
}
}
レイアウトは次のようになります。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:id="@+id/a_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/fullscreen_content_controls"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<Button
android:id="@+id/reload"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/reload" />
</LinearLayout>
<WebView
android:layout_width="fill_parent"
android:id="@+id/webview"
android:layout_above="@id/fullscreen_content_controls"
android:layout_alignParentTop="true"
android:layout_height="fill_parent" />
</RelativeLayout>