>  기사  >  웹 프론트엔드  >  SVG를 사용하여 이미지에서 정확한 원형 섹션을 자르는 방법은 무엇입니까?

SVG를 사용하여 이미지에서 정확한 원형 섹션을 자르는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-23 14:40:02325검색

How to Clip an Accurate Circular Section from an Image Using SVG?

이미지에서 원형 부분 자르기: 종합 가이드

이미지 조작 영역에서는 이미지에서 원형 부분을 정밀하게 추출하는 능력이 필수적입니다. 다양한 응용 분야에 적합합니다. 이 문서는 SVG 경로를 사용하여 이 작업을 수행하는 동안 직면하는 문제를 해결하는 것을 목표로 합니다.

클리핑 후 얻은 이미지가 원하는 원형 모양을 따르지 않을 때 문제가 발생합니다. 주요 관심사는 정의된 SVG 내에서 이미지를 맞추고 정렬하는 것입니다. 이 문서에서는 단계별 가이드를 제공하여 이 문제에 대한 솔루션을 제공합니다.

기본 코드 이해

제공된 CSS 스니펫은 클립 경로 속성을 통해 이미지를 자르려고 시도합니다. , 원형 경로가 포함된 SVG를 참조합니다. 그러나 이미지 내용이 왜곡되고 잘못 정렬된 것처럼 보입니다. 이러한 불일치는 SVG와 그 안에 있는 이미지 모두의 적절한 크기와 위치 지정이 필요하기 때문에 발생합니다.

간단하고 효과적인 접근 방식

이 문제를 해결하려면 SVG를 사용하는 대체 방법을 살펴보겠습니다. 정확성을 유지하면서 프로세스를 단순화합니다.

<code class="html"><svg width="200" height="200">
  <defs>
    <mask id="hole">
      <circle r="100" cx="100" cy="100" fill="white"/>
      <circle r="50" cx="180" cy="180" fill="black"/>
    </mask>
  <pattern id="img" patternUnits="userSpaceOnUse" width="200" height="200">
    <image  xlink:href="https://picsum.photos/200/200?image=1069" x="0" y="0" width="200" height="200" />
  </pattern>
  </defs>
  <rect fill="url(#img)" width="100%" height="100%" mask="url(#hole)" />
</svg></code>

솔루션 분석

이 SVG 기반 접근 방식은 다음 요소를 결합합니다.

  1. 두 개의 중첩된 그리고 패턴.
  2. <마스크> 두 개의 겹치는 원으로 구성됩니다. 큰 흰색 원은 원하는 원형 모양을 나타내고, 더 작은 검은색 원은 흰색 원 내의 섹션을 가립니다.
  3. 패턴 요소에는 <이미지> 대상 이미지를 가져오는 태그입니다.
  4. 마지막으로 요소는 전체 SVG 영역을 앞서 언급한 패턴으로 채웁니다. 마스크 속성은 이전에 정의된 를 참조하여 이미지를 의도한 원형 모양으로 효과적으로 자릅니다.

결론

이 기술을 활용하면 쉽게 정확하게 잘린 이미지를 얻을 수 있습니다. 이미지의 원형 부분을 제거하여 정렬이나 왜곡 문제를 완화합니다. 이 개선된 방법을 사용하면 디자인이나 애플리케이션에 원활하게 통합되어 원하는 완벽한 원형 컷아웃을 제공할 수 있습니다.

위 내용은 SVG를 사용하여 이미지에서 정확한 원형 섹션을 자르는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.