Skip to content

ガイド

概要

Vue Colorpicker は以下の機能を提供する強力なカラー選択コンポーネントです:

  • 3つのCSS背景色モード:solid(単色)、linear-gradient(線形グラデーション)、radial-gradient(放射状グラデーション)
  • アルファチャンネル制御を含む完全なHSV色空間サポート
  • ドラッグ&ドロップによるグラデーションストップの対話的な制御
  • スポイトツール機能内蔵(Chrome 95+以降対応)
  • リアルタイムプレビューとCSS出力
  • 3つのサイズオプションを備えたレスポンシブデザイン

screenshot01screenshot02screenshot03

インストール

bash
npm i @mcistudio/vue-colorpicker

使用方法

グローバル登録

javascript
import ColorPicker from "@mcistudio/vue-colorpicker";
import "@mcistudio/vue-colorpicker/dist/style.css";

createApp(App).use(ColorPicker).mount("#app");

ローカル登録

vue
<script setup>
import ColorPicker from "@mcistudio/vue-colorpicker";
import "@mcistudio/vue-colorpicker/dist/style.css";
</script>

<template>
  <ColorPicker v-model="color"></ColorPicker>
</template>

プロパティ

プロパティ名説明使用可能な値デフォルト値必須
v-modelカラー値オブジェクトObject下記v-modelフォーマットを参照-いいえ
modebarモードバーの表示String'show'、'none''show'いいえ
sizeコンポーネントサイズString'small'、'medium'、'large''medium'いいえ

v-modelフォーマット

プロパティ説明使用可能な値デフォルト値必須
modeカラーモードString'solid'、'linear'、'radial''solid'いいえ
colorRGBAカラーオブジェクト(単色モード)Object{ r, g, b, a }{ r: 0, g: 0, b: 0, a: 1 }いいえ
hex16進数カラー値(単色モード、読み取り専用)String--いいえ
degreeグラデーション角度(線形モード)Number0-36090いいえ
gradientsグラデーションストップ配列Arrayグラデーションストップオブジェクトの配列[{ percent: 0, color: { r: 255, g: 255, b: 255, a: 1 }}, { percent: 100, color: { r: 0, g: 0, b: 0, a: 1 }}]いいえ

イベント

イベント名説明パラメータ
colorChanged色が変更された時カラー値オブジェクト

戻り値の例

単色モード

json
{
  "mode": "solid",
  "color": {
    "r": 0,
    "g": 0,
    "b": 0,
    "a": 1
  },
  "hex": "#000000",
  "css": "background-color:rgba(0,0,0,1)"
}

線形グラデーションモード

json
{
  "mode": "linear",
  "degree": 90,
  "gradients": [
    {
      "percent": 0,
      "color": {
        "r": 255,
        "g": 255,
        "b": 255,
        "a": 1
      }
    },
    {
      "percent": 100,
      "color": {
        "r": 0,
        "g": 0,
        "b": 0,
        "a": 1
      }
    }
  ],
  "css": "background-image:linear-gradient(90deg,rgba(255,255,255,1) 0%,rgba(0,0,0,1) 100%)"
}

放射状グラデーションモード

json
{
  "mode": "radial",
  "gradients": [
    {
      "percent": 0,
      "color": {
        "r": 255,
        "g": 255,
        "b": 255,
        "a": 1
      }
    },
    {
      "percent": 100,
      "color": {
        "r": 0,
        "g": 0,
        "b": 0,
        "a": 1
      }
    }
  ],
  "css": "background-image:radial-gradient(rgba(255,255,255,1) 0%,rgba(0,0,0,1) 100%)"
}

Released under the MIT License.