РЕДАКТИРОВАТЬ
Исходный ответ неверен.Вы можете использовать sourceRect, чтобы указать часть растрового изображения для рисования.Это может быть ноль, и в этом случае будет использоваться все изображение.
Согласно комментарию фритюрницы, который он рисовал под чем-то, я добавлю примечание об этом.
drawBitmap(bitmap, srcRect, destRect, paint)
не обрабатывает Z ordering (depth)
, и порядок вызова draw для объекта имеет значение.
Если у вас есть 3 фигуры, которые нужно нарисовать, квадрат, треугольник и круг.Если вы хотите, чтобы квадрат был сверху, он должен быть нарисован последним.
Вы не указали ни одного источника, поэтому ничего не нарисовано.
Пример:
У вас есть растровое изображение 100x100 пикселей.Вы хотите нарисовать все растровое изображение.
canvas.drawBitmap(MyBitmap, new Rect(0,0,100,100), rectangle, null);
Вы хотите нарисовать только левую половину растрового изображения.
canvas.drawBitmap(MyBitmap, new Rect(0,0,50,100), rectangle, null);
Вам необходимо указать исходный прямоугольник, исходный прямоугольник можетбыть прямоугольником от 0,0 до ширины, высота растрового изображения.