我正在尝试创建一个图像编辑器库,让我可以在图像上贴上标签。我找到了两个库,一个是 Aviary , 但我不能把自己的贴纸放在里面,然后我试过了 Android-image-edit但非常简单,它不是一个库,它是一个应用程序。 任何人都知道一些好的图书馆可以让我做我想做的事吗? 提前致谢。
最佳答案
我不了解库,但如果我没理解错的话,你想在图像上添加一个 Drawable 吗?
你可以自己做:(未经测试!)
public void putSticker(File file, Bitmap overlay) {
//Load bitmap from file:
Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath());
bitmap = bitmap.copy(Bitmap.Config.RGB_565, true);
//Draw overlay:
Canvas canvas = new Canvas(bitmap);
Paint paint = new Paint(Paint.FILTER_BITMAP_FLAG);
canvas.drawBitmap(overlay, 0, 0, paint);
//Save to file:
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.PNG, 40, bos);
byte[] bitmapdata = bos.toByteArray();
FileOutputStream fos;
try {
fos = new FileOutputStream(file);
fos.write(bitmapdata);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
也许有更好的加载和保存方式。但是无论如何,绘画是您问题的有趣部分。
参见 http://developer.android.com/reference/android/graphics/Canvas.html更多 drawBitmap() 的可能性。 (偏移,缩放,...)
关于Android 在图像上应用自定义贴纸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27419749/