【问题标题】:Problem while saving multiple pictures inside OnDraw()在 OnDraw() 中保存多张图片时出现问题
【发布时间】:2011-09-19 12:16:09
【问题描述】:

我是 Android 新手,无法在 onDraw(Canvas canvas); 中保存多张图片

这是我在画布中绘制图像的代码

canvas.drawBitmap(resize, 40, 100, null);
canvas.drawBitmap(resizeImage1, 400, 100, null);
canvas.drawText(CameraText, 100, 175, paint);

这是我保存图像的代码。

Bitmap toDisk = Bitmap.createBitmap(resizeImage1);
canvas.setBitmap(toDisk);
toDisk.compress(Bitmap.CompressFormat.JPEG, 100, new FileOutputStream(new File("/mnt/sdcard/pig.jpg")));

我的问题是我只能传递单个变量resizeImage1。我不能通过CameraText,resize。我该怎么做?

【问题讨论】:

    标签: java android canvas


    【解决方案1】:

    你不需要尝试保存画布图形而不是位图吗?

    这样您就可以将您的修改应用到图像(通过画布)然后保存

    画布对象更改您使用setBitmap 分配的位图,然后您使用画布函数将更改应用于位图。所以沿着这条线的东西应该类似于你正在寻找的东西(从你的示例代码复制)

    Bitmap toDisk = Bitmap.createBitmap(resizeImage1);
    canvas.setBitmap(toDisk);
    canvas.drawBitmap(resize, 40, 100, null);
    canvas.drawBitmap(resizeImage1, 400, 100, null);
    canvas.drawText(CameraText, 100, 175, paint);
    toDisk.compress(Bitmap.CompressFormat.JPEG, 100, new FileOutputStream(new File("/mnt/sdcard/pig.jpg")));
    

    【讨论】:

    • 先生,我该怎么做?请帮帮我?
    • 在画布上阅读更多内容,上面的代码似乎可以满足您的需求?
    • 先生,我的代码没有任何变化,我得到了相同的输出,你也只传递了单个变量。我只能查看单张图片。我无法查看 CameraText,调整大小。
    • 我正在为你的英语而苦恼,我不确定你在问什么。也许您可以编辑您的问题以包含您想要的内容和输入的示例?图片表示赞赏。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-12
    • 1970-01-01
    • 1970-01-01
    • 2015-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多