ホームページ ウェブフロントエンド CSSチュートリアル CSS3 を使用してグレースケール フィルターを記述し、白黒の写真効果を作成する方法の紹介

CSS3 を使用してグレースケール フィルターを記述し、白黒の写真効果を作成する方法の紹介

Mar 13, 2017 pm 05:55 PM

この記事では、CSS3 を使用して白黒写真効果を作成するためのグレースケール フィルターを作成する方法を主に紹介します。この記事では、IE と互換性のある方法も紹介します。

CSS3 フィルター機能を使用すると、PhotoShop を使用したり、大量の JavaScript や PHP コードを使用したりせずに、画像を簡単かつ便利に処理できます。この属性は、新しい Firefox、Safari、Chrome ブラウザですでにサポートされており、包括的な代替テクノロジ (IE ブラウザも含む) を通じてこの効果をシミュレートできます。

この記事では、Lena Söderberg の標準テスト画像 (翻訳者注: Lena の美しい写真が画像圧縮の標準テスト画像として使用されています) をデモンストレーションとして使用し、CSS を使用して白黒画像に変換します。以下では、CSS のこの機能を使用して色相、ぼかし、明るさ、コントラスト、その他の効果を調整する方法を説明します。レンダリング:
CSS3 を使用してグレースケール フィルターを記述し、白黒の写真効果を作成する方法の紹介

CSS3 グレースケール フィルター

CSS3 を使用して画像の色を薄めるのは、これまで以上に簡単です。この CSS ステートメントをクラスとして記述することができるため、目的の効果を持つ画像が見つかったときにクラスを直接追加できます。

img.desaturate { filter: grayscale(100%); }
ログイン後にコピー


もちろん、現在のブラウザが CSS3 を使用する場合、ブラウザ機能に独自の実験的なプレフィックスを追加する必要があるため、最初に行う必要があるのはブラウザのプレフィックスを記述することです:

img.desaturate { filter: grayscale(100%);   
-webkit-filter: grayscale(100%);   
-moz-filter: grayscale(100%);   
-ms-filter: grayscale(100%);   
-o-filter: grayscale(100%);   
}
ログイン後にコピー


特定の写真に使用したい場合は、非常に簡単です。クラスを追加するだけです:

<img src=lena-söderberg.png alt="Lena Söderberg" style=width:512px;height:512px class=desaturate>
ログイン後にコピー


それだけです。 ## SVG フィルター効果を追加します。この機能は現在 Chrome 18 以降でのみ利用可能ですが、他のブラウザでも間もなくサポートが追加される予定です。 Firefox 4 以降で同じ効果を得るには、SVG フィルターを使用する必要がある場合があります。次のコードを含む新しい別のファイル saturate.svg を作成しました:

<svg version="1.1" xmlns="http://www.w3.org/2000/svg">   
<filter id="greyscale">   
<feColorMatrix type="matrix" values="0.3333 0.3333 0.3333 0 0
0.3333 0.3333 0.3333 0 0
0.3333 0.3333 0.3333 0 0
0  0  0  1 0"/>   
</filter>   
</svg>
ログイン後にコピー




この SVG コードに怖気づく必要はありません - ただし、上記の行列シーケンスは少し複雑です。このコードをコピーして、一般的な「小さなファイル」に直接貼り付けることをお勧めします。上記のマトリックスの変更については、別の記事で詳しく紹介するので、ここでは詳しく説明しません。 上記の SVG ファイル参照を追加すると、HTML ページに挿入する CSS コードは次のとおりです:

