flutter - 我可以在 Flutter 中使用 CustomPaint 中的 Canvas 绘制自定义框阴影吗?
问题描述
很清楚如何使用高程属性绘制阴影,但是如果我想让阴影居中怎么办?
解决方案
找到了解决方案:
我可以简单地进入 BoxShadow 小部件的源代码,并将它们使用的路径属性应用于我自己的路径。
这是我用来为自定义路径(而不是具有边框半径的圆形或矩形)创建阴影的代码,它允许我创建自定义阴影而不是使用高程预设。
canvas.drawPath(
Path()
..addRect(
Rect.fromPoints(Offset(-15, -15), Offset(size.width+15, size.height+15)))
..addOval(
Rect.fromPoints(Offset(0, 0), Offset(size.width, size.height)))
..fillType = PathFillType.evenOdd,
Paint()
..color= Colors.black.withAlpha(shadowAlpha)
..maskFilter = MaskFilter.blur(BlurStyle.normal, convertRadiusToSigma(3))
);
static double convertRadiusToSigma(double radius) {
return radius * 0.57735 + 0.5;
}
推荐阅读
- excel - 通过用户表单查找具有特定值的行并复制/粘贴到另一张表
- sql - SQL SELECT 如何在两列之间查找子字符串编号?
- python-3.x - 如何从 .h5 文件正确加载带有自定义层的 Keras 模型?
- java - 用硒停用铬警报
- c# - 如何订阅泛型类的静态事件
- android - 我们可以检测手机是否有前置电动摄像头吗?
- java - org.hibernate.hql.internal.ast.QuerySyntaxException:连接异常的路径
- html - 在 a 的边框上链接 href
在 HTML 中,我正在创建一个表格并使每一行中的整个单元格都可以点击。这些单元格链接到一个页面,其中包含每个账单的更多详细信息。
每行中的单元格是
<a href ...>
. 每个单元格上的超链接工作正常,但不是在边界上。可悲的是,我不允许在这里显示图像。c - Avr 问题:在 spi 中,spdr 寄存器是 8 位,但我的号码是 16 位
- java - 在 Spring Security (spring boot) 中出现禁止错误