android - 缩放和居中路径
问题描述
我在 Android 中有一个路径,我想将它拉伸到画布的全尺寸(屏幕尺寸)并将其居中,我想在我的 onDraw() 事件中执行此操作。我想要的效果是放大绘图,直到它与屏幕尺寸相匹配。
顺便说一句,这是一个从类似于 wacom 数位板的外部硬件设备创建路径时绘制的视图。
因此,如果有人在平板电脑上绘图,比如说顶部的字母“a”,整个屏幕将显示大字母“o”,(https://snag.gy/nWB730.jpg)但是,如果有人也然后在底部再画一个,它会在顶部显示实际尺寸的o,底部显示实际尺寸的o。( https://snag.gy/Mo49Z7.jpg ) 截图来自 iOS。我让它在那个平台上工作。
这是我到目前为止所拥有的
int width = Resources.getSystem().getDisplayMetrics().widthPixels;
int height = Resources.getSystem().getDisplayMetrics().heightPixels;
scaleMatrix.postScale(pathBounds.width()/width, pathBounds.height()/height);
drawPath.transform(scaleMatrix);
canvas.drawBitmap(canvasBitmap, 0, 0, canvasPaint);
canvas.drawPath(drawPath, drawPaint);
它有点伸展,但它没有居中,也没有像第二个 iOS 屏幕截图那样缩放顶部和底部。帮助表示赞赏。
解决方案
推荐阅读
- php - WordPress add_filter 不适用于 localhost 中的 robots_txt
- ios - 现在不再支持在 iOS 上使用 Twitter 登录的 Firebase 身份验证 Twitter Kit
- java - 想将xml解析成java对象
- php - 如何仅从数据库表中提取上个月的数据
- php - twig - 从循环中获取 IF 语句
- react-router-v4 - Redux saga put push 没有改变位置
- oracle - 仅在找到新记录时更新“varchar2”列
- asp.net-mvc - 使用 LocalService 时拒绝访问 System.Data.dll
- ionic-framework - 如何在 Ionic 中添加文本区域并选择到警报
- java - 从android中的php后端获取JSON响应