Da bis jetzt noch keiner geantwortet hat...
Also ich musste auch mal das Querformat dem Treiberlein mitteilen, hier die wichtigsten Auszüge (mit Visual C):
HANDLE hPrinter;
LPDEVMODE DruckerInfos;
.
.
.
if(!(OpenPrinter("\\\\EXTRA\\395_q.logistik.extra",&hPrinter,NULL)))
{
MessageBox("Kann Drucker nicht öffnen !");
return;
}
wert=DocumentProperties(NULL,hPrinter,"\\\\EXTRA\\395_q.logistik.extra",NULL,NULL,0);
DruckerInfos=(LPDEVMODE)malloc(wert);
DocumentProperties(NULL,hPrinter,"\\\\EXTRA\\395_q.logistik.extra",DruckerInfos,NULL,DM_OUT_BUFFER); // Schritt zwei
DruckerInfos->dmOrientation=DMORIENT_LANDSCAPE ; // hier wird Querformat eingestellt !!!
.
.
wert=DocumentProperties(NULL,hPrinter,"\\\\EXTRA\\395_q.logistik.extra",DruckerInfos,DruckerInfos,DM_IN_BUFFER | DM_OUT_BUFFER);
if (wert != IDOK)
{
/* if failure, cleanup and return failure */
free(DruckerInfos);
return ;
}
ClosePrinter(hPrinter);
if(!(ghdc=CreateDC("HP LaserJet 2100 Series PCL 6","\\\\EXTRA\\395_q.logistik.extra","\\\\EXTRA\\395_q.logistik.extra",DruckerInfos)))
.
.
[/PHP]
Also nachdem man seine Druckereinstellungen vorgenommen hat wir ein Gerätekontext am Schluss erstellt, indem man eben seine Seite "zeichnet". Obs da beim Borland was "schnelleres" gibt kann ich Dir leider net sagen.