> 웹 프론트엔드 > CSS 튜토리얼 > CSS3를 사용하여 회색조 필터를 작성하여 흑백 사진 효과 만들기

CSS3를 사용하여 회색조 필터를 작성하여 흑백 사진 효과 만들기

不言
풀어 주다: 2018-06-25 17:17:29
원래의
2702명이 탐색했습니다.

이 글에서는 주로 CSS3를 사용하여 흑백 사진 효과를 만드는 방법을 소개합니다. CSS3의 필터는 매우 강력합니다. 필요한 친구들은

을 참조하세요. CSS3 필터 기능을 사용하면 PhotoShop을 사용하거나 많은 JavaScript 및 PHP 코드를 사용하지 않고도 이미지를 쉽고 간단하게 처리할 수 있습니다. 이 속성은 최신 Firefox, Safari 및 Chrome 브라우저에서 이미 지원되며 포괄적인 대체 기술, 심지어 IE 브라우저를 통해 이 효과를 시뮬레이션할 수 있습니다.

이 글에서는 표준 테스트 이미지 Lena Söderberg(역자 주: Lena의 아름다운 사진은 이미지 압축을 위한 표준 테스트 이미지로 사용됨)를 데모로 사용하고, CSS를 사용하여 흑백 이미지로 변환해 보겠습니다. 아래에서는 CSS의 이 기능을 사용하여 색조, 흐림, 밝기, 대비 및 기타 효과를 조정하는 방법을 설명합니다. 렌더링:
201659103649279.jpg (766×383)

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와 호환 가능:

이제 코드는 향후 브라우저 및 최신 버전의 브라우저와 호환될 수 있습니다. 크롬, 파이어폭스 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); //阴影
로그인 후 복사

위 내용은 모두의 학습에 도움이 되기를 바랍니다. 더 많은 관련 콘텐츠에 주목하세요. PHP 중국어 웹사이트!

관련 권장 사항:

CSS를 사용하여 3차원 가로 버튼 메뉴 효과를 구현합니다.

CSS3를 사용하여 3D 플립북 효과를 구현하는 방법

CSS3 마우스가 사진

위 내용은 CSS3를 사용하여 회색조 필터를 작성하여 흑백 사진 효과 만들기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