QCanvasImagePattern Class
QCanvasImagePattern은 이미지 패턴을 그리는 데 사용되는 브러시입니다. 더 보기...
| 헤더: | #include <QCanvasImagePattern> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS CanvasPainter) target_link_libraries(mytarget PRIVATE Qt6::CanvasPainter) |
| 다음부터: | Qt 6.11 |
공개 함수
| QCanvasImagePattern(const QCanvasImage &image) | |
| QCanvasImagePattern(const QCanvasImage &image, QPointF startPosition, QSizeF imageSize) | |
| QCanvasImagePattern(const QCanvasImage &image, qreal startX, qreal startY, qreal imageWidth, qreal imageHeight) | |
| QCanvasImagePattern(const QCanvasImagePattern &) | |
| QCanvasImagePattern(QCanvasImagePattern &&) | |
| QCanvasImage | image() const |
| QSizeF | imageSize() const |
| qreal | rotation() const |
| void | setImage(const QCanvasImage &image) |
| void | setImageSize(qreal width, qreal height) |
| void | setImageSize(QSizeF size) |
| void | setRotation(qreal rotation) |
| void | setStartPosition(qreal x, qreal y) |
| void | setStartPosition(QPointF point) |
| void | setTintColor(QColor color) |
| QPointF | startPosition() const |
| QColor | tintColor() const |
| operator QVariant() const |
관련 비멤버
| bool | operator!=(const QCanvasImagePattern &lhs, const QCanvasImagePattern &rhs) |
| QDataStream & | operator<<(QDataStream &stream, const QCanvasImagePattern &pattern) |
| bool | operator==(const QCanvasImagePattern &lhs, const QCanvasImagePattern &rhs) |
| QDataStream & | operator>>(QDataStream &stream, QCanvasImagePattern &pattern) |
상세 설명
QCanvasImagePattern은 이미지 패턴을 그리는 데 사용되는 브러시입니다. QCanvasImage 을 패턴으로 사용하려면, QCanvasPainter::ImageFlag::Repeat 와 같이 일부 반복 플래그가 활성화되어 있어야 합니다.
다음은 간단한 예시입니다:
// Setup 2 image patterns
static QImage image1(":/pattern2.png");
static QImage image2(":/pattern3.png");
auto flags = QCanvasPainter::ImageFlag::Repeat |
QCanvasPainter::ImageFlag::GenerateMipmaps;
QCanvasImage bg1 = painter.addImage(image1, flags);
QCanvasImage bg2 = painter.addImage(image2, flags);
QCanvasImagePattern ip1(bg1, 0, 0, 64, 64);
QCanvasImagePattern ip2(bg2, 0, 0, 32, 32);
// Fill and stroke round rectangle with
// these image pattern brushes.
painter.beginPath();
painter.roundRect(50, 50, 180, 180, 40);
painter.setFillStyle(ip1);
painter.setStrokeStyle(ip2);
painter.fill();
painter.setLineWidth(20);
painter.stroke();
참고: 이미지 패턴을 사용할때 이미지가 종종 축소되므로, 매끄러운 패턴을 얻으려면 사용되는 QCanvasImage 에 대해 QCanvasPainter::ImageFlag::GenerateMipmaps 를 설정하는 것이 유용할 수 있습니다.
멤버 함수 문서
QCanvasImagePattern::QCanvasImagePattern(const QCanvasImage &image)
이미지 패턴을 생성합니다. 패턴에는 ` image`가 사용됩니다. 일반적으로 ` image `에는 최소한 ` QCanvasPainter::ImageFlag::Repeat ` 플래그가 설정되어 있어야 한다는 점에 유의하십시오. 패턴의 시작 위치는 (0, 0)이며, 패턴 크기는 (100, 100)입니다. 패턴 각도는 0.0이고, 색조는 흰색(색조 없음)입니다.
QCanvasImagePattern::QCanvasImagePattern(const QCanvasImage &image, QPointF startPosition, QSizeF imageSize)
image 를 사용하여, startPosition 에서 시작하여 imageSize 에 이미지를 그리는 이미지 패턴을 생성합니다. 일반적으로 image 에는 최소한 QCanvasPainter::ImageFlag::Repeat 플래그가 설정되어 있어야 한다는 점에 유의하십시오.
setStartPosition() 및 setImageSize()도 참조하십시오 .
QCanvasImagePattern::QCanvasImagePattern(const QCanvasImage &image, qreal startX, qreal startY, qreal imageWidth, qreal imageHeight)
image 를 사용하여 이미지 패턴을 생성하며, 시작 위치는 startX, startY 이고, 이미지는 imageWidth, imageHeight 에 그려집니다. image 에는 일반적으로 최소한 QCanvasPainter::ImageFlag::Repeat 플래그가 설정되어 있어야 한다는 점에 유의하십시오.
setRotation() 및 setTintColor()도 참조하십시오 .
QCanvasImagePattern::QCanvasImagePattern(const QCanvasImagePattern &)
이미지 패턴을 삭제합니다.
[constexpr noexcept default] QCanvasImagePattern::QCanvasImagePattern(QCanvasImagePattern &&)
QCanvasImagePattern 의 인스턴스를 생성합니다.
QCanvasImage QCanvasImagePattern::image() const
패턴의 이미지를 반환합니다.
setImage()도 참조하십시오 .
QSizeF QCanvasImagePattern::imageSize() const
pattern에 포함된 단일 이미지의 크기를 반환합니다.
setImageSize()도 참조하십시오 .
qreal QCanvasImagePattern::rotation() const
패턴의 회전 각도를 라디안 단위로 반환합니다.
setRotation()도 참조하십시오 .
void QCanvasImagePattern::setImage(const QCanvasImage &image)
패턴의 이미지를 image 로 설정합니다. 참고: 이미지 패턴에서 이미지를 사용할 때는 일반적으로 Repeat 플래그가 설정되어 있어야 합니다.
image()도 참조하십시오 .
void QCanvasImagePattern::setImageSize(qreal width, qreal height)
패턴 내의 단일 이미지 크기를 ( width, height)로 설정합니다.
imageSize()도 참조하십시오 .
void QCanvasImagePattern::setImageSize(QSizeF size)
pattern에 포함된 개별 이미지의 크기를 size 로 설정합니다.
이 함수는 오버로드된 함수입니다.
void QCanvasImagePattern::setRotation(qreal rotation)
패턴 회전 각도를 라디안 단위로 rotation 로 설정합니다. 회전은 이미지 startPosition()를 중심으로 이루어집니다. 기본값은 0.0 이며, 이는 이미지가 회전되지 않음을 의미합니다.
rotation()도 참조하십시오 .
void QCanvasImagePattern::setStartPosition(qreal x, qreal y)
이미지 패턴의 시작점을 (x, y)로 설정합니다. 시작 위치는 패턴 내 이미지의 왼쪽 상단 모서리를 의미합니다. 이후 패턴은 이 지점을 기준으로 모든 위치로 확장됩니다(이미지 Repeat 플래그가 설정된 경우).
startPosition()도 참조하십시오 .
void QCanvasImagePattern::setStartPosition(QPointF point)
이미지 패턴의 시작점을 point 로 설정합니다. 시작 위치는 패턴 내 이미지의 왼쪽 상단 모서리를 의미합니다. 이후 패턴은 이 지점을 기준으로 모든 위치로 확장됩니다(이미지 Repeat 플래그가 설정된 경우).
이 함수는 오버로드된 함수입니다.
void QCanvasImagePattern::setTintColor(QColor color)
패턴의 틴트 색상을 color 로 설정합니다. 셰이더에서 패턴 이미지의 색상에 이 틴트 색상이 곱해집니다. 기본값은 흰색이며, 이는 틴트가 적용되지 않음을 의미합니다.
참고: 알파를 전역적으로 설정하려면 QCanvasPainter::setGlobalAlpha()을 사용하십시오.
참조: tintColor().
QPointF QCanvasImagePattern::startPosition() const
이미지 패턴의 시작점을 반환합니다.
setStartPosition()도 참조하십시오 .
QColor QCanvasImagePattern::tintColor() const
패턴의 색조를 반환합니다.
setTintColor()도 참조하십시오 .
QCanvasImagePattern::operator QVariant() const
이미지 패턴을 ` QVariant` 형식으로 반환합니다.
관련 비회원
[noexcept] bool operator!=(const QCanvasImagePattern &lhs, const QCanvasImagePattern &rhs)
이미지 패턴 lhs 이 rhs 과 다를 경우 true 을 반환하고, 그렇지 않은 경우 false 을 반환합니다.
operator==()도 참조하십시오 .
QDataStream &operator<<(QDataStream &stream, const QCanvasImagePattern &pattern)
지정된 ` pattern `를 지정된 ` stream `에 기록하고, ` stream`에 대한 참조를 반환합니다.
Qt 데이터 유형 직렬화항목도 참조하십시오 .
[noexcept] bool operator==(const QCanvasImagePattern &lhs, const QCanvasImagePattern &rhs)
이미지 패턴 lhs 이 rhs 과 같으면 true 을 반환하고, 그렇지 않으면 false 을 반환합니다.
operator!=()도 참조하십시오 .
QDataStream &operator>>(QDataStream &stream, QCanvasImagePattern &pattern)
지정된 ` stream `에서 ` pattern `를 읽어들이고, ` stream`에 대한 참조를 반환합니다.
Qt 데이터 유형의 직렬화항목도 참조하십시오 .
© 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.