이 페이지에서

InnerShadow QML Type

소스 내부에 색상이 적용되고 흐릿하게 처리된 그림자를 생성합니다. 더 보기...

Import Statement: import Qt5Compat.GraphicalEffects
Since: QtGraphicalEffects 1.0
Inherits:

Item

속성

상세 설명

기본적으로 이 효과는 고품질의 그림자 이미지를 생성하므로, 그림자의 렌더링 속도가 최상은 아닐 수 있습니다. 특히 그림자 가장자리가 크게 부드럽게 처리된 경우 렌더링 속도가 저하됩니다. 더 빠른 렌더링 속도가 필요하고 최상의 시각적 품질이 필수적이지 않은 사용 사례의 경우, ‘ fast ’ 속성을 true로 설정할 수 있습니다.

출처효과 적용

알록달록한 나비 그래픽

내부 그림자 효과가 적용된 나비

참고: 이 효과는 OpenGL로 실행할 때 사용할 수 있습니다.

예제

다음 예제는 이 효과를 적용하는 방법을 보여줍니다.

import QtQuick
import Qt5Compat.GraphicalEffects

Item {
    width: 300
    height: 300

    Rectangle {
        anchors.fill: parent
    }

    Image {
        id: butterfly
        source: "images/butterfly.png"
        sourceSize: Qt.size(parent.width, parent.height)
        smooth: true
        visible: false
    }

    InnerShadow {
        anchors.fill: butterfly
        radius: 8.0
        samples: 16
        horizontalOffset: -3
        verticalOffset: 3
        color: "#b0000000"
        source: butterfly
    }
}

속성 설명

cached : bool

이 속성을 사용하면 렌더링 성능을 향상시키기 위해 이펙트 출력 픽셀을 캐시에 저장할 수 있습니다. 소스나 이펙트 속성이 변경될 때마다 캐시에 저장된 픽셀을 업데이트해야 합니다. 이펙트 출력을 저장하기 위해 추가 메모리 버퍼가 필요하기 때문에 메모리 사용량이 증가합니다.

소스나 효과 속성이 애니메이션 처리되는 경우에는 캐시를 비활성화하는 것이 좋습니다.

기본적으로 이 속성은 ` false`로 설정되어 있습니다.

color : color

이 속성은 그림자에 사용되는 RGBA 색상 값을 정의합니다.

기본적으로 이 속성은 "black" 로 설정되어 있습니다.

서로 다른 색상 값을 사용한 출력 예시

검은색 안쪽 그림자

흰색 내부 그림자

붉은 안쪽 그림자

color: #000000 color: #ffffff color: #ff0000
radius: 16radius: 16radius: 16
samples: 24samples: 24samples: 24
horizontalOffset: 0horizontalOffset: 0horizontalOffset: 0
verticalOffset: 0verticalOffset: 0verticalOffset: 0
spread: 0.2spread: 0.2spread: 0.2

fast : bool

이 속성은 효과에 부드러움을 부여하는 데 사용되는 블러링 알고리즘을 선택합니다. 이 값을 true로 설정하면 빠른 알고리즘이 활성화되며, false로 설정하면 더 높은 품질의 결과가 생성됩니다.

기본적으로 이 속성은 ' false'로 설정되어 있습니다.

'fast' 값을 달리한 출력 예시

고품질의 내부 그림자

빠른 내부 그림자 렌더링

fast: false fast: true
radius: 16radius: 16
samples: 24samples: 24
color: #000000color: #000000
horizontalOffset: 0horizontalOffset: 0
verticalOffset: 0verticalOffset: 0
spread: 0.2spread: 0.2

horizontalOffset : real

HorizontalOffset 및 verticalOffset 속성은 InnerShadow 항목의 위치에 비해 렌더링된 그림자의 오프셋을 정의합니다. 대개 ‘ InnerShadow ’ 항목은 소스 요소를 채우도록 고정됩니다. 이 경우, HorizontalOffset 및 verticalOffset 속성이 0으로 설정되면 그림자는 소스 항목 내부에 완전히 렌더링됩니다. 오프셋 속성을 변경하여 그림자를 소스 항목에 상대적으로 배치할 수 있습니다.

값의 범위는 -inf부터 inf까지입니다. 기본적으로 이 속성들은 0 로 설정되어 있습니다.

다양한 horizontalOffset 값을 사용한 출력 예시

그림자 왼쪽으로 이동

그림자 중앙 정렬

그림자 우측으로 이동

