/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
PrintPreview vis indholdet i Image1?
Fra : Monie Jacobsen


Dato : 26-07-02 13:00

Hej
Er der nogen der kan hjælpe mig med, at få nedstående PrintPreview til,
at vise hvad Image1, måtte indholder?


procedure TFormPrintPreview.FormCreate(Sender : TObject);

begin

cbZoom.ItemIndex := 0;

mcmPrintPreview1.ZoomToFit;

tbFirstPage.Enabled := False;

tbPreviousPage.Enabled := False;

tbNextPage.Enabled := (mcmPrinter.PageCount > 1);

tbLastPage.Enabled := (mcmPrinter.PageCount > 1);

StatusBar.SimpleText := 'Page ' + IntToStr(mcmPrintPreview1.PageIndex) +

' of ' + IntToStr(mcmPrinter.PageCount);

end;



procedure TFormPrintPreview.tbCloseClick(Sender : TObject);

begin

Close;

end; // TFormPrintPreview.tbCloseClick.






procedure TFormPrintPreview.tbFirstPageClick(Sender: TObject);

begin

mcmPrintPreview1.PageIndex := 1;

tbFirstPage.Enabled := False;

tbPreviousPage.Enabled := False;

tbNextPage.Enabled := (mcmPrinter.PageCount > 1);

tbLastPage.Enabled := (mcmPrinter.PageCount > 1);

end;





procedure TFormPrintPreview.tbPreviousPageClick(Sender: TObject);

begin

if (mcmPrintPreview1.PageIndex > 1)

then begin

mcmPrintPreview1.PageIndex := mcmPrintPreview1.PageIndex - 1;



tbNextPage.Enabled := True;

tbLastPage.Enabled := True;

if (mcmPrintPreview1.PageIndex = 1)

then begin

tbFirstPage.Enabled := False;

tbPreviousPage.Enabled := False;

end;

end;

StatusBar.SimpleText := 'Page ' + IntToStr(mcmPrintPreview1.PageIndex) +

' of ' + IntToStr(mcmPrinter.PageCount);

end;



procedure TFormPrintPreview.tbNextPageClick(Sender: TObject);

begin

if (mcmPrintPreview1.PageIndex <= mcmPrinter.PageCount)

then begin

mcmPrintPreview1.PageIndex := mcmPrintPreview1.PageIndex + 1;



tbFirstPage.Enabled := True;

tbPreviousPage.Enabled := True;

if (mcmPrintPreview1.PageIndex = mcmPrinter.PageCount)

then begin

tbNextPage.Enabled := False;

tbLastPage.Enabled := False;

end;

end;

StatusBar.SimpleText := 'Page ' + IntToStr(mcmPrintPreview1.PageIndex) +

' of ' + IntToStr(mcmPrinter.PageCount);

end;



procedure TFormPrintPreview.tbLastPageClick(Sender: TObject);

begin

mcmPrintPreview1.PageIndex := mcmPrinter.PageCount;

tbFirstPage.Enabled := (mcmPrintPreview1.PageIndex > 1);

tbPreviousPage.Enabled := (mcmPrintPreview1.PageIndex > 1);

tbNextPage.Enabled := False;

tbLastPage.Enabled := False;

StatusBar.SimpleText := 'Page ' + IntToStr(mcmPrintPreview1.PageIndex) +

' of ' + IntToStr(mcmPrinter.PageCount);

end;



procedure TFormPrintPreview.tbPrintClick(Sender: TObject);

begin

if (mcmPrinter.PageCount > 0)

then mcmPrinter.Print;

end;



procedure TFormPrintPreview.tbSetupPrinterClick(Sender: TObject);

begin

if PrinterSetupDialog.Execute

then mcmPrinter.RefreshProperties;

InvalidateRect(Handle, Nil, True);

end;



procedure TFormPrintPreview.PrinterSetupDialogClose(Sender: TObject);

begin

// mcmPrinter.

end;



procedure TFormPrintPreview.mcmPrinterNewPage(Sender : TObject);

begin

tbNextPage.Enabled := (mcmPrinter.PageCount > 1);

tbLastPage.Enabled := (mcmPrinter.PageCount > 1);

StatusBar.SimpleText := 'Page ' + IntToStr(mcmPrintPreview1.PageIndex) +

' of ' + IntToStr(mcmPrinter.PageCount);

end;



procedure TFormPrintPreview.tbCentreClick(Sender : TObject);

begin

mcmPrinter.ImageCenter := tbCentre.Down;

end;



procedure TFormPrintPreview.tbFitToPageClick(Sender : TObject);

begin

mcmPrinter.ImageFitToPage := tbFitToPage.Down;

end;



procedure TFormPrintPreview.seScaleImageChange(Sender : TObject);

begin

try

if (seScaleImage.Text <> '')

then mcmPrinter.ImageScale := seScaleImage.Value;

except

end;

end;





{$IFDEF MCMDELPHI3}

{$UNDEF MCMDELPHI3}

{$ENDIF}



end.



På forhånden mange tak.

Har prøve adskillige muligheder, men er ikke så smart til dette!



MVH

Monie






 
 
Klaus Petersen (31-07-2002)
Kommentar
Fra : Klaus Petersen


Dato : 31-07-02 15:52

Jeg vil lige kommentere din problemstilling. Det er ikke et egentlig svar -
det er jeg nødt til at vente lidt med at give dig. Det er ikke særligt let
at udskrive dine vingeprofiler - udskrivning generelt af grafik og ligende
har jeg altid syntes var lidt besværligt / svært i delphi.

Udfra de erfaringer jeg har fået ved at arbejde med lignende ting, kan jeg
fortælle dig, at du nok får brug for at kigge lidt ind i noget der hedder
"Postscripting". Det er et skript-sprog, som en postscript (kompatibel)
printer kan forstå og hvis jeg ikke husker helt forkert, indeholder sproget
også "kommandoer" til at tegne linje m.m.

Jeg skal tilfældigvis selv til at i gang med noget udskrivning i delphi - så
jeg kommer til at skulle sætte mig ind i PS. Så kunne jeg vil samme
lejlighed lige lave et lille demo program, som du kan kigge lidt på - evt.
også nogle gode links.

De vigtigste fordele ved at bruge postscript fremfor udskrivning af bitmap
billeder i dit (og mit) tilfælde er
1) Printeren skal ikke bruge så meget hukommelse til udskrivningen - meget
aktuelt for min egen printer, da den ikke har voldsom meget hukommelse.
2) Kvaliteten bliver meget bedre, da billedet tegnes efter printerens (høje)
DPI (Dots Per Inch) fremfor skærmens (lave) PPI (Pixels Per Inch).




Klaus Petersen (31-07-2002)
Kommentar
Fra : Klaus Petersen


Dato : 31-07-02 21:18

Jeg må så erkende, at det er langt fra alle printere, der understøtter
postscript. Min egen printer gjorde f.eks. ikke, så alle mine tests fejlede,
selvom programmet blev færdigt og fungerede.




Monie Jacobsen (02-08-2002)
Kommentar
Fra : Monie Jacobsen


Dato : 02-08-02 01:00

Hej Klaus

Det er fint du vil kikke på problemet!
Selv arbejder jeg på, at finde en god måde, at kunne print et Image billede
ud.

"Klaus Petersen" <spektual@hotmail.com> skrev i en meddelelse
news:ai9gko$i5p$1@sunsite.dk...
> Jeg må så erkende, at det er langt fra alle printere, der understøtter
> postscript. Min egen printer gjorde f.eks. ikke, så alle mine tests
fejlede,
> selvom programmet blev færdigt og fungerede.
>

MVH
Monie




Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste