阴影
DropShadow
图像滤镜等效于其 SVG 对应物。它创建一个在输入内容下绘制阴影的滤镜。shadowOnly
属性呈现阴影,排除输入内容。它还可以通过 inner
属性渲染内阴影。
如果您想将内阴影渲染为圆角矩形,盒阴影会快得多。
名称 | 类型 | 描述 |
---|---|---|
dx | 数字 | 阴影的 X 轴偏移。 |
dy | 数字 | 阴影的 Y 轴偏移。 |
blur | 数字 | 阴影的模糊半径 |
color | 颜色 | 阴影的颜色 |
inner? | 布尔值 | 阴影在输入内容内绘制 |
shadowOnly? | 布尔值 | 如果为 true,则结果不包括输入内容 |
children? | 图像滤镜 | 可选的要先应用的图像滤镜 |
投影阴影
下面的示例创建两个投影阴影。它等效于以下 CSS 表示法。
css
.paint {filter: drop-shadow(12px 12px 25px #93b8c4) drop-shadow(-12px -12px 25px #c7f8ff);}
css
.paint {filter: drop-shadow(12px 12px 25px #93b8c4) drop-shadow(-12px -12px 25px #c7f8ff);}
tsx
import {Shadow ,Fill ,RoundedRect ,Canvas } from "@shopify/react-native-skia";constNeumorphism = () => {return (<Canvas style ={{width : 256,height : 256 }}><Fill color ="lightblue" /><RoundedRect x ={32}y ={32}width ={192}height ={192}r ={32}color ="lightblue"><Shadow dx ={12}dy ={12}blur ={25}color ="#93b8c4" /><Shadow dx ={-12}dy ={-12}blur ={25}color ="#c7f8ff" /></RoundedRect ></Canvas >);};
tsx
import {Shadow ,Fill ,RoundedRect ,Canvas } from "@shopify/react-native-skia";constNeumorphism = () => {return (<Canvas style ={{width : 256,height : 256 }}><Fill color ="lightblue" /><RoundedRect x ={32}y ={32}width ={192}height ={192}r ={32}color ="lightblue"><Shadow dx ={12}dy ={12}blur ={25}color ="#93b8c4" /><Shadow dx ={-12}dy ={-12}blur ={25}color ="#c7f8ff" /></RoundedRect ></Canvas >);};
结果

内阴影
tsx
import {Shadow ,Fill ,RoundedRect ,Canvas } from "@shopify/react-native-skia";constNeumorphism = () => {return (<Canvas style ={{width : 256,height : 256 }}><Fill color ="lightblue" /><RoundedRect x ={32}y ={32}width ={192}height ={192}r ={32}color ="lightblue"><Shadow dx ={12}dy ={12}blur ={25}color ="#93b8c4"inner /><Shadow dx ={-12}dy ={-12}blur ={25}color ="#c7f8ff"inner /></RoundedRect ></Canvas >);};
tsx
import {Shadow ,Fill ,RoundedRect ,Canvas } from "@shopify/react-native-skia";constNeumorphism = () => {return (<Canvas style ={{width : 256,height : 256 }}><Fill color ="lightblue" /><RoundedRect x ={32}y ={32}width ={192}height ={192}r ={32}color ="lightblue"><Shadow dx ={12}dy ={12}blur ={25}color ="#93b8c4"inner /><Shadow dx ={-12}dy ={-12}blur ={25}color ="#c7f8ff"inner /></RoundedRect ></Canvas >);};
结果
