1

我的应用程序上的 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>
4

0 回答 0