Files
xianyan/lib/editor/services/image/image_import_service.dart
2026-06-07 08:16:20 +08:00

42 lines
1.2 KiB
Dart

// ============================================================
// 闲言APP — 图片导入服务
// 创建时间: 2026-05-16
// 更新时间: 2026-05-16
// 作用: 图片导入/预处理(裁剪/压缩/格式转换)
// 上次更新: 初始创建占位实现
// ============================================================
import 'dart:io';
import 'dart:typed_data';
import 'package:flutter/material.dart';
import 'package:file_picker/file_picker.dart';
import 'package:xianyan/core/utils/logger.dart';
class ImageImportService {
ImageImportService._();
static Future<Uint8List?> showImportSheet(BuildContext context) async {
try {
final result = await FilePicker.pickFiles(type: FileType.image);
if (result == null || result.files.isEmpty) return null;
final file = result.files.first;
// 优先通过路径读取
if (file.path != null) {
final f = File(file.path!);
return await f.readAsBytes();
}
// 路径不可用时回退到 bytes 属性
return file.bytes;
} catch (e) {
Log.e('图片导入失败', e);
return null;
}
}
static Future<Uint8List?> preprocessImage(Uint8List bytes) async {
return bytes;
}
}