✍️
真正的原生墨迹
iOS 通过 PencilKit 绘制,支持压感和 Apple Pencil。Android 运行 Kotlin 编写的速度贝塞尔渲染器,笔速越快线条越细。
iOS 与 Android 差异
npm install react-native-signature-inkyarn add react-native-signature-inknpx expo install react-native-signature-ink
npx expo prebuild然后在 ios/ 中运行 pod install。该组件需要启用新架构。权限和 Expo 的相关说明见安装。
import { useRef } from 'react';
import { SignatureInk, type SignatureInkHandle } from 'react-native-signature-ink';
const ref = useRef<SignatureInkHandle>(null);
<SignatureInk ref={ref} style={{ height: 240 }} showBaseline showToolbar />;
const png = await ref.current?.toBase64({ trim: true }); // 纯 base64,不带 data: 前缀