Einzelnen Beitrag anzeigen

1aa

Registriert seit: 28. Sep 2008
48 Beiträge
 
Delphi XE5 Enterprise
 
#1

Problem bei Komponenten Drucken

  Alt 13. Okt 2013, 15:30
Ich versuche den Inhalt eines Panels mit unten stehender funktion zu drucken
funktioniert soweit auch aber sowohl schrift(vom TLable) als auch Bilder (TImage) werden sehr Pixelig ausgedruckt.

Mein Problem ist wie ich zB. die auflösung anpassen kann.

oder sollte ich andere Komponenten verwenden?


Delphi-Quellcode:
Procedure PrintWinControl(hWND: HWND; iLeft, iTop, iWidth, iHeight: integer);
var
  c: TCanvas;
begin
  iLeft := iLeft * 10;
  iTop := iTop * 10;
  BringWindowToTop(hWND);
  c:= TCanvas.Create;
  c.Handle:= GetWindowDC(hWND);
  try
    printer.begindoc;
    //Windows.SetMapMode(printer.Canvas.Handle, MM_LOMETRIC);
    printer.Canvas.CopyRect(Rect(iLeft, iTop, iLeft + iWidth * 10, iTop + iHeight * 10), c, Rect(0, 0, iWidth, iHeight));
    printer.enddoc;
  finally
    ReleaseDC(hWND, c.handle);
    c.Free;
  end;
end;

Geändert von 1aa (13. Okt 2013 um 17:37 Uhr)
  Mit Zitat antworten Zitat