QPicture Class

QPicture 클래스는 QPainter 명령을 기록하고 재생하는 페인트 장치입니다. 더 보기...

헤더: #include <QPicture>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
상속합니다: QPaintDevice

공용 함수

QPicture(int formatVersion = -1)
QPicture(const QPicture &pic)
virtual ~QPicture()
QRect boundingRect() const
const char *data() const
bool isNull() const
bool load(const QString &fileName)
bool load(QIODevice *dev)
bool play(QPainter *painter)
bool save(const QString &fileName)
bool save(QIODevice *dev)
void setBoundingRect(const QRect &r)
virtual void setData(const char *data, uint size)
uint size() const
void swap(QPicture &other)
QPicture &operator=(QPicture &&other)
QPicture &operator=(const QPicture &p)
QDataStream &operator<<(QDataStream &s, const QPicture &r)
QDataStream &operator>>(QDataStream &s, QPicture &r)

상세 설명

그림은 페인터 명령을 플랫폼에 독립적인 형식으로 IO 장치에 직렬화합니다. 메타 파일이라고도 합니다.

Qt 그림은 독점적인 바이너리 형식을 사용합니다. 많은 윈도우 시스템의 기본 그림(메타 파일) 형식과 달리 Qt 그림에는 내용에 대한 제한이 없습니다. 위젯이나 픽스맵에 그릴 수 있는 모든 것(예: 글꼴, 픽스맵, 영역, 변형 그래픽 등)을 그림에 저장할 수 있습니다.

QPicture는 해상도에 독립적입니다. 즉, QPicture는 서로 다른 장치(예: svg, pdf, ps, 프린터 및 화면)에 동일하게 표시될 수 있습니다. 이는 예를 들어 WYSIWYG 인쇄 미리 보기에 필요합니다. QPicture는 기본 시스템 dpi로 실행되며 창 시스템에 따른 해상도 차이에 맞게 페인터의 크기를 조정합니다.

그림을 기록하는 방법의 예입니다:

QPicture picture;
QPainter painter;
painter.begin(&picture);           // paint in picture
painter.drawEllipse(10,20, 80,70); // draw an ellipse
painter.end();                     // painting done
picture.save("drawing.pic");       // save picture

QPainter::begin() 함수를 호출할 때마다 페인터 명령어 목록이 초기화됩니다.

그림을 재생하는 방법의 예:

QPicture picture;
picture.load("drawing.pic");           // load picture
QPainter painter;
painter.begin(&myImage);               // paint in myImage
painter.drawPicture(0, 0, picture);    // draw the picture at (0,0)
painter.end();                         // painting done

play()를 사용하여 그림을 그릴 수도 있습니다. size (), isNull() 및 boundingRect()와 같이 그림에 대한 몇 가지 기본 데이터를 사용할 수 있습니다.

QMovie도 참조하세요 .

멤버 함수 문서

[explicit] QPicture::QPicture(int formatVersion = -1)

빈 그림을 만듭니다.

formatVersion 파라미터는 이전 버전의 Qt로 컴파일된 어플리케이션에서 읽을 수 있는 QPicture를 생성하는 데 사용할 수 있습니다.

기본 formatVersion은 -1로 현재 릴리스를 나타냅니다. 즉, Qt 4.0의 경우 formatVersion 7은 기본 formatVersion -1과 동일합니다.

이전 버전의 Qt에서 생성된 그림 읽기는 Qt 4.0에서 지원되지 않습니다.

QPicture::QPicture(const QPicture &pic)

pic 의 복사본을 생성합니다.

이 생성자는 암시적 공유 덕분에 빠릅니다.

[virtual noexcept] QPicture::~QPicture()

사진을 삭제합니다.

QRect QPicture::boundingRect() const

그림에 데이터가 없는 경우 그림의 경계 사각형을 반환하거나 유효하지 않은 사각형을 반환합니다.

setBoundingRect()도 참조하세요 .

const char *QPicture::data() const

사진 데이터에 대한 포인터를 반환합니다. 이 포인터는 이 사진에서 다음 생성되지 않은 함수가 호출될 때까지만 유효합니다. 사진에 데이터가 없는 경우 반환되는 포인터는 0입니다.

setData(), size() 및 isNull()도 참조하세요 .

bool QPicture::isNull() const

사진에 데이터가 없는 경우 true 을 반환하고, 그렇지 않으면 false를 반환합니다.

bool QPicture::load(const QString &fileName)

fileName 에 지정된 파일에서 사진을 로드하고 성공하면 true를 반환하고, 그렇지 않으면 사진을 무효화하고 false 을 반환합니다.

save()도 참조하세요 .

bool QPicture::load(QIODevice *dev)

과부하가 걸린 기능입니다.

dev 는 로딩에 사용할 장치입니다.

bool QPicture::play(QPainter *painter)

painter 를 사용하여 그림을 재생하고 성공하면 true 을 반환하고, 그렇지 않으면 false 을 반환합니다.

이 함수는 (x, y) = (0, 0)을 사용하여 QPainter::drawPicture()와 정확히 동일하게 작동합니다.

참고: 이 함수에 의해 페인터의 상태는 보존되지 않습니다.

bool QPicture::save(const QString &fileName)

fileName 에 지정된 파일에 사진을 저장하고 성공하면 참을 반환하고, 그렇지 않으면 false 을 반환합니다.

load()도 참조하세요 .

bool QPicture::save(QIODevice *dev)

과부하가 걸린 기능입니다.

dev 는 저장에 사용할 장치입니다.

void QPicture::setBoundingRect(const QRect &r)

그림의 경계 사각형을 r 로 설정합니다. 자동으로 계산된 값은 재정의됩니다.

boundingRect()도 참조하세요 .

[virtual] void QPicture::setData(const char *data, uint size)

datasize 에서 직접 사진 데이터를 설정합니다. 이 함수는 입력 데이터를 복사합니다.

data() 및 size()도 참조하세요 .

uint QPicture::size() const

사진 데이터의 크기를 반환합니다.

data()도 참조하세요 .

[noexcept] void QPicture::swap(QPicture &other)

이 사진을 other 로 바꿉니다. 이 작업은 매우 빠르며 실패하지 않습니다.

[noexcept] QPicture &QPicture::operator=(QPicture &&other)

이동-이 other 인스턴스를 QPicture 인스턴스에 할당합니다.

QPicture &QPicture::operator=(const QPicture &p)

이 사진에 p 사진을 할당하고 이 사진에 대한 참조를 반환합니다.

관련 비회원

QDataStream &operator<<(QDataStream &s, const QPicture &r)

그림 rs 스트림에 쓰고 스트림에 대한 참조를 반환합니다.

QDataStream &operator>>(QDataStream &s, QPicture &r)

s 스트림의 사진을 r 그림으로 읽고 스트림에 대한 참조를 반환합니다.

© 2025 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.