Pakete, Repositories und App-Kategorien suchen

Cover von lindi_sticker_widget
Paketdetailsv1.1.0

lindi_sticker_widget

Lindi Sticker Widget ist ein Flutter-Plugin zum Drehen, Rotieren, Größenändern, Verschieben, Löschen und Bearbeiten beliebiger Widgets.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
1560
Likes
54
Pub-Punkte
150

Paket installieren

flutter pub add lindi_sticker_widget

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Lindi Sticker Widget ist ein Flutter-Plugin, das die interaktive Manipulation jedes Widgets ermöglicht, wodurch Benutzer Widgets dynamisch drehen, rotieren, skalieren, verschieben, löschen und bearbeiten können. Durch die intuitive Benutzerinteraktion wird die Flexibilität der Benutzeroberfläche erhöht, indem Widgets in ziehbare, veränderbare Elemente umgewandelt werden. Ideal für Anwendungen mit dynamischer Inhaltsplatzierung wie digitale Whiteboards, Design-Tools oder interaktive Lern-Apps. Das Plugin unterstützt mehrere Plattformen wie Android, iOS, Web, macOS, Windows und Linux und gewährleistet eine konsistente Darstellung über Plattformen hinweg.

Anwendungsfälle

  • Interaktive Whiteboard-Anwendungen
  • Digitale Design- und Anmerkungswerkzeuge
  • Bildungsaufgaben mit beweglichen Elementen
  • Benutzererzeugte-Inhalts-Schnittstellen
  • Kooperations-Editierplattformen

Hauptmerkmale

  • Widget-Bewegung durch Ziehen und Ablegen
  • Echtzeit-Drehung und Skalierung
  • Widget-Inhalt drehen und bearbeiten
  • Widgets interaktiv löschen oder entfernen
  • Plattformübergreifende Unterstützung für alle wichtigen Betriebssysteme

Geeignet für

  • Entwickler interaktiver Benutzeroberflächen
  • Design-Tool-Ersteller
  • Entwickler von Bildungsanwendungen
  • Kollaborative Anwendungsbauer
  • UI-Prototyping-Enthusiasten

Hinweise

  • Kann eine Leistungsoptimierung für komplexe Layouts erfordern
  • Beschränkte Dokumentation verfügbar
  • Mögliche Komplexität bei der Zustandsverwaltung für viele Widgets
  • Nicht ideal für statische oder schreibgeschützte Schnittstellen
  • Erfordert sorgfältige Behandlung von Gestenkonflikten

Original-README

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

lindi_sticker_widget

Features

  Rotate
  Resize
  Move
  Layer Update (Change Stack position)
  Edit
  Delete
  Flip
  Lock

Getting started

pub package

Add this to dependencies in your app's pubspec.yaml

lindi_sticker_widget : latest_version

Usage

Sample code to integrate can be found in example/lib/main.dart.

LindiController

Customize the controller as you like!

LindiController controller = LindiController(
  borderColor: Colors.white,
  icons: [
    LindiStickerIcon(
        icon: Icons.done,
        alignment: Alignment.topRight,
        onTap: () {
          controller.selectedWidget!.done();
        }),
    LindiStickerIcon(
        icon: Icons.lock_open,
        lockedIcon: Icons.lock,
        alignment: Alignment.topCenter,
        type: IconType.lock,
        onTap: () {
          controller.selectedWidget!.lock();
        }),
    LindiStickerIcon(
        icon: Icons.close,
        alignment: Alignment.topLeft,
        onTap: () {
          controller.selectedWidget!.delete();
        }),
    LindiStickerIcon(
        icon: Icons.edit,
        alignment: Alignment.centerLeft,
        onTap: () {
          controller.selectedWidget!
              .edit(const Icon(Icons.star, size: 50, color: Colors.yellow));
        }),
    LindiStickerIcon(
        icon: Icons.layers,
        alignment: Alignment.centerRight,
        onTap: () {
          controller.selectedWidget!.stack();
        }),
    LindiStickerIcon(
        icon: Icons.flip,
        alignment: Alignment.bottomLeft,
        onTap: () {
          controller.selectedWidget!.flip();
        }),
    LindiStickerIcon(
        icon: Icons.crop_free,
        alignment: Alignment.bottomRight,
        type: IconType.resize
    ),
  ],
);
Integrate LindiStickerWidget
LindiStickerWidget(
    controller: controller,
    child: SizedBox(
        width: double.infinity,
        height: double.infinity,
        child: Image.network('https://picsum.photos/200/300', fit: BoxFit.cover)
    ),
)
Add Widget to LindiStickerWidget
controller.add(
    Text('Hello World')
);
Get index of selected widget
controller.onPositionChange((index) {
  print("widgets size: ${controller.widgets.length}, current index: $index");
});
Save LindiStickerWidget as Uint8List
Uint8List? image = await controller.saveAsUint8List();

Screenshots

Image Image

:heart: Found this project useful?

If you found this project useful, then please consider giving it a :star: on Github and sharing it with your friends via social media.

Kategorien

Abhängigkeiten

Abhängigkeiten 1 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.