Sdílet prostřednictvím


CPrintInfo – struktura

Ukládá informace o úloze tisku nebo náhledu.

Syntaxe

struct CPrintInfo

Členové

Veřejné metody

Název Popis
CPrintInfo::GetFromPage Vrátí číslo první stránky, která se vytiskne.
CPrintInfo::GetMaxPage Vrátí číslo poslední stránky dokumentu.
CPrintInfo::GetMinPage Vrátí číslo první stránky dokumentu.
CPrintInfo::GetOffsetPage Vrátí počet stránek předcházejících první stránce položky DocObject, která se vytiskne v kombinované tiskové úloze DocObject.
CPrintInfo::GetToPage Vrátí číslo poslední stránky, která se vytiskne.
CPrintInfo::SetMaxPage Nastaví číslo poslední stránky dokumentu.
CPrintInfo::SetMinPage Nastaví číslo první stránky dokumentu.

Veřejné datové členy

Název Popis
CPrintInfo::m_bContinuePrinting Obsahuje příznak označující, jestli má architektura pokračovat ve smyčce tisku.
CPrintInfo::m_bDirect Obsahuje příznak označující, jestli se dokument tiskne přímo (bez zobrazení dialogového okna Tisk).
CPrintInfo::m_bDocObject Obsahuje příznak označující, jestli je dokument vytištěný objekt DocObject.
CPrintInfo::m_bPreview Obsahuje příznak označující, jestli se dokument náhleduje.
CPrintInfo::m_dwFlags Určuje operace tisku DocObject.
CPrintInfo::m_lpUserData Obsahuje ukazatel na strukturu vytvořenou uživatelem.
CPrintInfo::m_nCurPage Určuje číslo stránky, která se právě vytiskne.
CPrintInfo::m_nJobNumber Určuje číslo úlohy přiřazené operačním systémem pro aktuální tiskovou úlohu.
CPrintInfo::m_nNumPreviewPages Určuje počet stránek zobrazených v okně náhledu; buď 1, nebo 2.
CPrintInfo::m_nOffsetPage Určuje posun první stránky konkrétního DocObjectu v kombinované tiskové úloze DocObject.
CPrintInfo::m_pPD Obsahuje ukazatel na CPrintDialog objekt použitý pro dialogové okno Tisk.
CPrintInfo::m_rectDraw Určuje obdélník definující aktuální použitelnou oblast stránky.
CPrintInfo::m_strPageDesc Obsahuje formátovací řetězec pro zobrazení čísla stránky.

Poznámky

CPrintInfo je struktura a nemá základní třídu.

Architektura vytvoří objekt CPrintInfo pokaždé, když je vybrán příkaz Print nebo Print Preview a po dokončení příkazu ho zničí.

CPrintInfo obsahuje informace o tiskové úloze jako celku, například o rozsahu stránek, které se mají vytisknout, a o aktuálním stavu tiskové úlohy, například o aktuálně vytištěné stránce. Některé informace jsou uloženy v přidružené CPrintDialog objektu; tento objekt obsahuje hodnoty zadané uživatelem v dialogovém okně Tisk.

Objekt CPrintInfo se předává mezi architekturou a třídou zobrazení během procesu tisku a slouží k výměně informací mezi těmito dvěma. Architektura například informuje třídu zobrazení, která stránka dokumentu se má vytisknout přiřazením hodnoty m_nCurPage členovi CPrintInfo; třída zobrazení načte hodnotu a provede skutečný tisk zadané stránky.

Dalším příkladem je případ, kdy délka dokumentu není známa, dokud se nevytiskne. V takovém případě se testy tříd zobrazení pro konec dokumentu při každém vytištění stránky. Po dosažení konce třída zobrazení nastaví m_bContinuePrinting člena CPrintInfo na HODNOTU NEPRAVDA. To informuje architekturu, aby zastavila smyčku tisku.

CPrintInfo používá členské funkce CView uvedené v části Viz také. Další informace o architektuře tisku, kterou poskytuje knihovna tříd Microsoft Foundation, naleznete v tématu Rámová okna a Architektura dokumentů/zobrazení a články Tisk a tisk: Vícestránkové dokumenty.

Hierarchie dědičnosti

CPrintInfo

Požadavky

Hlavička: afxext.h

CPrintInfo::GetFromPage

Voláním této funkce načtěte číslo první stránky, která se má vytisknout.

UINT GetFromPage() const;

Návratová hodnota

Číslo první stránky, která se má vytisknout.

Poznámky

