【问题标题】:Move Android bitmap/canvas away from the top left将 Android 位图/画布从左上角移开
【发布时间】:2012-01-31 19:39:47
【问题描述】:

我正在尝试自定义一些代码来捕获我使用的签名。我对这些东西很陌生,我无法弄清楚。 以下代码完成了这项工作,但画布/位图位于左上角。我希望它位于页面中上部的某个位置。我试图弄乱 drawBitmap 参数“canvas.drawBitmap(mBitmap, 0, 0, null)”,但它实际上在手写笔和平板电脑上绘制的实际路径之间创建了一个偏移量。

Canvas canvas = null;
while (_run) {
    if (isDrawing == true) {
        try {
            canvas = mSurfaceHolder.lockCanvas(null);
            if (mBitmap == null) {
                mBitmap = Bitmap.createBitmap(300, 200, Bitmap.Config.ARGB_8888);
            }
            final Canvas c = new Canvas(mBitmap);
            c.drawColor(0, PorterDuff.Mode.CLEAR);
            canvas.drawColor(0, PorterDuff.Mode.CLEAR);
            commandManager.executeAll(c, previewDoneHandler);
            previewPath.draw(c);
            // Rect targetRect = new Rect(0, 0, 300, 200);
            // canvas.drawBitmap(mBitmap, null, targetRect, null);
            canvas.drawBitmap(mBitmap, 0, 0, null);
        } finally {
            mSurfaceHolder.unlockCanvasAndPost(canvas);

是否可以将位图/画布移动到左上角以外的位置?感谢您的帮助。

【问题讨论】:

  • 您好,请将您为解决问题所采取的步骤添加为答案(如下),然后在允许时接受您的答案。谢谢!

标签: android bitmap position signature android-canvas


【解决方案1】:

我解决它的方法是将 layout_marginLeft 和 layout_marginTop 添加到我在 xml 布局中的自定义视图中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-08
    相关资源
    最近更新 更多