Ausdruck erfolg nur auf einer Zeile
-
Hallo,
ich habe da ein Problem mit dem Ausdrucken eines Textes. Ich hole mir aus einer Datei den Inhalt und speicher ihn in ein dyn. erzeugtes Array. Dann übergebe ich diesen Inhalt an die Funktion TexOut(...) um das ganze auszudrucken. Dabei druckt er nur auf einer Line und geht nicht in die nächste Zeile. Wenn der Rand erreicht ist geht er am anfang der selben Zeile wieder zurück und überschreibt den Text der schun gedruckt wurde. Die Steuerzeichen habe ich im Text (siehe unten) gestzt (CR und LF) aber trotzdem druckt er auf der selben Zeile. Weis jemand woran das liegt bzw. wie ich das beheben kann. Muss ich eventuell ne andere Fuktion als TextOut benutzen ? Im voraus vielen Dank
MfG
///////////////// Quelltext ///////////////////////////////////////////////////
void CLVTestDlg::OnPrinterr()
{
static DOCINFO di = { sizeof(DOCINFO), TEXT("Logfile") };
HDC hdcPrinter;hdcPrinter = GetPrinterDC();
int xPage = GetDeviceCaps(hdcPrinter, HORZRES);
int yPage = GetDeviceCaps(hdcPrinter, VERTRES);if(hdcPrinter != NULL)
{
if(StartDoc (hdcPrinter, &di) > 0)
{
if(StartPage(hdcPrinter) > 0)
{
CFile datei(m_strPathLogTMP, CFile::modeRead);
DWORD size_buff = datei.GetLength();
TCHAR* pStr = new TCHAR[size_buff];
datei.Read(pStr, size_buff);
datei.Close();TextOut(hdcPrinter, 10, 10, pStr, 100); // Problem
delete[] pStr;if(EndPage(hdcPrinter) > 0)
EndDoc(hdcPrinter); }
}
}
}
else
MessageBox("Es ist ein Fehler beim Drucken aufgetreten !", "Fehler !!!");DeleteDC(hdcPrinter);
}/////////////////////// Datei-Inhalt als Logfile ///////////////////////////////
Es ist 5 mal ein Fehler an Station 6 aufgetreten
Datum: 14.04.2003
Start: 08:00
Ende: 08:05Es ist 2 mal ein Fehler an Station 8 aufgetreten
Datum: 14.04.2003
Start: 09:00
Ende: 09:15Es ist 1 mal ein Fehler an Station 1 aufgetreten
Datum: 14.04.2003
Start: 10:10
Ende: 10:11...
-
CDC::ExtTextOut(..), CDC::DrawText(..) oder ::DrawTextEx(..)
-
Danke
-
Smilies sind ja ganz schön, dumm nur wenn man die oben genannten Beispiel nicht richtig schreiben kann, ...