img.desaturate{   
filter: grayscale(100%);   
-webkit-filter: grayscale(100%); -moz-filter: grayscale(100%);   
-ms-filter: grayscale(100%); -o-filter: grayscale(100%);   
filter: url(desaturate.svg#greyscale);   
}
ログイン後にコピー


IE との互換性:

これで、私たちのコードは将来のブラウザーおよび最新バージョンと互換性が得られます。 Chrome、Firefox 4 以降。 IE 6 ~ 9 を互換性リストに追加するには、Microsoft の使いにくいが効果的なフィルターを使用する必要があります:

img.desaturate{   
filter: grayscale(100%);   
-webkit-filter: grayscale(100%); -moz-filter: grayscale(100%);   
-ms-filter: grayscale(100%); -o-filter: grayscale(100%);   
filter: url(desaturate.svg#greyscale);   
filter: gray;   
}
ログイン後にコピー


それでも古いバージョンの Webkit カーネル ブラウザと互換性を持たせたい場合:

img.desaturate{   
filter: grayscale(100%);   
-webkit-filter: grayscale(100%); -moz-filter: grayscale(100%);   
-ms-filter: grayscale(100%); -o-filter: grayscale(100%);   
filter: url(desaturate.svg#greyscale);   
filter: gray;   
-webkit-filter: grayscale(1);   
}
ログイン後にコピー



すべてのブラウザでこの視覚効果を実現したい場合は (訪問者が JavaScript をサポートしていると仮定して)、jQuery または Greyscale.js を使用して画像を変更し、色を消すことができます。

上で書いた CSS コードを使用すると、PhotoShop を使用せずに画像を白黒に変えることができます。 CSS を使用してこの機能を実装すると、変更が非常に簡単になります。たとえば、脱色パラメータを 100% から 50% に変更すると、画像に原色と白黒のブレンドの効果が現れることがわかります。

その他の効果:

さらに、白黒写真に他のフィルター効果を追加できます:

-webkit-filter:blur(5px);  //模糊,此处为5像素   

-webkit-filter:sepia(0.5);  //叠加褐色,取值范围0-1,此处表示50%的褐色   

-webkit-filter:brightness(0.5);  //亮度,取值范围0-1,5倍亮度(数字为0时为正常样式,为1时表示的是100%亮度,无法看到图片)   

-webkit-filter:hue-rotate(30deg); //色相(按照色相环进行旋转,顺时针方向,红-橙-黄-黄绿-绿-蓝绿-蓝-蓝紫-紫-紫红-红)此处为叠加黄色滤镜   

-webkit-filter:invert(1);  //反色,取值范围0-1,0为原图,1为彻底反色之后,0.5为灰色   

-webkit-filter:saturate(4);  //饱和度,取值范围0~*,0为无饱和度,1为原图,值越高饱和度越大   

-webkit-filter:contrast(2);  //对比度,取值范围0~*,0为无对比度(灰色),1为原图,值越高对比度越大   

-webkit-filter:opacity(0.8);  //透明度,取值范围0~1,0为全透明,1为原图   

-webkit-filter:drop-shadow(17px 17px 20px black); //阴影
ログイン後にコピー



以上がCSS3 を使用してグレースケール フィルターを記述し、白黒の写真効果を作成する方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Googleフォント変数フォント Googleフォント変数フォント Apr 09, 2025 am 10:42 AM

Google Fontsが新しいデザイン(ツイート)を展開したようです。最後の大きな再設計と比較して、これははるかに反復的です。違いをほとんど伝えることができません

HTML、CSS、JavaScriptを使用してアニメーションカウントダウンタイマーを作成する方法 HTML、CSS、JavaScriptを使用してアニメーションカウントダウンタイマーを作成する方法 Apr 11, 2025 am 11:29 AM

プロジェクトにカウントダウンタイマーが必要だったことはありますか?そのようなことのために、プラグインに手を伸ばすのは自然なことかもしれませんが、実際にはもっとたくさんあります

HTMLデータ属性ガイド HTMLデータ属性ガイド Apr 11, 2025 am 11:50 AM

HTML、CSS、およびJavaScriptのデータ属性について知りたいと思っていたことはすべて。

SASSをより速くするための概念の証明 SASSをより速くするための概念の証明 Apr 16, 2025 am 10:38 AM

新しいプロジェクトの開始時に、SASSコンピレーションは瞬く間に起こります。これは、特にbrowsersyncとペアになっている場合は素晴らしい気分です。

SVGでタータンパターンを生成する静的サイトを作成する方法 SVGでタータンパターンを生成する静的サイトを作成する方法 Apr 09, 2025 am 11:29 AM

タータンは、スコットランド、特にファッショナブルなキルトに通常関連する模様のある布です。 Tartanify.comでは、5,000を超えるTartanを集めました

WordPressテーマでVueコンポーネントを構築する方法 WordPressテーマでVueコンポーネントを構築する方法 Apr 11, 2025 am 11:03 AM

インラインテンプレートディレクティブにより、既存のWordPressマークアップに対する進行性の強化として、リッチVUEコンポーネントを構築できます。

PHPはテンプレートのA-OKです PHPはテンプレートのA-OKです Apr 11, 2025 am 11:04 AM

PHPテンプレートは、多くの場合、サブパーコードを促進するために悪いラップを取得しますが、そうである必要はありません。 PHPプロジェクトが基本を実施する方法を見てみましょう

SASSをプログラミングして、アクセス可能な色の組み合わせを作成します SASSをプログラミングして、アクセス可能な色の組み合わせを作成します Apr 09, 2025 am 11:30 AM

私たちは常にWebをよりアクセスしやすくしたいと考えています。色のコントラストは単なる数学なので、SASSはデザイナーが見逃したかもしれないエッジケースをカバーするのに役立ちます。

See all articles