Więc tak.
Mam problem z wydrukowaniem obrazka BMP umieszczonego w scrolboxie. Drukuje się jedynie tyle ile jest widoczne a nie obszar poza scrolbosem, Obrazek po prostu jest wyższy niż wysokość scrolboxa. Część niewidoczna na podglądzie wydruku jest czarna. Drukuję do PDFa za pomocą PDFbuilder, by nie marnować papieru ;]
Po kliknięciu w Button1 wywołuję :
procedure TForm2.Button1Click(Sender: TObject);
var myBitMap : TBitMap;
myPrinter : Tprinter;
begin
myBitMap := TBitMap.Create;
myBitMap.LoadFromDevice(scrollbox1.Canvas.Handle);
MyPrinter := Printer;
MyPrinter.BeginDoc;
myPrinter.Canvas.CopyRect(Classes.Rect(0, 0, myPrinter.PaperSize.Width, myPrinter.PaperSize.Height),
myBitMap.Canvas, Classes.Rect(0, 0, myBitMap.Width, 1400));
MyPrinter.EndDoc;
myBitMap.Free;
Tworzy się PDF ale tylko o wysokości scrolbox.height
, reszta jest czarna
Gdy linijkę:
myBitMap.LoadFromDevice(scrollbox1.Canvas.Handle);
zmienię na:
myBitMap.LoadFromDevice(image1.Canvas.Handle);
już jest niby prawidłowo, drukuje się kompletny Image1 ale bez naniesionych na niego TLabelów i innych komponentów.
W tym co robię chcę by Image1 był tłem, na który naniosę tekst i ma być wszystko razem wydrukowane.
uf, mam nadzieję że jasno to opisałem.
dodanie znaczników <code class="delphi"> - fp
<code=delphi>
kod</code>
, a jego składnia zostanie pokolorowana (tak jak widzisz), dzięki czemu jego analiza będzie łatwiejsza;