Syntax:
INT LlRTFDisplay(HLLJOB hJob, HLLRTFOBJ hRTF, HDC hDC, _PRECT pRC, BOOL bRestart, LLPUINT pnState);
Aufgabe:
Gibt den Inhalt des RTF-Objektes in einem beliebigen Gerätekontext aus. Dies kann verwendet werden, um den Inhalt etwa zu drucken oder in einem eigenen Fenster darzustellen.
Parameter
hJob: List & Label-Job-Handle
hRTF: Handle auf RTF-Editorobjekt
hDC: Gerätekontext für die Ausgabe. Kann auch NULL sein, in diesem Fall wird der Standarddrucker DC verwendet.
pRC: Zeiger auf Ausgaberechteck. Kann auch NULL sein, in diesem Fall wird für einen Druckerkontext die ganze bedruckbare Seite verwendet. Andernfalls muss die Angabe in logischen Koordinaten erfolgen (mm/10, inch/100 etc.), sofern der DC kein Bildschirm-DC ist.
bRestart: Wenn TRUE, dann wird der Inhalt des Objektes (wieder) von Anfang an dargestellt, ansonsten wird der Text von der letzen Ausgabe fortgesetzt, um eine mehrseitige Ausgabe zu bekommen.
pnState: Ausgabestatus
Rückgabewert:
Fehlercode
Beispiel:
// Drucker-Devicecontext erzeugen
HDC hDC = CreateDC(NULL,"\\\\prnsrv\\standard",NULL,NULL);
RECT rc = {0,0,1000,1000};
BOOL bFinished = FALSE;
INT nPage = 0;
// Dokument initialisieren
StartDoc(hDC,NULL);
while (!bFinished)
{
nPage++;
UINT nState = 0;
// Seite initialisieren
StartPage(hDC);
// DC vorbereiten
SetMapMode(hDC,MM_ISOTROPIC);
SetWindowOrgEx(hDC,rc.left,rc.top,NULL);
SetWindowExtEx(hDC,rc.right-rc.left,rc.bottom-rc.top,NULL);
SetViewportOrgEx(hDC,0,0,NULL);
SetViewportExtEx(hDC,GetDeviceCaps(hDC,HORZRES),
GetDeviceCaps(hDC,VERTRES),NULL);
// RTF-Text auf Drucker ausgeben
BOOL bFinished =
(LlRTFDisplay(hJob,hRTF,hDC,&rc,nPage
==
1,&nState) == LL_WRN_PRINTFINISHED);
// Seite bschliessen
EndPage(hDC);
}
EndDoc(hDC);
Siehe auch:
LlRTFCreateObject