パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v0.0.5

visual_effect

Flutter用のVisualEffect API。ウィジェットにペイント効果を簡単に追加できます。

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
329
いいね数
72
Pub ポイント
140

パッケージをインストール

flutter pub add visual_effect

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

VisualEffect は、ウィジェットにペイント効果を簡単に適用できるようにする Flutter パッケージです。開発者が最小限のコードで視覚的な魅力を高められるようにします。ブラー、シャドウ、カラーフィルターなどの効果を UI 要素に直接追加するための直感的な API を提供しています。複数プラットフォーム間でのスムーズな統合を目的としており、Android、iOS、Web、macOS、Windows、Linux をすべてサポートしています。豊かな視覚フィードバックを持つダイナミックなインターフェースを作成するのに最適であり、現代的なアプリデザインにおいて繊細または劇的なグラフィカルな強調が必要な場合に特に役立ちます。

用途

  • 背景にぼかし効果を追加する
  • 発光または影付きテキストの作成
  • ダイナミックペイント効果でボタンを強化する
  • 没入型スプラッシュ画面のデザイン
  • アニメーションオーバーレイの実装
  • 画像にカラーフィルターを適用する

主な機能

  • ペイントエフェクト用のシンプルな API
  • クロスプラットフォーム互換性
  • ぼかし、影、色フィルターをサポート
  • 既存のウィジェットとの簡単な統合
  • 高パフォーマンスレンダリング
  • リアルタイム効果の調整

適している対象

  • 視覚的な洗練を求めるUIデザイナー
  • 現代的なアプリケーションインターフェースを構築する開発者
  • アニメーションまたはインタラクティブなビジュアルを必要とするアプリ
  • 複数のプラットフォームをターゲットにするプロジェクト
  • 視覚的に豊かなコンポーネントのプロトタイピング

注意事項

  • 低性能デバイスでのパフォーマンスに影響を与える可能性があります
  • ペイント操作の理解が必要です
  • 視覚効果に限定され、レイアウトの変更は含まれない
  • 複雑なアニメーションには適していません
  • 効果の品質は、プラットフォームによって異なる場合があります

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

visual_effect

VisualEffect API for Flutter to easily add paint effects on your widgets.

Warning This package is experimental for the moment. The API can change at any time.

Scroll Effect

The main purpose of this API is to provide an easy and efficiently way to apply scroll animations.

Warning The addRepaintBoundaries MUST be set to false in the parent Sliver/ScrollView because we explicitely want in that case to repaint for every single scroll so we can add the effect.

For example this Card Stack effect can be obtained with the code below:

Card Stack

class _ScrolledItem extends StatelessWidget {
  const _ScrolledItem();

  @override
  Widget build(BuildContext context) {
    return ScrollEffect(
      onGenerateVisualEffect: (effect, phase) {
        return effect
            .grayscale(phase.leadingLerp(to: 0.5))
            .scale(
              x: phase.isLeading ? phase.leadingLerp(from: 1, to: 0.9) : 1,
              anchor: Alignment.topCenter,
            )
            .translate(y: effect.childSize.height * phase.leading);
      },
      child: const _CardItem(),
    );
  }
}

カテゴリー

依存関係

依存関係一覧 2 件

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。