Pakete, Repositories und App-Kategorien suchen

Cover von image_picker_web
Paketdetailsv4.0.0

image_picker_web

Flutter Web-Plugin zum Auswählen von Bildern (als Widget, File oder Uint8List) und Videos (als File oder Uint8List)

Web
30-Tage-Downloads
18.100
Likes
160
Pub-Punkte
140

Paket installieren

flutter pub add image_picker_web

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Ein Flutter-Web-Plugin, das Benutzern ermöglicht, Bilder und Videos direkt aus dem Webbrowser auszuwählen. Es bietet flexible Ausgabemöglichkeiten und gibt ausgewählte Medien als Widget, File oder Uint8List zurück, um eine nahtlose Integration in Web-Anwendungen zu gewährleisten. Speziell für Web-Plattformen entwickelt, verbessert es die Benutzererfahrung durch native Dateiauswahl mit minimalem Setup. Das Plugin wird von einem Community-Beitragenden gepflegt und unterstützt moderne Web-Standards. Ideal für Anwendungen, die Media-Uploads oder Vorschauen in Browser-Umgebungen erfordern.

Anwendungsfälle

  • Webbasierte Foto-Upload-Formulare
  • Videowahl für die Inhaltserstellung
  • Medienvorschau vor dem Hochladen
  • Benutzerprofilbild-Anpassung
  • Interaktive Web-Galerien

Hauptmerkmale

  • Unterstützt Bild- und Videowahl
  • Gibt Medien als File oder Uint8List zurück
  • Bietet Widget-Vorschau-Option
  • Für Web-Plattform optimiert
  • Einfache Integration mit Flutter Web

Geeignet für

  • Flutter-Entwickler, die Web-Anwendungen erstellen
  • Apps, die browserbasierte Medieneingabe benötigen
  • Projekte, die leichte Medienauswahl benötigen
  • Nur im Web verfügbare Anwendungen mit Medienworkflows
  • Entwickler, die Konsistenz über Plattformen hinweg suchen

Hinweise

  • Nur für Web-Plattform begrenzt
  • Benötigt Browserberechtigung für Dateizugriff
  • Unterstützt keine Kamerabildaufnahme im Web nicht
  • Kann sich in verschiedenen Browsern unterschiedlich verhalten
  • Abhängig von externem GitHub-Repository für Updates

Original-README

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

ImagePickerWeb

Issues Stars Pub Version Flutter Web CI

This Web-Plugin allows Flutter Web to pick images (as File, Widget or Uint8List) and videos (as File or Uint8List). Many thanks goes to AlvaroVasconcelos for the implementation of picking images in his plugin: flutter_web_image_picker

ExampleGif

Disclaimer for Videos
  • Till now [Mar. 2020] it's not possible (due to security reasons) to play a local video file (see also video_player_web). But you can retreive the file and upload them somewhere and play it as a network source.

Getting Started

Add image_picker_web to your pubspec.yaml:

image_picker_web: any

Picking Images

Pick an image

Load image as Image.memory Widget:

Image? fromPicker = await ImagePickerWeb.getImageAsWidget();

Load image as bytes:

Uint8List? bytesFromPicker = await ImagePickerWeb.getImageAsBytes();

Load image as and html.File object :

html.File? imageFile = (await ImagePickerWeb.getMultiImagesAsFile())?[0];
Pick multiple images

Load images as a List<Image> :

List<Image>? fromPicker = await ImagePickerWeb.getMultiImagesAsWidget();

Load images as bytes :

List<Uint8List>? bytesFromPicker = await ImagePickerWeb.getMultiImagesAsBytes();

Load images as List<html.File> objects :

List<html.File> imageFiles = await ImagePickerWeb.getMultiImagesAsFile();

How do I get all Informations out of my Image/Video (e.g. Image AND File in one run)?

Besides the standard getImage() or getVideo() methods you can use the getters:

  • getImageInfo or
  • getVideoInfo to acheive this.

Full Example

import 'dart:html' as html;
 
import 'package:mime_type/mime_type.dart';
import 'package:path/path.dart' as Path;
import 'package:image_picker_web/image_picker_web.dart';
import 'package:flutter/material.dart';

 html.File _cloudFile;
 var _fileBytes;
 Image _imageWidget;
 
 Future<void> getMultipleImageInfos() async {
    var mediaData = await ImagePickerWeb.getImageInfo;
    String mimeType = mime(Path.basename(mediaData.fileName));
    html.File mediaFile =
        new html.File(mediaData.data, mediaData.fileName, {'type': mimeType});

    if (mediaFile != null) {
      setState(() {
        _cloudFile = mediaFile;
        _fileBytes = mediaData.data;
        _imageWidget = Image.memory(mediaData.data);
      });
    }
  }

With getMultipleImageInfos() you can get all three available types in one call.

Picking Videos

To load a video as html.File do:

html.File? videoFile = await ImagePickerWeb.getVideoAsFile();

To load a video as Uint8List do:

Uint8List? videoData = await ImagePickerWeb.getVideoAsBytes();

Reminder: Don't use Uint8List retreivement for big video files! Flutter can't handle that. Pick bigger sized videos and high-resolution videos as html.File !

After you uploaded your video somewhere hosted, you can retreive the network url to play it.

MediaInfos
  • The methods getVideoInfo and getImageInfo are also available and you can use them to retreive further informations about your picked source.
Pick multiple images

Load videos as bytes:

List<Uint8List>? videos = ImagePickerWeb.getMultiVideosAsBytes();

Load videos as List<html.File> objects :

List<html.File>? videoFiles = await ImagePickerWeb.getMultiVideosAsFile();

Migration Guide

From 3.0.0 to 4.0.0
  • The WebImagePicker class has been removed. Use methods from ImagePickerWeb class instead.
  • getImageInfo and getVideoInfo are now methods and not getters. Use them like ImagePickerWeb.getImageInfo() and ImagePickerWeb.getVideoInfo().

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden