业务需求:分享作品时生成关于该作品的图片保存至手机,但发现保存的图片很模糊
解决方案:
1.生成图片相当于将某一widget保存为图片,此操作需要用到以下两个插件:
image_gallery_saver: ^1.7.1 # 图片保存至相册
permission_handler: ^8.2.5 # 权限管理
在 android/app/src/main/AndroidManifest.xml 文件中写入:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
在 ios/Runner/Info.plist 文件中写入:
<key>NSPhotoLibraryAddUsageDescription</key>
<string>请允许APP保存图片到相册</string>
将需要生成图片的widget用RepaintBoundary包裹:
RepaintBoundary(
key: globalKey,
child: Container(...)
)
点击保存后执行:
GestureDetector(
onTap: () async {
RenderRepaintBoundary boundary = globalKey.currentContext.findRenderObject();