在.drawPath之后保存画布为.png

时间:2016-06-14 11:52:27

标签: android android-canvas android-view android-bitmap

我更好地解释了我的问题: 我需要在这样的.png中画一条路径 enter image description here ,我需要以一种快速响应的方式做到这一点,所以我发现“最好的”方式是直接在源图像上工作(写入路径),保存这个新图像并在此之后调用带有路径的新图像和做适当的缩放。 在Android(Canvas,Bitmap)中实现这一目标的最佳方法是什么?现在,我得出的“最佳”解决方案是使用原始.png创建一个Bitmap并在Canvas中进行绘制,问题是我无法缩放画布。

public class FloorImageView extends ImageView {

    /*
     * all variables used (context, image, path etc...)
     */

    public FloorImageView(Context context, AttributeSet attrs) {
        super(context, attrs);

        setFocusable(true);
        setVerticalScrollBarEnabled(true);

        setFocusableInTouchMode(true);
        setBitmap();

        lineStylePaint(); // set drawPaint
    }

    @Override
    protected void onDraw(Canvas canvas)
    {
        canvas.drawBitmap(image,0,0,drawPaint);
        canvas.drawPath(path, drawPaint); // I convert dpi to pixel
    }


    private void setBitmap(){
        BitmapFactory.Options options = new BitmapFactory.Options();
        options.inMutable = true;
        image = BitmapFactory.decodeResource(getContext().getResources(),R.drawable.q145,options);
    }
    /*
     * Other ImageView code
     */
}

0 个答案:

没有答案