horizontalOffset: -20 horizontalOffset: 0 horizontalOffset: 20
radius: 16radius: 16radius: 16
samples: 24samples: 24samples: 24
color: #000000color: #000000color: #000000
verticalOffset: 0verticalOffset: 0verticalOffset: 0
spread: 0spread: 0spread: 0

radius : real

반지름은 그림자의 부드러움을 결정합니다. 반지름이 클수록 그림자의 가장자리가 더 흐릿하게 보입니다.

반경 값에 따라, 시각적 품질을 보장하기 위해 ‘ samples ’ 값을 충분히 크게 설정해야 합니다.

값의 범위는 0.0(흐림 없음)부터 무한대(inf)까지입니다. 기본적으로 이 속성은 ' 0.0 '(흐림 없음)으로 설정되어 있습니다.

반경 값이 다른 출력 예시

내부 그림자 흐림 없음

중간 정도의 내부 그림자 흐림

강한 내부 그림자 블러

반경: 0 반경: 6 반경: 12
samples: 24samples: 24samples: 24
color: #000000color: #000000color: #000000
horizontalOffset: 0horizontalOffset: 0horizontalOffset: 0
verticalOffset: 0verticalOffset: 0verticalOffset: 0
spread: 0spread: 0spread: 0

samples : int

이 속성은 가장자리 부드럽게 처리 블러 계산 시 픽셀당 샘플을 몇 개 채취할지 정의합니다. 값이 클수록 품질은 좋아지지만, 렌더링 속도는 느려집니다.

이상적으로는 이 값을 필요한 최대 반지름 값의 두 배로 설정하는 것이 좋습니다. 예를 들어, 반지름이 0.0에서 4.0 사이로 애니메이션되는 경우, 샘플 수는 8로 설정해야 합니다.

값의 범위는 0에서 32까지입니다. 기본적으로 이 속성은 0 로 설정되어 있습니다.

이 속성은 애니메이션 대상으로 설계되지 않았습니다. 이 속성을 변경하면 기본 OpenGL 셰이더가 재컴파일될 수 있습니다.

fast 속성이 true로 설정된 경우, 이 속성은 아무런 영향을 미치지 않습니다.

source : variant

이 속성은 생성된 그림자의 소스로 사용될 소스 항목을 정의합니다.

참고: 예를 들어 소스를 이 효과의 상위 항목으로 설정하는 등, 효과가 스스로를 포함하도록 하는것은 지원되지않습니다 .

spread : real

이 속성은 그림자 색상이 광원의 가장자리 부근에서 얼마나 강하게 표현될지를 정의합니다.

값의 범위는 0.0에서 1.0까지입니다. 기본적으로 이 속성은 0.5 로 설정되어 있습니다.

스프레드 값이 다른 출력 예시

확산되지 않는 내부 그림자

중간 정도의 발색을 가진 인너 섀도우

분산도가 높은 내부 그림자

spread: 0.0 spread: 0.3 spread: 0.5
radius: 16radius: 16radius: 16
samples: 24samples: 24samples: 24
color: #000000color: #000000color: #000000
horizontalOffset: 0horizontalOffset: 0horizontalOffset: 0
verticalOffset: 0verticalOffset: 0verticalOffset: 0

verticalOffset : real

HorizontalOffset 및 verticalOffset 속성은 ‘ InnerShadow ’ 항목의 위치에 비해 렌더링된 그림자의 오프셋을 정의합니다. 대개 ' InnerShadow ' 항목은 소스 요소를 가득 채우도록 고정됩니다. 이 경우 HorizontalOffset 및 verticalOffset 속성이 0으로 설정되면 그림자가 소스 항목 내부에 완전히 렌더링됩니다. 오프셋 속성을 변경하여 그림자를 소스 항목에 상대적으로 배치할 수 있습니다.

값의 범위는 -inf부터 inf까지입니다. 기본적으로 이 속성들은 0 로 설정되어 있습니다.

horizontalOffset 값을 달리 적용한 출력 예시

그림자 왼쪽으로 오프셋

그림자 중앙 정렬

그림자 오른쪽 방향으로 오프셋

horizontalOffset: -20 horizontalOffset: 0 horizontalOffset: 20
radius: 16radius: 16radius: 16
samples: 24samples: 24samples: 24
color: #000000color: #000000color: #000000
수직 오프셋: 0수직 오프셋: 0수직 오프셋: 0
spread: 0spread: 0spread: 0

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.