QPrinter Class
QPrinter 클래스는 프린터에 출력하는 페인트 장치입니다. 더 보기...
| 헤더: | #include <QPrinter> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS PrintSupport) target_link_libraries(mytarget PRIVATE Qt6::PrintSupport) |
| qmake: | QT += printsupport |
| 상속: | QPagedPaintDevice |
- 상속된 멤버를 포함한 모든 멤버 목록
- QPrinter는 프린터 및 인쇄 API의 일부입니다.
참고: 이 클래스의 모든 함수는 재진입 가능합니다.
공개 유형
| enum | ColorMode { Color, GrayScale } |
| enum | DuplexMode { DuplexNone, DuplexAuto, DuplexLongSide, DuplexShortSide } |
| enum | OutputFormat { NativeFormat, PdfFormat } |
| enum | PageOrder { FirstPageFirst, LastPageFirst } |
| enum | PaperSource { Auto, Cassette, Envelope, EnvelopeManual, FormSource, …, LastPaperSource } |
| enum | PrintRange { AllPages, Selection, PageRange, CurrentPage } |
| enum | PrinterMode { ScreenResolution, PrinterResolution, HighResolution } |
| enum | PrinterState { Idle, Active, Aborted, Error } |
| enum | Unit { Millimeter, Point, Inch, Pica, Didot, …, DevicePixel } |
공개 함수
| QPrinter(QPrinter::PrinterMode mode = ScreenResolution) | |
| QPrinter(const QPrinterInfo &printer, QPrinter::PrinterMode mode = ScreenResolution) | |
| virtual | ~QPrinter() |
| bool | abort() |
| bool | collateCopies() const |
| QPrinter::ColorMode | colorMode() const |
| int | copyCount() const |
| QString | creator() const |
| QString | docName() const |
| QPrinter::DuplexMode | duplex() const |
| bool | fontEmbeddingEnabled() const |
| int | fromPage() const |
| bool | fullPage() const |
| bool | isValid() const |
| QString | outputFileName() const |
| QPrinter::OutputFormat | outputFormat() const |
| QPrinter::PageOrder | pageOrder() const |
| QRectF | pageRect(QPrinter::Unit unit) const |
| QRectF | paperRect(QPrinter::Unit unit) const |
| QPrinter::PaperSource | paperSource() const |
| QPagedPaintDevice::PdfVersion | pdfVersion() const |
| QPrintEngine * | printEngine() const |
| QString | printProgram() const |
| QPrinter::PrintRange | printRange() const |
| QString | printerName() const |
| QString | printerSelectionOption() const |
| QPrinter::PrinterState | printerState() const |
| int | resolution() const |
| void | setCollateCopies(bool collate) |
| void | setColorMode(QPrinter::ColorMode newColorMode) |
| void | setCopyCount(int count) |
| void | setCreator(const QString &creator) |
| void | setDocName(const QString &name) |
| void | setDuplex(QPrinter::DuplexMode duplex) |
| void | setFontEmbeddingEnabled(bool enable) |
| void | setFromTo(int from, int to) |
| void | setFullPage(bool fp) |
| void | setOutputFileName(const QString &fileName) |
| void | setOutputFormat(QPrinter::OutputFormat format) |
| void | setPageOrder(QPrinter::PageOrder pageOrder) |
| void | setPaperSource(QPrinter::PaperSource source) |
| void | setPdfVersion(QPagedPaintDevice::PdfVersion version) |
| void | setPrintProgram(const QString &printProg) |
| void | setPrintRange(QPrinter::PrintRange range) |
| void | setPrinterName(const QString &name) |
| void | setPrinterSelectionOption(const QString &option) |
| void | setResolution(int dpi) |
| QList<QPrinter::PaperSource> | supportedPaperSources() const |
| QList<int> | supportedResolutions() const |
| bool | supportsMultipleCopies() const |
| int | toPage() const |
재구현된 공용 함수
| virtual bool | newPage() override |
| virtual QPaintEngine * | paintEngine() const override |
보호된 함수
| void | setEngines(QPrintEngine *printEngine, QPaintEngine *paintEngine) |
상세 설명
이 디바이스는 일련의 인쇄 출력 페이지를 나타내며, QWidget 및 QPixmap 와 같은 다른 페인트 디바이스와 거의 동일한 방식으로 사용됩니다. 방향 및 해상도와 같은 디바이스별 기능을 관리하고, 문서가 생성됨에 따라 페이지를 단계별로 이동하기 위한 일련의 추가 함수가 제공됩니다.
Windows 또는 macOS에서 프린터로 직접 인쇄할 때, QPrinter는 내장된 프린터 드라이버를 사용합니다. X11 환경에서는 QPrinter가 CUPS(Common Unix Printing System) 를 사용하여 PDF 출력을 프린터로 전송합니다. 대안으로, printProgram() 함수를 사용하여 시스템 기본값 대신 사용할 명령어나 유틸리티를 지정할 수 있습니다.
유효하지 않은 프린터에서 용지 크기나 해상도와 같은 매개변수를 설정하는 경우 결과는 정의되지 않습니다. 매개변수를 변경하기 전에 QPrinter::isValid()를 사용하여 이를 확인할 수 있습니다.
QPrinter는 다양한 매개변수를 지원하며, 대부분은 최종 사용자가 print dialog()를 통해 변경할 수 있습니다. 일반적으로 QPrinter는 이러한 함수를 기본 프린터 드라이버( QPrintEngine)로 전달합니다.
가장 중요한 매개변수는 다음과 같습니다.
- setPageLayout()는 QPrinter에 사용할 페이지 방향과 프린터에서 출력될 것으로 예상되는 크기를 알려줍니다.
- setResolution()는 프린터가 제공할 해상도를 인치당 도트 수(DPI) 단위로 QPrinter에 지정합니다.
- setFullPage()는 QPrinter에 전체 페이지를 처리할지, 아니면 프린터가 출력할 수 있는 부분만 처리할지 여부를 지정합니다.
- setCopyCount()는 QPrinter에 문서를 몇 부 인쇄해야 하는지 알려줍니다.
이러한 함수 중 상당수는 실제 인쇄가 시작되기 전(즉, ` QPainter::begin()`가 호출되기 전)에만 호출할 수 있습니다. 예를 들어, 인쇄가 반쯤 진행된 상태에서 인쇄 부수를 변경하는 것은 불가능하므로, 이는 일반적으로 타당한 방식입니다. 또한 사용자가 (프린터 대화 상자를 통해) 설정하고 응용 프로그램이 이를 준수해야 하는 몇 가지 설정도 있습니다. 자세한 내용은 QAbstractPrintDialog 의 문서를 참조하십시오.
QPainter::begin()가 호출되면, 이 함수가 작동하는 QPrinter는 새 페이지를 위해 준비되어, QPainter 를 즉시 사용하여 문서의 첫 페이지를 그릴 수 있게 됩니다. 첫 페이지가 그려지면, newPage()를 호출하여 그릴 새로운 빈 페이지를 요청하거나, QPainter::end()를 호출하여 인쇄를 완료할 수 있습니다. 두 번째 페이지와 그 이후의 모든 페이지는 그려지기 전에 newPage()를 호출하여 준비합니다.
문서의 첫 번째 페이지 앞에서는 newPage()를 호출할 필요가 없습니다. 인쇄된 문서의 시작 부분에 빈 페이지를 삽입해야 하는 경우에만 QPainter::begin() 호출 후 newPage()을 호출하면 됩니다. 마찬가지로, 문서의 마지막 페이지가 그려진 후 newPage()을 호출하면 인쇄된 문서의 끝에 빈 페이지가 추가됩니다.
인쇄 작업을 중단하려면 ` abort()`을 호출하면 인쇄를 중지하기 위해 최선을 다합니다. 이 경우 전체 작업이 취소될 수도 있고, 일부만 취소될 수도 있습니다.
QPrinter는 모든 QPrintEngine 하위 클래스로 출력할 수 있으므로, QPrintEngine 을 상속받아 인터페이스를 재구현함으로써 새로운 유형의 인쇄 서브시스템을 지원하도록 확장할 수 있습니다.
QPrintDialog 및 Qt Print Support.
멤버 유형 문서
enum QPrinter::ColorMode
이 열거형 유형은 ‘ QPrinter ’이 컬러로 출력할지 여부를 나타내는 데 사용됩니다.
| 상수 | 값 | 설명 |
|---|---|---|
QPrinter::Color | 1 | 가능한 경우 컬러로 인쇄하고, 그렇지 않으면 그레이스케일로 인쇄합니다. |
QPrinter::GrayScale | 0 | 컬러 프린터에서도 그레이스케일로 인쇄합니다. |
enum QPrinter::DuplexMode
이 열거형은 각 용지의 한 면에만 인쇄할지, 양면에 인쇄할지(단면 인쇄 또는 양면 인쇄)를 나타내는 데 사용됩니다.
| 상수 | 값 | 설명 |
|---|---|---|
QPrinter::DuplexNone | 0 | 단면(simplex) 인쇄만 가능합니다. |
QPrinter::DuplexAuto | 1 | 양면 인쇄 사용 여부는 프린터의 기본 설정을 기준으로 결정됩니다. |
QPrinter::DuplexLongSide | 2 | 각 용지의 양면을 모두 인쇄에 사용합니다. 두 번째 면을 인쇄하기 전에 용지를 가장 긴 쪽 가장자리를 기준으로 뒤집습니다. |
QPrinter::DuplexShortSide | 3 | 각 용지의 양면이 인쇄에 사용됩니다. 두 번째 면을 인쇄하기 전에 용지를 가장 짧은 변을 기준으로 뒤집습니다. |
enum QPrinter::OutputFormat
OutputFormat 열거형은 QPrinter 가 출력할 때 사용할 형식을 지정하는 데 사용됩니다.
| 상수 | 값 | 설명 |
|---|---|---|
QPrinter::NativeFormat | 0 | QPrinter 는 실행 중인 플랫폼에서 정의한 방법을 사용하여 출력을 인쇄합니다. 이 모드는 프린터로 직접 인쇄할 때의 기본 설정입니다. |
QPrinter::PdfFormat | 1 | QPrinter 는 검색 가능한 PDF 파일로 출력을 생성합니다. 이 모드는 파일로 출력할 때의 기본값입니다. |
outputFormat(), setOutputFormat(), setOutputFileName()도 참조하십시오 .
enum QPrinter::PageOrder
이 열거형(enum)은 QPrinter 에서 애플리케이션 프로그램에 인쇄 방법을 알려주는 데 사용됩니다.
| 상수 | 값 | 설명 |
|---|---|---|
QPrinter::FirstPageFirst | 0 | 번호가 가장 낮은 페이지부터 먼저 인쇄되어야 합니다. |
QPrinter::LastPageFirst | 1 | 페이지 번호가 가장 높은 페이지가 먼저 인쇄되어야 합니다. |
enum QPrinter::PaperSource
이 열거형 유형은 ‘ QPrinter ’가 사용할 용지 공급원을 지정합니다. ‘ QPrinter ’는 용지 공급원이 사용 가능한지 확인하지 않으며, 이 정보를 바탕으로 용지 공급원을 설정하려고 시도할 뿐입니다. 용지 공급원이 실제로 설정되는지는 프린터에 해당 공급원이 있는지 여부에 따라 달라집니다.
경고: 현재이 기능은 Windows에서만 구현되어 있습니다.
| 상수 | 값 | 설명 |
|---|---|---|
QPrinter::Auto | 6 | |
QPrinter::Cassette | 11 | |
QPrinter::Envelope | 4 | |
QPrinter::EnvelopeManual | 5 | |
QPrinter::FormSource | 12 | |
QPrinter::LargeCapacity | 10 | |
QPrinter::LargeFormat | 9 | |
QPrinter::Lower | 1 | |
QPrinter::MaxPageSource | 13 | 사용 중단됨. 대신 LastPaperSource를 사용하십시오. |
QPrinter::Middle | 2 | |
QPrinter::Manual | 3 | |
QPrinter::OnlyOne | 0 | |
QPrinter::Tractor | 7 | |
QPrinter::SmallFormat | 8 | |
QPrinter::Upper | OnlyOne | |
QPrinter::CustomSource | 14 | 프린터에 의해 정의되었으나 Qt에서는 인식되지 않는 PaperSource |
QPrinter::LastPaperSource | CustomSource | 유효한 PaperSource 값 중 가장 큰 값으로, 현재는 CustomSource입니다 |
enum QPrinter::PrintRange
인쇄 범위 선택 옵션을 지정하는 데 사용됩니다.
| 상수 | 값 | 설명 |
|---|---|---|
QPrinter::AllPages | 0 | 모든 페이지를 인쇄해야 합니다. |
QPrinter::Selection | 1 | 선택한 페이지만 인쇄해야 합니다. |
QPrinter::PageRange | 2 | 지정된 페이지 범위를 인쇄해야 합니다. |
QPrinter::CurrentPage | 3 | 현재 페이지만 인쇄해야 합니다. |
setPrintRange(), printRange() 및 QAbstractPrintDialog::PrintRange도 참조하십시오 .
enum QPrinter::PrinterMode
이 열거형은 프린터가 작동해야 할 모드를 나타냅니다. 기본적으로 특정 해상도와 작동 모드를 미리 설정합니다.
| 상수 | 값 | 설명 |
|---|---|---|
QPrinter::ScreenResolution | 0 | 인쇄 장치의 해상도를 화면 해상도로 설정합니다. 이 모드의 가장 큰 장점은 프린터에서 출력된 결과가 화면에 표시되는 결과와 거의 정확히 일치한다는 점입니다. 화면과 프린터의 글꼴 메트릭이 동일하므로 사용하기가 가장 간편합니다. 이 값이 기본값입니다. ScreenResolution은 HighResolution보다 낮은 품질의 출력을 생성하므로 초안용으로만 사용해야 합니다. |
QPrinter::PrinterResolution | 1 | 이 값은 더 이상 권장되지 않습니다. 프린터의 경우, Unix에서는 ScreenResolution과, Windows 및 macOS에서는 HighResolution과 동일합니다. PDF 인쇄의 경우 지원되지 않으며, 정의되지 않은 동작을 유발할 수 있습니다. 이 값을 사용하면 이식성이 떨어지는 프린터 코드가 생성될 수 있습니다. |
QPrinter::HighResolution | 2 | Windows에서는 사용 중인 프린터에 대해 정의된 해상도로 프린터 해상도를 설정합니다. PDF 인쇄의 경우, PDF 드라이버의 해상도를 1200 dpi로 설정합니다. 참고: QPrinter 장치에서 텍스트를 렌더링할때 , 포인트 단위로 지정된 텍스트 크기는 장치 자체에 지정된 해상도와 무관하다는 점을 유의해야 합니다. 따라서 텍스트와 그래픽을 결합할 때, 상대적인 크기가 예상대로 나오도록 하려면 글꼴 크기를 픽셀 단위로 지정하는 것이 유용할 수 있습니다. |
enum QPrinter::PrinterState
| 상수 | 상수 |
|---|---|
QPrinter::Idle | 0 |
QPrinter::Active | 1 |
QPrinter::Aborted | 2 |
QPrinter::Error | 3 |
enum QPrinter::Unit
이 열거형 유형은 페이지 및 용지 크기의 측정 단위를 지정하는 데 사용됩니다.
| 상수 | 값 |
|---|---|
QPrinter::Millimeter | 0 |
QPrinter::Point | 1 |
QPrinter::Inch | 2 |
QPrinter::Pica | 3 |
QPrinter::Didot | 4 |
QPrinter::Cicero | 5 |
QPrinter::DevicePixel | 6 |
Point와 DevicePixel의 차이점에 유의하십시오. Point 단위는 1인치의 72분의 1로 정의되는 반면, DevicePixel 단위는 해상도에 따라 달라지며 프린터의 실제 픽셀 또는 도트를 기준으로 합니다.
멤버 함수 설명
[explicit] QPrinter::QPrinter(QPrinter::PrinterMode mode = ScreenResolution)
지정된 ` mode`을 사용하여 새로운 프린터 객체를 생성합니다.
[explicit] QPrinter::QPrinter(const QPrinterInfo &printer, QPrinter::PrinterMode mode = ScreenResolution)
지정된 ` printer ` 및 ` mode`을 사용하여 새로운 프린터 객체를 생성합니다.
[virtual noexcept] QPrinter::~QPrinter()
프린터 객체를 파기하고 할당된 리소스를 모두 해제합니다. 인쇄 작업이 진행 중인 상태에서 프린터가 파기될 경우, 인쇄 작업에 영향을 미칠 수도 있고 미치지 않을 수도 있습니다.
bool QPrinter::abort()
현재 인쇄 작업을 중단합니다. 인쇄 작업이 성공적으로 중단된 경우 ` true `를 반환하고, ` printerState()`는 ` QPrinter::Aborted`를 반환하며, 그렇지 않은 경우 ` false`를 반환합니다.
인쇄 작업을 항상 중단할 수 있는 것은 아닙니다. 예를 들어, 모든 데이터가 프린터로 전송되었지만, 요청을 받았음에도 프린터가 작업을 취소할 수 없거나 취소하지 않는 경우가 있습니다.
bool QPrinter::collateCopies() const
‘다중 복사’가 선택된 상태에서 정렬 기능이 켜져 있으면 true 를 반환합니다. ‘다중 복사’가 선택된 상태에서 정렬 기능이 꺼져 있으면 false 를 반환합니다. 정렬 기능이 꺼져 있을 경우, 다음 페이지로 넘어가기 전에 각 페이지를 numCopies()만큼 반복해서 인쇄합니다. 정렬 기능이 켜져 있을 경우, 해당 페이지들의 다음 사본을 인쇄하기 전에 모든 페이지가 먼저 인쇄됩니다.
setCollateCopies()도 참조하십시오 .
QPrinter::ColorMode QPrinter::colorMode() const
현재 색상 모드를 반환합니다.
setColorMode()도 참조하십시오 .
int QPrinter::copyCount() const
인쇄될 사본 수를 반환합니다. 기본값은 1입니다.
setCopyCount() 및 supportsMultipleCopies()도 참조하십시오 .
QString QPrinter::creator() const
문서를 생성한 애플리케이션의 이름을 반환합니다.
setCreator()도 참조하십시오 .
QString QPrinter::docName() const
문서 이름을 반환합니다.
setDocName() 및 QPrintEngine::PrintEnginePropertyKey도 참조하십시오 .
QPrinter::DuplexMode QPrinter::duplex() const
현재의 이중 전송 모드를 반환합니다.
setDuplex()도 참조하십시오 .
bool QPrinter::fontEmbeddingEnabled() const
글꼴 임베딩이 활성화되어 있으면 true 를 반환합니다.
setFontEmbeddingEnabled()도 참조하십시오 .
int QPrinter::fromPage() const
인쇄할 페이지 범위 중 첫 번째 페이지의 번호를 반환합니다(“시작 페이지” 설정). 문서의 페이지 번호는 첫 번째 페이지를 1페이지로 하는 관례에 따라 매겨집니다.
기본적으로 이 함수는 0이라는 특수 값을 반환하며, 이는 "시작 페이지" 설정이 지정되지 않았음을 의미합니다.
참고: fromPage()와 toPage()가 모두 0을반환하면 , 문서 전체가 인쇄됨을 나타냅니다.
setFromTo(), toPage(), pageRanges()도 참조하십시오 .
bool QPrinter::fullPage() const
프린터 좌표계의 원점이 페이지 모서리에 있는 경우 true 를 반환하고, 인쇄 가능 영역의 가장자리에 있는 경우 false를 반환합니다.
자세한 내용과 주의 사항은 setFullPage()을 참조하십시오.
setFullPage() 및 QPagedPaintDevice::pageLayout()도 참조하십시오 .
bool QPrinter::isValid() const
현재 선택된 프린터가 시스템에 등록된 유효한 프린터이거나 순수 PDF 프린터인 경우 ` true `를 반환하고, 그렇지 않은 경우 ` false`를 반환합니다.
다른 오류를 감지하려면 QPainter::begin() 또는 QPrinter::newPage()의 출력 결과를 확인하십시오.
QPrinter printer;
printer.setOutputFormat(QPrinter::PdfFormat);
printer.setOutputFileName("/foobar/nonwritable.pdf");
QPainter painter;
if (! painter.begin(&printer)) { // 파일 열기에 실패함
qWarning("failed to open file, is it writable?");
return 1;
}
painter.drawText(10, 10, "Test");
if (! printer.newPage()) {
qWarning("failed in flushing page to disk, disk full?");
return 1;
}
painter.drawText(10, 10, "Test 2");
painter.end();setPrinterName()도 참조하십시오 .
[override virtual] bool QPrinter::newPage()
QPagedPaintDevice::newPage()를 재구현합니다.
프린터에 현재 페이지를 배출하고 새 페이지로 인쇄를 계속하도록 지시합니다. 성공하면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.
비활성 상태인 QPrinter 객체에서 newPage()를 호출하면 항상 실패합니다.
QString QPrinter::outputFileName() const
출력 파일의 이름을 반환합니다. 기본적으로 이 값은 빈 문자열입니다(프린터가 파일에 출력해서는 안 됨을 나타냄).
setOutputFileName() 및 QPrintEngine::PrintEnginePropertyKey도 참조하십시오 .
QPrinter::OutputFormat QPrinter::outputFormat() const
이 프린터의 출력 형식을 반환합니다.
setOutputFormat()도 참조하십시오 .
QPrinter::PageOrder QPrinter::pageOrder() const
현재 페이지 순서를 반환합니다.
기본 페이지 순서는 ` FirstPageFirst`입니다.
setPageOrder()도 참조하십시오 .
QRectF QPrinter::pageRect(QPrinter::Unit unit) const
unit 로 표현된 페이지의 직사각형을 반환합니다. 일반적으로 페이지의 테두리와 용지 사이에는 여백이 있기 때문에, 이 값은 paperRect()에서 반환되는 값보다 작습니다.
QPagedPaintDevice::pageLayout()도 참조하십시오 .
[override virtual] QPaintEngine *QPrinter::paintEngine() const
QPaintDevice::paintEngine() const를 재구현합니다.
프린터에서 사용하는 페인트 엔진을 반환합니다.
QRectF QPrinter::paperRect(QPrinter::Unit unit) const
unit 로 표현된 용지의 직사각형을 반환합니다. 이 값은 일반적으로 pageRect()보다 큽니다.
pageRect()도 참조하십시오 .
QPrinter::PaperSource QPrinter::paperSource() const
프린터의 용지 공급원을 반환합니다. 이 값은 ‘ Manual ’이거나 프린터 용지함 또는 용지 카세트입니다.
setPaperSource()도 참조하십시오 .
QPagedPaintDevice::PdfVersion QPrinter::pdfVersion() const
이 프린터에 대한 PDF 버전을 반환합니다. 기본값은 PdfVersion_1_4 입니다.
setPdfVersion()도 참조하십시오 .
QPrintEngine *QPrinter::printEngine() const
프린터에서 사용하는 인쇄 엔진을 반환합니다.
QString QPrinter::printProgram() const
프린터로 출력 결과를 전송하는 프로그램의 이름을 반환합니다.
기본값은 빈 문자열을 반환하는 것으로, 즉 ` QPrinter `는 시스템에 따라 적절한 방식을 자동으로 선택하려고 시도합니다. X11 환경에서만 이 값을 다른 값으로 설정하여 특정 출력 프로그램을 사용할 수 있습니다. 다른 플랫폼에서는 빈 문자열을 반환합니다.
setPrintProgram() 및 setPrinterSelectionOption()도 참조하십시오 .
QPrinter::PrintRange QPrinter::printRange() const
QPrinter 의 페이지 범위를 반환합니다. 인쇄 설정 대화 상자가 열린 후, 이 함수는 사용자가 선택한 값을 반환합니다.
setPrintRange()도 참조하십시오 .
QString QPrinter::printerName() const
프린터 이름을 반환합니다. 이 값은 처음에 기본 프린터 이름으로 설정됩니다.
setPrinterName()도 참조하십시오 .
QString QPrinter::printerSelectionOption() const
프린터 옵션 선택 문자열을 반환합니다. 이 기능은 print 명령이 명시적으로 설정된 경우에만 유용합니다.
기본값(빈 문자열)은 시스템에 따라 프린터를 선택해야 함을 의미합니다.
그 외의 값은 지정된 값을 사용해야 함을 의미합니다.
이 함수는 Windows와 Mac에서는 항상 빈 문자열을 반환합니다.
setPrinterSelectionOption() 및 setPrintProgram()도 참조하십시오 .
QPrinter::PrinterState QPrinter::printerState() const
프린터의 현재 상태를 반환합니다. 이 정보가 항상 정확한 것은 아닙니다(예를 들어, 프린터가 운영 체제에 상태를 보고할 수 없는 경우 등).
int QPrinter::resolution() const
setResolution() 함수나 프린터 드라이버를 통해 설정된 프린터의 현재 가정 해상도를 반환합니다.
setResolution()도 참조하십시오 .
void QPrinter::setCollateCopies(bool collate)
인쇄 대화 상자가 표시될 때 ‘정렬’ 확인란의 기본값을 설정합니다. collate 가 true인 경우, setCollateCopiesEnabled()가 활성화됩니다. 기본값은 false입니다. 이 값은 사용자가 인쇄 대화 상자에서 선택한 내용에 따라 변경됩니다.
collateCopies()도 참조하십시오 .
void QPrinter::setColorMode(QPrinter::ColorMode newColorMode)
프린터의 색상 모드를 ‘ newColorMode ’로 설정합니다. 이 값은 ‘ Color ’ 또는 ‘ GrayScale ’ 중 하나일 수 있습니다.
colorMode()도 참조하십시오 .
void QPrinter::setCopyCount(int count)
인쇄할 부수 수를 ‘ count ’로 설정합니다.
프린터 드라이버는 이 설정을 읽어들이고 지정된 부수만큼 인쇄합니다.
copyCount() 및 supportsMultipleCopies()도 참조하십시오 .
void QPrinter::setCreator(const QString &creator)
문서를 생성한 애플리케이션의 이름을 ` creator`로 설정합니다.
이 함수는 Qt의 X11 버전에서만 사용할 수 있습니다. 생성자 이름이 지정되지 않은 경우, 생성자는 "Qt" 뒤에 버전 번호가 붙은 형태로 설정됩니다.
creator()도 참조하십시오 .
void QPrinter::setDocName(const QString &name)
문서 이름을 name 로 설정합니다.
X11 환경에서 문서 이름은 예를 들어 QPrintDialog 의 기본 출력 파일 이름으로 사용됩니다. 프린터가 파일로 출력하는 경우 문서 이름이 파일 이름에 영향을 미치지 않는다는 점에 유의하십시오. 이 경우 setOutputFile() 함수를 사용하십시오.
docName() 및 QPrintEngine::PrintEnginePropertyKey도 참조하십시오 .
void QPrinter::setDuplex(QPrinter::DuplexMode duplex)
duplex 모드를 기반으로 양면 인쇄를 활성화합니다.
duplex()도 참조하십시오 .
[protected] void QPrinter::setEngines(QPrintEngine *printEngine, QPaintEngine *paintEngine)
이 함수는 ` QPrinter `의 하위 클래스에서 사용자 정의 출력 및 페인트 엔진(각각 `printEngine ` 및 ` paintEngine`)을 지정하는 데 사용됩니다.
QPrinter 이 함수는 엔진의 소유권을 인수하지 않으므로, 이러한 엔진 인스턴스는 직접 관리해야 합니다.
엔진을 변경하면 프린터 상태와 모든 속성이 재설정된다는 점에 유의하십시오.
printEngine(), paintEngine() 및 setOutputFormat()도 참조하십시오 .
void QPrinter::setFontEmbeddingEnabled(bool enable)
enable 에 따라 글꼴 임베딩을 활성화하거나 비활성화합니다.
fontEmbeddingEnabled()도 참조하십시오 .
void QPrinter::setFromTo(int from, int to)
from 및 to 로 지정된 번호가 붙은 페이지들을 포함하도록 인쇄할 페이지 범위를 설정합니다. 여기서 from 는 해당 범위의 첫 번째 페이지에 해당하고, to 는 마지막 페이지에 해당합니다.
참고: 문서의페이지 번호는 첫 번째 페이지를 1페이지로 하는 관례에 따라 매겨집니다. 그러나 from 과 to 가 모두 0으로 설정된 경우, 문서 전체가 인쇄됩니다.
이 함수는 주로 setup()을 호출할 때 사용자가 인쇄 대화 상자에서 재정의할 수 있는 기본값을 설정하는 데 사용됩니다.
fromPage(), toPage(), pageRanges()도 참조하십시오 .
void QPrinter::setFullPage(bool fp)
fp 가 true인 경우, 페이지 전체에 대한 그리기 기능을 지원하며, 그렇지 않은 경우 기기에서 보고하는 인쇄 가능 영역으로만 그리기를 제한합니다.
기본적으로 전체 페이지 인쇄는 비활성화되어 있습니다. 이 경우, ` QPrinter`의 좌표계 원점은 인쇄 가능 영역의 왼쪽 상단 모서리와 일치합니다.
전체 페이지 인쇄가 활성화된 경우, QPrinter 의 좌표계 원점은 용지 자체의 왼쪽 상단 모서리와 일치합니다. 이 경우, device metrics 는 {QPageSize}에 표시된 것과 정확히 동일한 치수를 보고합니다. 프린터의 여백으로 인해 물리적 페이지 전체에 인쇄하는 것이 불가능할 수 있으므로, 애플리케이션에서 여백을 직접 고려해야 합니다.
fullPage(), QPagedPaintDevice::pageLayout(), QPagedPaintDevice::setPageSize()도 참조하십시오 .
void QPrinter::setOutputFileName(const QString &fileName)
출력 파일 이름을 fileName 로 설정합니다.
이름을 null 또는 빈 문자열(0 또는 "")로 설정하면 파일로 출력하는 기능이 비활성화됩니다. 비어 있지 않은 이름을 설정하면 파일로 출력하는 기능이 활성화됩니다.
이 설정은 outputFormat()의 값을 변경할 수 있습니다. 파일 이름에 ".pdf" 확장자가 있으면 PDF가 생성됩니다. 파일 이름에 ".pdf" 이외의 확장자가 있으면, setOutputFormat()로 설정된 출력 형식이 사용됩니다.
QPrinter 각각 Qt의 크로스 플랫폼 PDF 인쇄 엔진을 사용합니다. 이 형식을 네이티브로 생성할 수 있는 경우(예: macOS는 자체 인쇄 엔진을 통해 PDF를 생성할 수 있음), 출력 형식을 다시 NativeFormat 로 설정하십시오.
outputFileName() 및 setOutputFormat()도 참조하십시오 .
void QPrinter::setOutputFormat(QPrinter::OutputFormat format)
이 프린터의 출력 형식을 ‘ format ’로 설정합니다.
format 가 현재 설정된 값과 동일할 경우 변경 사항이 적용되지 않습니다.
format 가 NativeFormat 인 경우, printerName 가 기본 프린터로 설정됩니다. 유효한 프린터가 구성되어 있지 않으면 변경 사항이 적용되지 않습니다. NativeFormat 를 특정 printerName 로 설정하려면 setPrinterName()를 사용하십시오.
outputFormat() 및 setPrinterName()도 참조하십시오 .
void QPrinter::setPageOrder(QPrinter::PageOrder pageOrder)
페이지 순서를 pageOrder 로 설정합니다.
페이지 순서는 QPrinter::FirstPageFirst 또는 QPrinter::LastPageFirst 일 수 있습니다. 애플리케이션은 페이지 순서를 읽어들이고 그에 따라 인쇄할 책임이 있습니다.
이 함수는 주로 사용자가 인쇄 대화 상자에서 재정의할 수 있는 기본값을 설정하는 데 유용합니다.
이 함수는 X11 환경에서만 지원됩니다.
pageOrder()도 참조하십시오 .
void QPrinter::setPaperSource(QPrinter::PaperSource source)
용지 공급원 설정을 ‘ source ’으로 설정합니다.
Windows 전용: 이 옵션은 인쇄 중에 변경할 수 있으며, 다음에 newPage()를 호출할 때부터 적용됩니다.
paperSource()도 참조하십시오 .
void QPrinter::setPdfVersion(QPagedPaintDevice::PdfVersion version)
이 프린터의 PDF 버전을 ‘ version ’으로 설정합니다.
version 가 현재 설정된 값과 동일한 경우 변경 사항이 적용되지 않습니다.
pdfVersion()도 참조하십시오 .
void QPrinter::setPrintProgram(const QString &printProg)
인쇄 작업을 수행할 프로그램의 이름을 ` printProg`로 설정합니다.
X11 환경에서는 이 함수가 PDF 출력 시 호출할 프로그램을 설정합니다. 다른 플랫폼에서는 아무런 효과가 없습니다.
printProgram()도 참조하십시오 .
void QPrinter::setPrintRange(QPrinter::PrintRange range)
인쇄 범위 옵션을 range 로 설정합니다.
printRange()도 참조하십시오 .
void QPrinter::setPrinterName(const QString &name)
프린터 이름을 ‘ name ’로 설정합니다.
name 가 비어 있는 경우 출력 형식은 PdfFormat 로 설정됩니다.
name 가 유효한 프린터가 아닌 경우 변경 사항이 적용되지 않습니다.
name 가 유효한 프린터인 경우, 출력 형식은 NativeFormat 로 설정됩니다.
printerName(), isValid(), setOutputFormat()도 참조하십시오 .
void QPrinter::setPrinterSelectionOption(const QString &option)
프린터 선택에 ` option `를 사용하도록 프린터를 설정합니다. ` option `는 기본적으로 null이며(이는 Qt가 올바르게 추측할 수 있을 만큼 지능적이어야 함을 의미합니다), 특정 프린터 선택 옵션을 사용하려면 다른 값으로 설정할 수 있습니다.
프린터가 활성화된 상태에서 프린터 선택 옵션이 변경되면, 현재 인쇄 작업에 영향을 미칠 수도 있고 미치지 않을 수도 있습니다.
이 함수는 Windows나 Mac에서는 아무런 효과가 없습니다.
printerSelectionOption() 및 setPrintProgram()도 참조하십시오 .
void QPrinter::setResolution(int dpi)
프린터가 dpi 또는 dpi 에 최대한 가깝게 출력하도록 요청합니다.
이 설정은 예를 들어 QPainter::viewport() 함수가 반환하는 좌표계에 영향을 미칩니다.
모든 플랫폼에서 이 설정이 적용되려면 QPainter::begin()을 호출하기 전에 이 함수를 호출해야 합니다.
resolution() 및 QPagedPaintDevice::setPageSize()도 참조하십시오 .
QList<QPrinter::PaperSource> QPrinter::supportedPaperSources() const
이 프린터에서 지원하는 용지 크기를 반환합니다.
반환값은 ` QPrinter::PaperSource ` 열거형 항목 중 하나와 일치하는 값이거나 드라이버별 값입니다. 드라이버별 값은 `wingdi.h`에 선언된 상수 `DMBIN_USER`보다 큽니다.
경고: 이 함수는 Windows에서만 사용할 수 있습니다.
QList<int> QPrinter::supportedResolutions() const
프린터가 지원한다고 표시하는 해상도(인치당 도트 수를 나타내는 정수 목록) 목록을 반환합니다.
모든 인쇄가 PDF로 직접 이루어지는 X11 환경에서는, 이 함수는 항상 PDF 해상도, 즉 72(72 dpi – 단, PrinterMode 참조)만 포함하는 단일 항목 리스트를 반환합니다.
bool QPrinter::supportsMultipleCopies() const
프린터가 하나의 작업으로 동일한 문서를 여러 부 인쇄하는 기능을 지원하는 경우 ` true `를 반환하고, 그렇지 않은 경우 `false`를 반환합니다.
대부분의 시스템에서 이 함수는 true를 반환합니다. 그러나 CUPS를 지원하지 않는 X11 시스템에서는 이 함수가 false를 반환합니다. 즉, 응용 프로그램에서 필요한 횟수만큼 동일한 문서를 인쇄하여 부수 수를 처리해야 합니다.
setCopyCount() 및 copyCount()도 참조하십시오 .
int QPrinter::toPage() const
인쇄할 페이지 범위 중 마지막 페이지의 번호(“종료 페이지” 설정)를 반환합니다. 문서의 페이지 번호는 첫 번째 페이지를 1페이지로 하는 규칙에 따라 매겨집니다.
기본적으로 이 함수는 0이라는 특수 값을 반환하며, 이는 “종료 페이지” 설정이 지정되지 않았음을 의미합니다.
참고: fromPage()와 toPage()가 모두 0을반환하면 , 문서 전체가 인쇄됨을 나타냅니다.
프로그래머는 이 설정을 읽고 그에 따라 인쇄할 책임이 있습니다.
setFromTo(), fromPage() 및 pageRanges()도 참조하십시오 .
© 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.