한국어
Qt
 

임의 메로리 영역(QImage)에 QPainter를 이용하여 그리고 파일로 저장하는 방법을 보여준다.

#include <QApplication>
#include <QImage>
#include <QPainter>

#define WIDTH (1024)
#define HEIGHT (768)

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);


    unsigned char *buffer = nullptr;
    QImage *canvas = nullptr;

    buffer = new unsigned char[WIDTH * HEIGHT * 4];
    canvas = new QImage(buffer, WIDTH, HEIGHT, QImage::Format_ARGB32_Premultiplied);
    canvas->fill(0xffffffff);

    QRectF rectangle(0, 0, 1024, 768);
    int startAngle = 30 * 16;
    int spanAngle = 120 * 16;

    QPainter painter(canvas);
    painter.drawPie(rectangle, startAngle, spanAngle);

    canvas->save("test.png", "PNG");

    delete [] buffer;
    painter.end();
    delete canvas;

    return a.exec();
}

 

위 예제 소스코드는 아래 그림의 결과물을 만들어 낸다.

 

 

test.png

 

번호 제목 글쓴이 날짜 조회 수
공지 Qt프로그래밍(QtQuick) Beginner를 위한 글 읽는 순서 운영자 2019.01.05 86204
30 Qt Version확인 방법 makersweb 2018.03.29 3535
» 임의의 메모리 영역(QImage)에 QPainter를 이용하여 그리기 file makersweb 2017.12.19 3465
28 다국어 지원 어플리케이션 개발 file makersweb 2018.01.27 2986
27 QTextCodec클래스를 사용하여 유니코드와 EUC-KR 변환 makersweb 2019.03.25 2911
26 UI 폼(Form)작성 시 탭 순서(Tab Order) 설정 file makersweb 2020.08.24 2815
25 구글 클라우드 Speech-To-Text API를 Qt기반(C++, Qml)테스트 [7] file makersweb 2019.01.20 2624
24 QOpenVirtualkeyboard(Qt 5용 한글 및 영문, 숫자 가상키보드) file makersweb 2019.11.27 2251
23 [Qt News] Qt 6 기술 비전 (Technical vision for Qt 6) [2] j2doll 2019.08.08 2123
22 Qt Property(속성) 시스템 makersweb 2023.01.08 1906
21 소스코드에서 환경변수 가져오기와 설정하기 makersweb 2018.10.08 1809
20 VTK 를 사용해서 강력한 시각화(3D, Plotting, Chart)Qt 응용프로그램 개발하기 file makersweb 2022.10.16 1678
19 컨테이너에 적재된 객체를 편리하게 삭제하기 makersweb 2019.09.18 1672
18 타임스탬프( timestamp) 유닉스 시간 makersweb 2017.10.19 1627
17 [Qt News] Qt for Python을 위한 기술 비전 j2doll 2019.08.20 1627
16 표를 만들고 PDF문서로 출력하기 file makersweb 2018.09.30 1609
15 qInstallMessageHandler를 이용한 디버그 메세지 출력 제어하기 makersweb 2019.02.25 1363
14 Widgets(C++) 기반의 기본 스타일을 Dark 테마 및 Material 디자인 스타일로 바꾸기 file makersweb 2023.01.28 1322
13 많은 리소스를 사용하는 Qt프로젝트에서 고려해봐야 할 qmake 옵션 makersweb 2019.10.11 1237
12 QOpenGLWidget 을 투명하게 적용 file makersweb 2020.02.05 1046
11 Qt 하이브리드 애플리케이션(Hybrid App) 개발 file makersweb 2023.02.08 1042