0
我有ImageView
的子类,我可以在其上绘制(笔,矩形,椭圆等),并添加EditText
子视图(可拖动和可以旋转)。Xamarin Android在位图上绘制EditText
问题是我想获得最终图像我不确定如何将这些EditText
合并到新图像中,因为所有工具都直接在画布上绘图,而最终需要绘制EditText
文本,因为他们需要在用户单击Save之前可拖动和变化。
经过许多不同的方法后,这一个是最正确的,但如果文本旋转一定程度,它不起作用。
public Bitmap GetFinalBitmap()
{
this.DrawingCacheEnabled = false;
this.DrawingCacheEnabled = true;
var finalImage = Bitmap.CreateBitmap(GetDrawingCache(true));
foreach (var item in this.pathLists)
{
if (item.TextView != null)
{
item.TextView.BuildDrawingCache(true);
var txt = item.TextView.GetDrawingCache(true);
finalImage = Overlay(finalImage, txt, item.TextView.GetX(), item.TextView.GetY());
}
}
return finalImage;
}
public Bitmap Overlay(Bitmap bmp1, Bitmap bmp2, float x, float y)
{
Bitmap bmOverlay = Bitmap.CreateBitmap(bmp1.Width, bmp1.Height, bmp1.GetConfig());
Canvas canvas = new Canvas(bmOverlay);
canvas.DrawBitmap(bmp1, new Matrix(), null);
canvas.DrawBitmap(bmp2, x, y, null);
return bmOverlay;
}
任何帮助,将不胜感激(溶液的更新或有关如何使用正确的坐标上ImageView's
位图绘制EditText
也许新方法)。