Toto je hodnota zadaná uživatelem v dialogovém okně Tisk a je uložena v objektu CPrintDialog m_pPD , na který odkazuje člen. Pokud uživatel nezadá hodnotu, výchozí hodnota je první stránka dokumentu.

CPrintInfo::GetMaxPage

Voláním této funkce načtěte číslo poslední stránky dokumentu.

UINT GetMaxPage() const;

Návratová hodnota

Číslo poslední stránky dokumentu

Poznámky

Tato hodnota je uložena v objektu CPrintDialog odkazovaném m_pPD členem.

CPrintInfo::GetMinPage

Voláním této funkce načtěte číslo první stránky dokumentu.

UINT GetMinPage() const;

Návratová hodnota

Číslo první stránky dokumentu

Poznámky

Tato hodnota je uložena v objektu CPrintDialog odkazovaném m_pPD členem.

CPrintInfo::GetOffsetPage

Voláním této funkce načtěte posun při tisku více položek DocObject z klienta DocObject.

UINT GetOffsetPage() const;

Návratová hodnota

Počet stránek před první stránkou položky DocObject, která se vytiskne v kombinované tiskové úloze DocObject.

Poznámky

Na tuto hodnotu odkazuje m_nOffsetPage člen. První stránka dokumentu bude číslovat m_nOffsetPage hodnotu + 1 při tisku jako DocObject s jinými aktivními dokumenty. Člen m_nOffsetPage je platný pouze v případě, že m_bDocObject je hodnota PRAVDA.

CPrintInfo::GetToPage

Voláním této funkce načtěte číslo poslední stránky, která se má vytisknout.

UINT GetToPage() const;

Návratová hodnota

Číslo poslední stránky, která se má vytisknout.

Poznámky

Toto je hodnota zadaná uživatelem v dialogovém okně Tisk a je uložena v objektu CPrintDialog m_pPD , na který odkazuje člen. Pokud uživatel nezadá hodnotu, výchozí hodnota je poslední stránka dokumentu.

CPrintInfo::m_bContinuePrinting

Obsahuje příznak označující, jestli má architektura pokračovat ve smyčce tisku.

Poznámky

Pokud provádíte stránkování v době tisku, můžete tento člen nastavit na HODNOTU FALSE v přepsání CView::OnPrepareDC po dosažení konce dokumentu. Tuto proměnnou nemusíte upravovat, pokud jste zadali délku dokumentu na začátku tiskové úlohy pomocí SetMaxPage členské funkce. Člen m_bContinuePrinting je veřejná proměnná typu BOOL.

CPrintInfo::m_bDirect

Architektura nastaví tento člen na TRUE, pokud dialogové okno Tisk bude vynecháno pro přímý tisk; JINAK NEPRAVDA.

Poznámky

Dialogové okno Tisk se obvykle vynechá při tisku z prostředí nebo při tisku pomocí ID příkazu ID_FILE_PRINT_DIRECT.

Obvykle tento člen nezměníte, ale pokud ho změníte, změňte ho před voláním CView::D oPreparePrinting v přepsání CView::OnPreparePrinting.

CPrintInfo::m_bDocObject

Obsahuje příznak označující, jestli je dokument vytištěný objekt DocObject.

Poznámky

Členové m_dwFlags dat a m_nOffsetPage jsou neplatné, pokud tento příznak není TRUE.

CPrintInfo::m_bPreview

Obsahuje příznak označující, jestli se dokument náhleduje.

Poznámky

To je nastaveno rozhraním v závislosti na tom, který příkaz uživatel spustil. Dialogové okno Tisk se nezobrazuje pro úlohu náhledu tisku. Člen m_bPreview je veřejná proměnná typu BOOL.

CPrintInfo::m_dwFlags

Obsahuje kombinaci příznaků určujících operace tisku DocObject.

Poznámky

Platné pouze v případě, že datový člen m_bDocObject má hodnotu TRUE.

Příznaky můžou být jedna nebo více následujících hodnot:

  • PRINTFLAG_MAYBOTHERUSER

  • PRINTFLAG_PROMPTUSER

  • PRINTFLAG_USERMAYCHANGEPRINTER

  • PRINTFLAG_RECOMPOSETODEVICE

  • PRINTFLAG_DONTACTUALLYPRINT

  • PRINTFLAG_FORCEPROPERTIES

  • PRINTFLAG_PRINTTOFILE

CPrintInfo::m_lpUserData

Obsahuje ukazatel na strukturu vytvořenou uživatelem.

Poznámky

Můžete ho použít k ukládání dat specifických pro tisk, která nechcete ukládat do třídy zobrazení. Člen m_lpUserData je veřejná proměnná typu LPVOID.

