【问题标题】:Saving canvas drawing to sd card将画布绘图保存到 sd 卡
【发布时间】:2013-12-12 14:03:58
【问题描述】:

我目前正在绘制画布,其中我有一个白色背景的画布(带有 canvas.drawColor(Color.WHITE);)和允许绘画的卡通漫画的素描图像有一些颜色。问题是,当我去保存画布图像时,只有一个完成颜色的黑屏得到保存,既没有出现画布白色背景,也没有出现草图图像。 我正在使用此代码保存画布

public void saveAsJpg (File f)
    {
        String fname = f.getAbsolutePath ();
        FileOutputStream fos = null;
        try 
        {
            fos = new FileOutputStream (f);
            mBitmap.compress (CompressFormat.JPEG, 95, fos);
            Toast.makeText (getApplicationContext(), "Saved " + fname, Toast.LENGTH_LONG).show ();
        }
        catch (Throwable ex) 
        {
            Toast.makeText (getApplicationContext(), "Error: " + ex.getMessage (), Toast.LENGTH_LONG).show ();
            ex.printStackTrace ();
        }
    }

请帮忙,,,, 提前谢谢

【问题讨论】:

  • 在这种情况下“画布”是什么意思?这是Java吗?安卓?
  • 很抱歉之前没有提到它,它是 Android 画布
  • 您既不刷新也不关闭输出流。这样做无济于事,您必须显示将位图附加到画布的代码。另见:tutorialforandroid.com/2010/11/…

标签: java android android-canvas


【解决方案1】:


我的画被保存了。我需要在代码中进行的更改是通过命令 mCanvas = new Canvas( mBitmap ); 创建一个位图以及画布,这会将我的画布背景作为图像背景..
以前我只是开始画默认为黑色背景的画布。

【讨论】:

    【解决方案2】:

    你试过吗? 在您的清单文件中写入此许可。 . .

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    

    【讨论】:

      猜你喜欢
      • 2020-07-01
      • 1970-01-01
      • 2012-10-21
      • 1970-01-01
      • 1970-01-01
      • 2012-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多