始める
デザイン要素と構成
Eコマース製品の動的着色

Eコマース製品の動的着色

このガイドでは、imgixを使用してSVGやCSSに頼らずにHTMLの<img>要素内の任意の製品の色を動的に更新する方法を説明します。

動的着色は、画像ライブラリの柔軟性とスケーラビリティを大幅に向上させることができます。従来、異なる色の製品を複数持つには、すべての可能なバリエーションを個別に保存し、それぞれを個別に読み込む必要がありましたが、これは非現実的であり、スケーラビリティを妨げることがあります。動的着色を使用することで、ページのパフォーマンスに影響を与えたり、フロントエンドのコードを追加することなく、画像の色を即座に変更できます。このガイドでは、imgixを使用して動的着色を実現する方法を説明します。

前提条件

始める前に、以下のものを準備してください:

  • imgixアカウント
  • 画像ライブラリへのアクセス
  • HTMLとimgixパラメータの基本的な理解

実装

ステップ1: ベースレイヤーの準備

まず、ベースレイヤー画像を作成します。これは動的着色なしで表示されるデフォルトの画像です。この画像が単独でも良好に見えるようにしてください。これはまた、フォールバックとしても機能します。

ベースレイヤー画像

ステップ2: ペイントレイヤーの作成

次に、ペイントレイヤーと呼ばれる2番目の画像を作成します。この画像は透明な背景を持つpngファイルで、ベースレイヤーの寸法と一致する必要があります。ペイントレイヤーには、動的に色を変更したい部分のみを含めます。

ペイントレイヤー画像

ステップ3: ペイントレイヤーに色を適用

次に、imgix APIパラメータを使用してペイントレイヤーに色を適用します。ここで重要なパラメータは次のとおりです:

  • w: 画像の幅
  • bri: 明るさレベルの調整
  • con: コントラストの調整
  • monochrome: 動的な16進数カラーを画像に適用
w=1600&bri=3&con=14&monochrome=28E398
sandbox-demo

この例では、明るい緑色の#28E398を使用しています。これを任意の16進数値に置き換えることで色を変更できます。追加のパラメータは必要ありませんが、briおよびconを使用して靴の明るさとコントラストを調整し、画像の幅(w)を設定することで、このレイヤーをさらにカスタマイズしました。

このペイントレイヤーをベース画像の上にレイヤーするには、まずペイントレイヤーのURLをエンコードする必要があります: https%3A%2F%2Fix-marketing.imgix.net%2FQ3-24-sneaker-paint-layer.png%3Fw%3D1800%26bri%3D3%26con%3D14%26monochrome%3D28E398

ステップ4: imgixの透かしパラメータを使用してレイヤーをスタック

最後に、imgixの透かしパラメータを使用してペイントレイヤーをベースレイヤーの上にスタックします。これにより、両方のレイヤーを1つの画像に結合できます。以下のパラメータを使用する必要があります:

  • w: 両方のレイヤーの幅を一致させる
  • mark-align: ペイントレイヤーをベースレイヤーの上に配置
  • mark: 変換を適用したペイントレイヤーのエンコードURL
w=1800&mark-align=center,middle&mark=https://ix-marketing.imgix.net/Q3-24-sneaker-paint-layer.png?w=1800&bri=3&con=14&monochrome=28E398
sandbox-demo

動的カラーの例

ここでは、ペイントレイヤーに異なるHexを適用したいくつかの例を示します:

オリジナル
sandbox-demo
Hex #28E398
sandbox-demo
Hex #0097FC
sandbox-demo
Hex #E930D5
sandbox-demo

結論

imgixを使用することで、パフォーマンスを損なうことなく、またフロントエンドのコードを追加することなく、異なる色の画像を動的に提供できます。ベースレイヤーとペイントレイヤーの組み合わせと、watermarkおよびmonochromeの機能を使用することで、任意の製品画像に動的な着色を簡単に実装できます。