CPrintInfo::m_nCurPage

Obsahuje číslo aktuální stránky.

Poznámky

Architektura volá CView::OnPrepareDC pro každou stránku dokumentu a CView::OnPrint jednou zadává jinou hodnotu pro tohoto člena pokaždé; jeho hodnoty jsou v rozsahu od hodnoty vrácené GetFromPage touto vrácené GetToPage. Tento člen můžete použít v přepsání CView::OnPrepareDC a CView::OnPrint vytisknout zadanou stránku dokumentu.

Při prvním vyvolání režimu náhledu načte architektura hodnotu tohoto člena, aby určila, která stránka dokumentu má být na začátku náhledu. Hodnotu tohoto člena můžete nastavit v přepsání CView::OnPreparePrinting tak, aby se při zadávání režimu náhledu zachovala aktuální pozice uživatele v dokumentu. Člen m_nCurPage je veřejná proměnná typu UINT.

CPrintInfo::m_nJobNumber

Určuje číslo úlohy přiřazené operačním systémem pro aktuální tiskovou úlohu.

Poznámky

Tato hodnota může být SP_ERROR, pokud se úloha ještě nevytiskla (to znamená, že pokud CPrintInfo je objekt nově vytvořený a ještě nebyl použit k tisku), nebo pokud při spuštění úlohy došlo k chybě.

CPrintInfo::m_nNumPreviewPages

Obsahuje počet stránek zobrazených v režimu náhledu; může to být buď 1, nebo 2.

Poznámky

Člen m_nNumPreviewPages je veřejná proměnná typu UINT.

CPrintInfo::m_nOffsetPage

Obsahuje počet stránek předcházejících první stránce konkrétního Objektu DocObject v kombinované tiskové úloze DocObject.

CPrintInfo::m_pPD

Obsahuje ukazatel na CPrintDialog objekt použitý k zobrazení dialogového okna Tisk pro tiskovou úlohu.

Poznámky

Člen m_pPD je veřejná proměnná deklarovaná jako ukazatel na CPrintDialog.

CPrintInfo::m_rectDraw

Určuje použitelnou oblast výkresu stránky v logických souřadnicích.

Poznámky

Můžete na to odkazovat v přepsání CView::OnPrint. Pomocí tohoto člena můžete sledovat, jaká oblast zůstane použitelná po vytištění záhlaví, zápatí atd. Člen m_rectDraw je veřejná proměnná typu CRect.

CPrintInfo::m_strPageDesc

Obsahuje formátovací řetězec použitý k zobrazení čísel stránek během náhledu tisku; tento řetězec se skládá ze dvou podřetězců, jednoho pro jednostránkový zobrazení a jednoho pro zobrazení s dvojitou stránkou, přičemž každý je ukončen znakem \n.

Poznámky

Rozhraní používá výchozí hodnotu Page %u\nPages %u-%u\n. Pokud chcete pro čísla stránek použít jiný formát, zadejte v přepsání CView::OnPreparePrintingřetězec formátu . Člen m_strPageDesc je veřejná proměnná typu CString.

CPrintInfo::SetMaxPage

Voláním této funkce určíte číslo poslední stránky dokumentu.

void SetMaxPage(UINT nMaxPage);

Parametry

nMaxPage
Číslo poslední stránky dokumentu

Poznámky

Tato hodnota je uložena v objektu CPrintDialog odkazovaném m_pPD členem. Pokud je délka dokumentu známa před tiskem, zavolejte tuto funkci z přepsání CView::OnPreparePrinting. Pokud délka dokumentu závisí na nastavení určeném uživatelem v dialogovém okně Tisk, zavolejte tuto funkci z přepsání CView::OnBeginPrinting. Pokud není délka dokumentu známá, dokud se nevytiskne, použijte m_bContinuePrinting člena k řízení smyčky tisku.

Příklad

Podívejte se na příklad pro CView::OnPreparePrinting.

CPrintInfo::SetMinPage

Voláním této funkce určíte číslo první stránky dokumentu.

void SetMinPage(UINT nMinPage);

Parametry

nMinPage
Číslo první stránky dokumentu

Poznámky

Čísla stránek obvykle začínají číslem 1. Tato hodnota je uložena v objektu CPrintDialog odkazovaném m_pPD členem.

Viz také

MFC – ukázka DIBLOOK
Graf hierarchie
CView::OnBeginPrinting
CView::OnEndPrinting
CView::OnEndPrintPreview
CView::OnPrepareDC
CView::OnPreparePrinting
CView::OnPrint