FLUTTER ECOSYSTEM

TesteurManiak/icon_decoration

Icon ウィジェットに影、ボーダー、グラデーションなどの装飾機能を追加します。

アイコン装飾 のプロジェクト画像
Stars
25
Forks
3
最終プッシュ(UTC)
2026/02/03
プロジェクト状態
公開中
Guillaume Roux GitHub avatar
GITHUB User

Guillaume Roux ↗

Flutter Software Engineer, co-organizer of Flutter Lyon

Veson NauticalLyon, France公式サイト ↗
言語DartHTML

技術トピック

このリポジトリが公開するパッケージ

使用している依存関係

依存関係一覧 5 件
  • flutter{"sdk":"flutter"}
  • alchemist開発用{"git":{"url":"https://github.com/Betterment/alchemist.git","ref":"ab1f2eb49584339be119eaec28a5562f6b325cbc"}}
  • fd_lints開発用^2.3.0
  • flutter_test開発用{"sdk":"flutter"}
  • meta開発用^1.15.0

元の README

以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。

README を開く / 閉じる

icon_decoration

Pub Version Test workflow Coverage Status

Add decoration capabilities to the Icon widget with borders and gradients. This new DecoratedIcon widget overlap itself with the base Icon widget to provide a more complete decoration system through a IconDecoration property.

Table of contents

Add to your project

Add dependency to your pubspec.yaml
icon_decoration: any
Import the package
import 'package:icon_decoration/icon_decoration.dart';

How to use

Add borders to icons
https://raw.githubusercontent.com/TesteurManiak/icon_decoration/refs/heads/main/screenshots/border_with_colorized_icon.png
DecoratedIcon(
    icon: Icon(Icons.favorite, color: Colors.green),
    decoration: IconDecoration(border: IconBorder()),
)
Add gradients to icons

Gradients are supported on Flutter Web only with the canvaskit renderer

https://raw.githubusercontent.com/TesteurManiak/icon_decoration/refs/heads/main/screenshots/base_gradient.png
DecoratedIcon(
    icon: Icon(Icons.all_inbox),
    decoration: IconDecoration(
        gradient: rainbowGradient,
    ),
)
Mix them all together
https://raw.githubusercontent.com/TesteurManiak/icon_decoration/refs/heads/main/screenshots/gradient_with_border_and_shadow.png
DecoratedIcon(
    icon: Icon(
        Icons.all_inbox,
        shadows: [
            Shadow(
                color: Colors.red,
                blurRadius: 3,
                offset: Offset(0, 2),
            ),
        ],
    ),
    decoration: IconDecoration(
        gradient: _rainbowGradient,
        border: IconBorder(),
    ),
)

Migration Guide

v2.0.0
  • Removed IconDecoration.shadows, use Icon.shadows instead.

Before

DecoratedIcon(
    icon: Icon(Icons.all_inbox),
    decoration: IconDecoration(
        shadows: [
            Shadow(
                color: Colors.red,
                blurRadius: 3,
                offset: Offset(0, 2),
            ),
        ],
    ),
)

After

Icon(
    Icons.all_inbox,
    shadows: [
        Shadow(
            color: Colors.red,
            blurRadius: 3,
            offset: Offset(0, 2),
        ),
    ],
),