Si të shkurtoni imazhet në qendër Flutter- Udhëzues i thjeshtë

Shtoni deklaratat e nevojshme të importit për image paketën:

import 'dart:io';  
import 'package:image/image.dart' as img;  
import 'package:path_provider/path_provider.dart';  

Krijoni një funksion për të prerë dhe ruajtur imazhin në qendër:

Future<void> cropAndSaveCenteredImage(String imagePath, double cropWidth, double cropHeight, String fileName) async {  
  // Read the image from the file path  
  File imageFile = File(imagePath);  
  List<int> imageBytes = await imageFile.readAsBytes();  
  img.Image image = img.decodeImage(imageBytes);  
  
  // Calculate the center position for cropping  
  int centerX = image.width ~/ 2;  
  int centerY = image.height ~/ 2;  
  
  // Calculate the crop rectangle based on the center position  
  int cropX =(centerX- cropWidth ~/ 2).clamp(0, image.width);  
  int cropY =(centerY- cropHeight ~/ 2).clamp(0, image.height);  
  
  // Crop the image  
  img.Image croppedImage = img.copyCrop(image, cropX, cropY, cropWidth.toInt(), cropHeight.toInt());  
  
  // Get the document directory to save the image  
  Directory directory = await getApplicationDocumentsDirectory();  
  String filePath = '${directory.path}/$fileName.png';  
  
  // Save the image to file  
  File file = File(filePath);  
  await file.writeAsBytes(img.encodePng(croppedImage));  
  
  // Display the file path  
  print('Image saved to: $filePath');  
}  

Thirrni funksionin me shtegun e skedarit të imazhit, gjerësinë e prerjes, lartësinë e prerjes dhe emrin e skedarit të dëshiruar:

void main() async {  
  // Replace 'image_path.png' with the actual path of your image file  
  String imagePath = 'image_path.png';  
  
  // Define the desired crop width and height  
  double cropWidth = 200.0;  
  double cropHeight = 200.0;  
  
  // Define the desired filename(without the extension)  
  String fileName = 'cropped_image';  
  
  // Crop and save the centered image with the specified filename  
  await cropAndSaveCenteredImage(imagePath, cropWidth, cropHeight, fileName);  
}  

Sigurohuni që ta zëvendësoni 'image_path.png' me shtegun aktual për skedarin tuaj të imazhit. Kodi do të lexojë imazhin, do të llogarisë pozicionin qendror, do të krijojë një drejtkëndësh të prerjes rreth tij dhe më pas do të presë imazhin duke përdorur paketën image. Imazhi i prerë do të ruhet si një skedar i ri imazhi PNG me emrin e personalizuar të skedarit në drejtorinë e dokumenteve të aplikacionit. Rruga e skedarit do të printohet në tastierë për referencën tuaj.

Përsëri, mos harroni të përdorni trajtimin e duhur të gabimeve dhe kontrolloni për vlerat null kur punoni me skedarë dhe imazhe.