在Flutter中保存两种不同大小的图像可以通过以下步骤实现:
dependencies:
flutter:
sdk: flutter
image_picker: ^0.8.4+4
然后运行flutter pub get
命令来获取库。
import 'package:image_picker/image_picker.dart';
final picker = ImagePicker();
Future<void> pickImageFromGallery() async {
final pickedFile = await picker.getImage(source: ImageSource.gallery);
// 处理选择的图像
}
Future<void> captureImageFromCamera() async {
final pickedFile = await picker.getImage(source: ImageSource.camera);
// 处理拍摄的图像
}
import 'dart:io';
Future<void> saveImage(File image, String fileName) async {
final directory = await getApplicationDocumentsDirectory();
final filePath = '${directory.path}/$fileName';
await image.copy(filePath);
// 图像保存成功
}
在上述代码中,image
是选择或拍摄的图像文件,fileName
是保存图像的文件名。getApplicationDocumentsDirectory()
函数用于获取应用程序的文档目录,然后使用copy()
方法将图像文件复制到指定路径。
Future<void> pickImageFromGallery() async {
final pickedFile = await picker.getImage(source: ImageSource.gallery);
if (pickedFile != null) {
final image = File(pickedFile.path);
await saveImage(image, 'large_image.jpg');
// 保存大图像
}
}
Future<void> captureImageFromCamera() async {
final pickedFile = await picker.getImage(source: ImageSource.camera);
if (pickedFile != null) {
final image = File(pickedFile.path);
await saveImage(image, 'small_image.jpg');
// 保存小图像
}
}
通过以上步骤,你可以在Flutter中保存两种不同大小的图像。请注意,这只是一个基本的示例,你可以根据实际需求进行修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云