1

我知道 - 标题可能听起来很奇怪。让我解释:

我创建了一个图像来向您展示我在说什么: 问题

我得到了一个图像(位图(1)),大小为 150w/200h。

现在我需要使位图更大((2)400w/400h),但原始图像必须具有相同的大小。使图像嵌入在白色背景中。

我认为解决它的一种方法是: * 创建一个大位图 * 为它创建一个画布 * 在画布上绘制原始位图 * 绘制画布 * 生成画布的位图

对我来说问题是,它必须在后台线程中完成而不绘制视图。我希望你能理解我。

4

2 回答 2

6

您可以使用下面的代码来实现它。smallBitmap您的原始图像在哪里,并且bigBitmap是最终图像:

Bitmap bigBitmap = Bitmap.createBitmap(width, height , Bitmap.Config.ARGB_8888);
canvas = new Canvas(bigBitmap);
canvas.drawBitmap(smallBitmap, left, top, new Paint());

问候。

于 2012-11-13T16:37:53.780 回答
0

这应该可以解决问题。

  1. 创建一个线程并在该线程对象中:
  2. 创建一个新的位图。
  3. 基于该位图创建画布。
  4. 将您的位图绘制到该画布上

瞧!

我希望这有帮助。

于 2012-11-13T16:13:17.600 回答