Ausdruck eines TMemo-Objektes

Ausgehend, dass

#include<vcl/printers.hpp>
 
.....

void druck();
{
int x;
static int lineHoehe,lineCount,lineSeite;

//Printer Setup Dialog aufrufen
if(!PrinterSetupDialog1->Execute())
	return;

//Font festlegen
Printer()->Canvas->Font->Name="Arial";
Printer()->Canvas->Font->Size=10;

//Höhe einer Zeile berechnen
lineHoehe=abs(MulDiv(Printer()->Canvas->Font->Size,GetDeviceCaps(Printer()->Handle,LOGPIXELSY),72));
lineHoehe*=1.4;
lineSeite=(Printer()->PageHeight/lineHoehe)-4;

//Startzeile zum drucken festlegen
lineCount=4;

//Name für Druckjob festlegen
Printer()->Title="Memo";

//Drucken beginnen
Printer()->BeginDoc();

//In Position x-Achse 300 eine Überschrift
Printer()->Canvas->TextOut(300,2*lineHoehe,"Memo");

//Alle Zeilen von Memo auf x-Achse 200 ausgeben
for(x=0;x<Memo->Lines->Count;x++)
	{
	Printer()->Canvas->TextOut(200,lineCount*lineHoehe,Memo->Lines->Strings[x]);
	lineCount++;
	
	// ggf. neue Seite
	if(lineCount==lineSeite)
		{
		lineCount=4;
		Printer()->NewPage();
		}
	}

//Drucken Ende
Printer()->EndDoc();
}

Zur Übersicht