0
ImageView已加载了67KB的1514×564 PNG图像。Android。我如何使ImageView将自己绘制为PNG?
需要将包含此类ImageView的多个视图的LinearLayout绘制到画布中。 调用方法ImageView.draw(Canvas)时,画布大小以字节为单位从67KB增加到13MB! (因为“绘制”绘制位图,而不是压缩的PNG)
是否有一种简单的方法可以让imageView将自己绘制为PNG?
到目前为止,我已经想过扩展ImageView,并在绘制之前用压缩位图的东西重写draw方法。
问题是,我在画布内绘制了一个LinearLayout,并且这种布局包含许多视图,包括ImageView。 – vitil
@ user2358649:然后,如果您有几个1514×564'ImageView'小部件,则需要大量'Canvas'。如果你不希望'Canvas'变大,那么可以使用更小的'ImageViews'。如果这是一个'Bitmap'支持的'Canvas',则可以将生成的'Bitmap'压缩到一个PNG,可能作为写入磁盘的一部分,但这不会改变'Canvas'本身的大小。 – CommonsWare