目次
ブレンドとは
CSS のブレンド
各種モードのブレンド計算方法
normal
multiply
screen
ハードライト
overlay
darken
軽くする
カラー覆い焼き
カラー焼き付け
ソフトライト
違い
除外
参考資料
ホームページ ウェブフロントエンド htmlチュートリアル 構成とブレンド (2)_html/css_WEB-ITnose

構成とブレンド (2)_html/css_WEB-ITnose

Jun 24, 2016 am 11:20 AM

前回の記事では、ソースイン、XOR などのいくつかの合成方法について説明しました。しかし、これらはすべてクロップに関連しています。次にブレンドを紹介します。

ブレンドとは

私の理解では、ブレンドは合成のステップであると考えています。前回の記事でいくつかの合成方法について説明しましたが、ブレンドとは 2 つの画像の色を混ぜることです。

最も典型的な例は、赤、青、緑の 3 つのボールが、これら 3 つの層をブレンドした結果であると想像できます。

Photoshop のブレンド モードは、Photoshop を使用したことのある人なら誰でもこの機能に精通しているはずです。

CSS のブレンド

CSS のブレンドの標準は、もともと Adob​​e によって提案されたドラフトでした。

CSS には、混合方法を制御する、isolation、mix-blend-mode、background-blend-mode の 3 つのプロパティがあります。

  • mix-blend-mode は、要素がその「下」の要素とどのように混合されるかを指定します

  • background-blend-mode は、background-image が背景色とどのように混合されるかを指定します

  • 分離要素を指定します ブレンドには関与しません

以下の Web サイトでは、CSS Blend を使用して多くの複雑なグラフィックを実装していますが、背景の 1 つの CSS コードはわずか 12 行であり、画像を読み込むよりもはるかに小さいです。

http://bennettfeely.com/gradients/

各種モードのブレンド計算方法

ブレンド属性には、暗くする、オーバーレイ、覆い焼きなど多くの値があります。最も一般的に使用されるのは乗算です。多くのデザイナーは「乗算」という用語を知っているはずですが、それが何をするのかを理解している人は多くありません。

ここで、さまざまな混合モードの計算方法について説明します。

Cs = ソースカラー = 前景色

Cb = 背景カラー = 背景色

B(Cb, Cs) = ブレンドモード

Cs と Cb は 1*3 行列 [R, G, B]マトリックスの各要素の値の範囲は 0 ~ 1 です。

normal

B(Cb, Cs) = Cs
ログイン後にコピー

Normal メソッドは、実際には Compose でのソース オーバー動作と同じであり、一般的な画像オーバーレイ メソッドでもあります。

multiply

B(Cb, Cs) = Cb x Cs
ログイン後にコピー

この式から、混合結果が前景と背景よりも暗いことがわかります。そして、前景と背景の白が削除されます。

screen

B(Cb, Cs) = 1 - [(1 - Cb) x (1 - Cs)]          = Cb + Cs -(Cb x Cs)
ログイン後にコピー

screen は乗算の正反対のように感じられ、生成された結果は背景や前景よりも明るくなります。

ハードライト

if(Cs <= 0.5)    B(Cb, Cs) = Multiply(Cb, 2 x Cs)else    B(Cb, Cs) = Screen(Cb, 2 x Cs -1)  
ログイン後にコピー
ログイン後にコピー

overlay

B(Cb, Cs) = HardLight(Cs, Cb)
ログイン後にコピー

ハードライトで背景と前景を反転するのがオーバーレイです

darken

B(Cb, Cs) = min(Cb, Cs)
ログイン後にコピー

背景と前景で最も暗いピクセルを選択します地面

軽くする

B(Cb, Cs) = max(Cb, Cs)
ログイン後にコピー

背景と前景で最も明るいピクセルを選択します

カラー覆い焼き

if(Cb == 0)    B(Cb, Cs) = 0else if(Cs == 1)    B(Cb, Cs) = 1else    B(Cb, Cs) = min(1, Cb / (1 - Cs))
ログイン後にコピー

カラー焼き付け

if(Cb == 1)    B(Cb, Cs) = 1else if(Cs == 0)    B(Cb, Cs) = 0else    B(Cb, Cs) = 1 - min(1, (1 - Cb) / Cs)
ログイン後にコピー

ハードライト

if(Cs <= 0.5)    B(Cb, Cs) = Multiply(Cb, 2 x Cs)else    B(Cb, Cs) = Screen(Cb, 2 x Cs -1)  
ログイン後にコピー
ログイン後にコピー

ソフトライト

りー

違い

りー

除外

    if(Cs <= 0.5)        B(Cb, Cs) = Cb - (1 - 2 x Cs) x Cb x (1 - Cb)    else        B(Cb, Cs) = Cb + (2 x Cs - 1) x (D(Cb) - Cb)with    if(Cb <= 0.25)        D(Cb) = ((16 * Cb - 12) x Cb + 4) x Cb    else        D(Cb) = sqrt(Cb)
ログイン後にコピー

参考資料

合成とブレンド レベル 1

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

&lt; Progress&gt;の目的は何ですか 要素? &lt; Progress&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:34 PM

この記事では、HTML&lt; Progress&gt;について説明します。要素、その目的、スタイリング、および&lt; meter&gt;との違い要素。主な焦点は、&lt; Progress&gt;を使用することです。タスクの完了と&lt; Meter&gt; statiの場合

&lt; datalist&gt;の目的は何ですか 要素? &lt; datalist&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:33 PM

この記事では、HTML&lt; Datalist&GT;について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

&lt; meter&gt;の目的は何ですか 要素? &lt; meter&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:35 PM

この記事では、html&lt; meter&gt;について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化&lt; Meter&gt; &lt; Progress&gt;およびex

HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? Mar 17, 2025 pm 12:20 PM

記事では、HTML5クロスブラウザーの互換性を確保するためのベストプラクティスについて説明し、機能検出、プログレッシブエンハンスメント、およびテスト方法に焦点を当てています。

HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? Mar 17, 2025 pm 12:27 PM

この記事では、ブラウザのユーザー入力を直接検証するために、必要、パターン、MIN、MAX、および長さの制限などのHTML5フォーム検証属性を使用して説明します。

ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? Mar 20, 2025 pm 05:56 PM

この記事では、モバイルデバイスのレスポンシブWebデザインに不可欠なViewportメタタグについて説明します。適切な使用により、最適なコンテンツのスケーリングとユーザーの相互作用が保証され、誤用が設計とアクセシビリティの問題につながる可能性があることを説明しています。

&lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? &lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? Mar 20, 2025 pm 06:05 PM

この記事では、&lt; iframe&gt;外部コンテンツをWebページ、その一般的な用途、セキュリティリスク、およびオブジェクトタグやAPIなどの代替案に埋め込む際のタグの目的。

Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Apr 04, 2025 pm 11:54 PM

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

See all articles