image_validator library

Image Validator - A comprehensive Dart package for validating image files.

This package provides robust validation for image files with support for multiple formats (JPEG, PNG, WebP, HEIF, and AVIF). It includes:

  • File Integrity Validation: Detect corrupted or invalid image files
  • Dimension Validation: Check image width and height constraints
  • File Size Validation: Verify file size in MB
  • Hybrid Detection: Intelligent image type detection using file signatures and extensions

Quick Start

import 'dart:io';
import 'package:image_validator/image_validator.dart';

final file = File('path/to/image.jpeg');
final detector = HybridDetector();
final imageType = detector.detect(file);

final factory = ImageValidatorFactory(
  jpeg: [JpegSizeValidator(maxSizeInMB: 10)],
);

final result = await factory.validate(type: imageType, file: file);
if (result.isValid) {
  print('Image is valid');
}

Classes

CorruptValidator
Detector
Abstract base class for image type detectors.
DimensionValidator
ImageDimensions
Image dimensions
ImageTypeDetector
ImageValidator
Abstract base class for image file validators.
ImageValidatorFactory
SizeValidator
ValidationResult
Result of an image validation operation.

Enums

DetectorType
ImageType
Enumeration of supported image types.