Einzelnen Beitrag anzeigen

thomas2009
(Gast)

n/a Beiträge
 
#5

AW: Bitmap (Visitenkarte) Mehrfach auf A4 ausdrucken

  Alt 7. Apr 2011, 01:27
zur Zeit ich verwende keine Schleife
Ich zeichne direkt auf Printer.Canvas, wie deddyH vorgeschlagen hat
Ich tippe den Code für die Variante 8 Karten so :
Delphi-Quellcode:
// ...
      RR1 := Rect(DX,DY, W+DX, H+DY);
      Canvas.StretchDraw(RR1, Image1.Picture.Graphic);

      RR2 := Rect(DX, 2*DY+H, DX+W, 2*H+2*DY);
      Canvas.StretchDraw(RR2, Image1.Picture.Graphic);

      RR3 := Rect(DX, 3*DY+2*H, DX+W, 3*H+3*DY);
      Canvas.StretchDraw(RR3, Image1.Picture.Graphic);

      RR4 := Rect(DX, 4*DY+3*H, DX+W, 4*H+4*DY);
      Canvas.StretchDraw(RR4, Image1.Picture.Graphic);

      RR5 := Rect(DX, 5*DY+4*H, DX+W, 5*H+5*DY);
      Canvas.StretchDraw(RR5, Image1.Picture.Graphic);

      RR6 := Rect(2*DX+W,DY, 2*W+2*DX, H+DY);
      Canvas.StretchDraw(RR6, Image1.Picture.Graphic);

      RR7 := Rect(2*DX+W, 2*DY+H, 2*DX+2*W, 2*H+2*DY);
      Canvas.StretchDraw(RR7, Image1.Picture.Graphic);

      RR8 := Rect(2*DX+W, 3*DY+2*H, 2*DX+2*W, 3*H+3*DY);
      Canvas.StretchDraw(RR8, Image1.Picture.Graphic);

      RR9 := Rect(2*DX+W, 4*DY+3*H, 2*DX+2*W, 4*H+4*DY);
      Canvas.StretchDraw(RR9, Image1.Picture.Graphic);

      RR10 := Rect(2*DX+W, 5*DY+4*H, 2*DX+2*W, 5*H+5*DY);
      Canvas.StretchDraw(RR10, Image1.Picture.Graphic);
//...
DX: Abstand zwi Karte in X = 10mm = 40 Pixels
DY: Abstand zwi Karte in Y = 10mm = 40 Pixels
H: Bitmap-Hoehe
W: Bitmap-Breite

Es hat gut geklappt aber es ist auch nicht alternativ
Das ist wie gesagt für die Variante 8 Stück gedacht
Was wäre wenn man 16 Stück auf A4 drucken will
Oder wenn man 3 Stück statt 2 Stück für jede Zeile haben will
Und so weiter

Darum ist mein Code keine dauer Lösung
Miniaturansicht angehängter Grafiken
visitenkarte_preview_manuel_1.jpg  

Geändert von thomas2009 ( 7. Apr 2011 um 01:30 Uhr)
  Mit Zitat antworten Zitat