Kategorien, Pakete und Repositories suchen

Paketdetailsv1.2.1

blurhash_dart

Eine reine Dart-Implementierung des BlurHash-Algorithmus. Dieses Paket bietet sowohl einen Encoder als auch einen Decoder sowie einige nützliche Erweiterungen.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
113.000
Likes
135
Pub-Punkte
160

Paket installieren

flutter pub add blurhash_dart

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

BlurHash Dart ist eine reine Dart-Implementierung des BlurHash-Algorithmus, die eine effiziente Generierung und Decodierung kompakter Bildplatzhalter ermöglicht. Es bietet Encoder- und Decoder-Funktionen sowie nützliche Hilfsfunktionen für eine nahtlose Integration in Flutter-Anwendungen. Ideal zum Anzeigen von Low-Bandwidth-Vorschauen von Bildern während des Ladevorgangs, unterstützt alle wichtigen Plattformen wie Android, iOS, Web, macOS, Windows und Linux. Das Paket ist leichtgewichtig und ohne externe Abhängigkeiten für Leistung optimiert.

Anwendungsfälle

  • Bilderplatzhalter während des Ladens generieren
  • Erstellen von Vorschaubildern mit geringer Auflösung für große Bilder
  • Verbesserung der wahrgenommenen App-Leistung mit Platzhaltervisualisierungen
  • Integration von Blur-Effekten in Bildvorschaubilder
  • Optimierung des Bildladens in netzwerkintensiven Anwendungen

Hauptmerkmale

  • Reine Dart-Implementierung
  • Encoder und Decoder enthalten
  • Nützliche Erweiterungen für eine einfachere Nutzung
  • Plattformübergreifende Kompatibilität
  • Leicht und schnell
  • Keine nativen Abhängigkeiten

Geeignet für

  • Flutter-Entwickler, die Bildplatzhalter benötigen
  • Apps mit langsamer oder variabler Netzwerkbedingung
  • Leistungsorientierte UI-Implementierungen
  • Entwickler, die plattformspezifischen Code vermeiden
  • Projekte, die minimale Drittanbieter-Bibliotheken erfordern

Hinweise

  • Nicht geeignet für hochwertige Bildwiedergabe
  • Verständnis des BlurHash-Konzepts erforderlich
  • Beschränkt auf Platzhalter-Anwendungsfälle
  • Unterstützt möglicherweise keine erweiterten Bildverarbeitungsfunktionen
  • Am besten als visuelle Verbesserung, nicht als Ersatz für echte Bilder verwendet

Original-README

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

BlurHash Dart

A pure dart implementation of BlurHash. Supports both encoding and decoding. Runs on every supported Dart platform. See the BlurHash website or GitHub repository for more information.

The encoder of this dart implementation produces slightly different hashes than the TypeScript implementation but matches the official C and Python implementation. In practice this should not be relevant.

Basic usage

Decoding a BlurHash
import 'package:blurhash_dart/blurhash_dart.dart';
import 'package:image/image.dart' as img;

const hash = 'LEHV6nWB2yk8pyo0adR*.7kCMdnj';
BlurHash blurHash = BlurHash.decode(hash);
img.Image image = blurHash.toImage(35, 20);

// Display image...
Note: Usage with Flutter

Flutter does not expect raw bytes for its Image.memory widget, but fully encoded images with their corresponding headers (e.g. bitmap, jpg, png). The easiest way to accomplish this, is to use, for example, encodeJpg from package:image:

Widget build(BuildContext context) {
  final image = BlurHash.decode('LEHV6nWB2yk8pyo0adR*.7kCMdnj').toImage(35, 20);
  return Image.memory(Uint8List.fromList(encodeJpg(image)));
}

It is recommended to cache the resulting image in a stateful widget, such that it does not need to be recomputed on every build call.

Encoding an Image
import 'dart:io';

import 'package:blurhash_dart/blurhash_dart.dart';
import 'package:image/image.dart' as img;

final data = File('path/to/image.png').readAsBytesSync();
final image = img.decodeImage(data.toList());
final blurHash = BlurHash.encode(image!, numCompX: 4, numCompY: 3);

print(blurHash.hash);
Extension Methods

Additional extension methods to compute, for example color averages, are available when importing package:blurhash_dart/blurhash_extensions.dart. See example for basic usage.

Kategorien

Abhängigkeiten

Abhängigkeiten 1 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden