慕工程0101907
//合成public class MainActivity extends AppCompatActivity {@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ImageView iv = findViewById(R.id.iv);
Bitmap newP1 = getNewBitmap(R.drawable.p1);
Bitmap newP2 = getNewBitmap(R.drawable.p2);
Bitmap newBitmap = Bitmap.createBitmap(
newP1.getWidth() + newP2.getWidth(),
Math.max(newP1.getHeight(), newP2.getHeight()),
Bitmap.Config.RGB_565
);
Canvas canvas = new Canvas(newBitmap);
canvas.drawBitmap(newP1, 0, 0, null);
canvas.drawBitmap(newP2, newP1.getWidth(), 0, null);
iv.setImageBitmap(newBitmap);
}
private Bitmap getNewBitmap(@DrawableRes int resId) {
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), resId);
int width = bitmap.getWidth();
int height = bitmap.getHeight();
return Bitmap.createBitmap(bitmap, 0, 0, width / 2, height);
}}//保存public static boolean saveBitmap(Bitmap bitmap, File picFile, Bitmap.CompressFormat format) {if (bitmap == null)return false;FileOutputStream fos = null;try {fos = new FileOutputStream(picFile);bitmap.compress(format, 100, fos);fos.flush();return true;} catch (Exception e) {e.printStackTrace();} finally {if (fos != null) {try {fos.close();} catch (IOException e) {e.printStackTrace();}}}return false;}public static boolean saveBitmap(Bitmap bitmap, File file) {
return saveBitmap(bitmap, file, Bitmap.CompressFormat.PNG);
}
繁星coding
ImageView img1 = new ImageView(imageView.getContext());Bitmap bitmap1 = Bitmap.createBitmap(img1.getWidth(),img1.getHeight(), Bitmap.Config.ARGB_8888);Canvas canvas1 = new Canvas(bitmap1);img1.draw(canvas1); ImageView img2 = new ImageView(imageView.getContext());
Bitmap bitmap2 = Bitmap.createBitmap(img2.getWidth(),img2.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas2 = new Canvas(bitmap2);
img2.draw(canvas2);
Bitmap bitmap = Bitmap.createBitmap(img1.getWidth() + img2.getWidth(),Math.max(img1.getHeight(),img2.getHeight()),
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
canvas.drawBitmap(bitmap1,0f,0f,null);
canvas.drawBitmap(bitmap2,img1.getWidth(),0f,null);最后使用bitmap这个对象,没经过测试,不知道行不行