Pakete, Repositories und App-Kategorien suchen

Paketdetailsv3.1.0

flutter_avif

Ein Flutter-Plugin zum Anzeigen und Codieren von AVIF-Bildern mit libavif.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
9550
Likes
52
Pub-Punkte
140

Paket installieren

flutter pub add flutter_avif

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

flutter_avif ist ein Flutter-Plugin, das die Anzeige und Codierung von AVIF-Bildern mithilfe der libavif-Bibliothek ermöglicht. Es unterstützt mehrere Plattformen wie Android, iOS, Web, macOS, Windows und Linux. Das Plugin ermöglicht Entwicklern die Integration einer hochwirksamen AVIF-Bildverarbeitung in ihre Apps, wobei im Vergleich zu traditionellen Formaten wie JPEG oder PNG eine bessere Kompression und Bildqualität geboten wird. Es bietet eine einfache API zum Dekodieren und Codieren von AVIF-Dateien innerhalb von Flutter-Anwendungen.

Anwendungsfälle

  • Anzeigen von AVIF-Bildern in Flutter-Apps
  • Bilder in AVIF-Format konvertieren
  • Optimierung von App-Bildressourcen
  • Unterstützung moderner Bildformate auf allen Plattformen
  • AVIF in medienintensive Anwendungen integrieren

Hauptmerkmale

  • Unterstützt AVIF-Decodierung und -Codierung
  • Plattformübergreifende Kompatibilität
  • Verwendet libavif für effiziente Verarbeitung
  • Einfache Integration mit Flutter
  • Hohe Kompression mit hervorragender Bildqualität

Geeignet für

  • Apps, die eine effiziente Bildspeicherung erfordern
  • Entwickler, die moderne Bildformate ansprechen
  • Projekte, die sich auf Leistung und Bandbreitensparung konzentrieren
  • bildintensive Anwendungen wie Galerien oder soziale Medien
  • Teams, die cross-platform-Anwendungen mit erweitertem Bildsupport erstellen

Hinweise

  • Die AVIF-Unterstützung kann sich geringfügig von Plattform zu Plattform unterscheiden
  • Benötigt native Abhängigkeiten über libavif
  • Nicht geeignet für veraltete Systeme ohne AVIF-Unterstützung
  • Eingeschränkte Browserunterstützung in älteren Web-Umgebungen
  • Mögliche Build-Komplexität auf einigen Plattformen

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

flutter_avif

A flutter plugin to view and encode avif images.

Installation

To add the flutter_avif to your Flutter application follow the installation instructions on pub.dev.

Usage

AvifImage widget has a similar api as Flutter Image widget.

import 'package:flutter_avif/flutter_avif.dart';

AvifImage.file(
    file,
    height: 200,
    fit: BoxFit.contain,
),

AvifImage.asset(
    "test.avif",
    height: 200,
    fit: BoxFit.contain,
),

AvifImage.network(
    "https://test.com/test.avif",
    height: 200,
    fit: BoxFit.contain,
),

For documentation on widget properties, please refer to https://api.flutter.dev/flutter/widgets/Image-class.html.

The package also provides CachedNetworkAvifImage for caching network images.

import 'package:flutter_avif/flutter_avif.dart';

CachedNetworkAvifImage(
    "https://test.com/test.avif",
    height: 200,
    fit: BoxFit.contain,
)

Encoding

To convert an image to avif:

import 'package:flutter_avif/flutter_avif.dart';

final asset = await rootBundle.load("asset.gif");
final avifBytes = await encodeAvif(asset.buffer.asUint8List());
final outputFile = File('output.avif');
outputFile.writeAsBytes(avifBytes);
import 'package:flutter_avif/flutter_avif.dart';

final inputFile = File('input.png');
final inputBytes = await inputFile.readAsBytes();
final avifBytes = await encodeAvif(inputBytes);
final outputFile = File('output.avif');
outputFile.writeAsBytes(avifBytes);

Decoding

decodeAvif function can be used to decode an avif file to a list of dart:ui Image:

import 'package:flutter_avif/flutter_avif.dart';

final bytes = await rootBundle.load('asset.avif');
final frames = await decodeAvif(bytes.buffer.asUint8List());

decodeAvif functions return a list of AvifFrameInfo which has the duration and the image of a frame.

Custom Animation Controller

AvifAnimation can be used together with an AnimationController to manipulate the playback of multiframe images.

import 'package:flutter_avif/flutter_avif.dart';

AnimationController controller = AnimationController(vsync: this);

AvifAnimation(
    controller: controller,
    image: const AssetAvifImage('multiframe.avif'),
    onLoaded: (duration, fps) {
        controller.forward(); // play the animation
    },
),

Kategorien

Abhängigkeiten

Abhängigkeiten 10 Einträge

  • exif^3.3.0
  • flutter_avif_android^3.1.0
  • flutter_avif_ios^3.1.0
  • flutter_avif_linux^3.1.0
  • flutter_avif_macos^3.1.0
  • flutter_avif_platform_interface^3.1.0
  • flutter_avif_web^3.1.0
  • flutter_avif_windows^3.1.0
  • flutter_cache_manager^3.4.1
  • http^1.2.2

Quell-Repository

Projekte, die dieses Paket verwenden