Jak wydrukować w delphi?

0

Witam jestem tutaj nowy i mam od razu do was pytanko ;P
Na początek pochwale się że użyłem opcji szukaj http://4programmers.net/Forum/search.php?q=drukowanie&t=AND&f%5B%5D=1&mode=topic&sort=id&order=DESC&o=text&limit=0
Przejżałem wszystkie tematy np.
http://4programmers.net/Forum/214914?h=drukowanie#214914
http://4programmers.net/faq.php?id=571
http://4programmers.net/article.php?id=10
http://4programmers.net/article.php?id=43
http://4programmers.net/Forum/156909?h=drukowanie#156909
i inne :( ale nie znalazłem nic co by mi pomogło [???]
Mianowicie przez somo polecenie print drukuje mi ale drukuje tylko to co widać na formatce, MAXymalne rozciągnięcie formatki też nic nie daje bo nie mieści się na kartke A4). Na formatce mam położony panel a na panelu Texty i Edity(panel rozmiarowo jak kartka A4) i właśnie nie wiem jak to zrobić aby mi z tego Panela wydrukowało.
Bardzo proszę o jakąkolwiek pomoc [green]

0

Sugeruję przyjrzeć się obiektowi TPrinter z modułu Printers i metodzie GetFormImage.

0

Też <ort>prubowałem </ort>ale nie moge tego ugryźć :-/

0

Jesli chcesz wydrukowac RichEdit, to

procedure Tjakaś_forma.Print1Click(Sender: TObject);
begin
  if PrintDialog1.Execute then
  begin
    RichEdit1.Print(SaveDialog1.FileName);
  end;
end;

...i oczywiscie nalezy umiescic komponenty SaveDialog, PrintDialog i... RichEdit :)

0

Moze cos pomoge ;P

w komponentach SynEdit jest tam fajne demo z drukowaniem zobacz sobie :) moze cos sie przyda :) sciagnij jak juz to SynPad'a tam ted pieknie jest pokazane co i jak ....

0

Ano jest... tak więc ab wydrukować SynEdit:

procedure TForm1.PlikButtonDrukujClick(Sender: TObject);
begin
  if PrintDialog1.Execute then
  begin
    SynPrint.SynEdit:=SynEdit;
    SynPrint.SynEditPrint1;
  end;
end;

procedure TForm1.ButtonUstawieniaDrukarkiExecute(Sender: TObject);
begin
  PrinterSetupDialog1.Execute;
end;

Na formatce umieść następujące komponenty: SynEdit:D, PrintDialog, PrinterSetupDialog, SynEditPrint <- o ile sie nie myle ;)

Pozdro [green]

0

Mam dokładnie ten sam problem. GetFormImage drukuje tylko to co widać na ekranie i obcina to co jest poza nim. Wiem, że niektóre komponenty takie jak np. RichEdit mają mozliwość drukowania, ale mi nie chodzi o zawartość pojedyńczego komponentu, tylko całość formularza, z wszystkimi TImage, TLabel, TEdit itp. Da sie to w ogóle zrobić?

0

Już to rozgryzłem. paintTo to piekna opcja :]

0

Aby nie otwierac nowego tematu npisze tutaj, jest problemik (jak dla mnie)

if PrintDialog.Execute then
begin
  SynEditPrint.SynEdit := SynEdit1;
  SynEditPrint.Print;
end;

Niby OK drukuje ... ale ... jak chce wydrukować nie na drukarke ale do formatu PDF (pdf995) przy pomocy wirtualnej drukarki to juz nie drukuje w czym blad ?? Najlepsze, ze demo zamieszczone w SynEdit dziala :| nie wiem od czego to zalezy co trzeba dopisa aby drukowalo tez przy pomocy tej 2giej "drukarki"...

0
virus_jc napisał(a)

Ano jest... tak więc ab wydrukować SynEdit:

procedure TForm1.PlikButtonDrukujClick(Sender: TObject);
begin
  if PrintDialog1.Execute then
  begin
    SynPrint.SynEdit:=SynEdit;
    SynPrint.SynEditPrint1;
  end;
end;

procedure TForm1.ButtonUstawieniaDrukarkiExecute(Sender: TObject);
begin
  PrinterSetupDialog1.Execute;
end;

Na formatce umieść następujące komponenty: SynEdit:D, PrintDialog, PrinterSetupDialog, SynEditPrint <- o ile sie nie myle ;)

Pozdro [green]

No właśnie ja mam ten sam problem czy może ktoś podesłać jakiś przykładzik - byłbym bardzo wdzięczny :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1