Autor Beitrag
CitnAmor
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: So 26.01.03 15:59 
ich habe mehrere label auf der form und möchte diese nun ausdrucken...
ich habe schon mehrere sachen probiert, aber defr drucker zieht immer nur das blatt ein und schmeist es wieder raus... könnte jemand evtl nen quelltext posten wie ma zb ein label an einer gewüchten positoon druckt?!? big thx ...18a citn

_________________
yEaH..cAll..mE...tHe..wAndArA...
BungeeBug
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 901



BeitragVerfasst: So 26.01.03 18:39 
hi ...

wenn du mal deinen Code posten würdest wär das bestimmt hilftreich um den Fehler zufinden ...

MfG BungeeBug
CitnAmor Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: So 26.01.03 18:46 
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
Procedure PrintCanvas(c:TCanvas;lft,tp,wid,hei:integer);
var
b:TBitmap;
 r:TRect;
 begin
  b:=TBitmap.create;
b.Width:=wid;
 b.Height:=hei;
  b.PixelFormat:=pf24Bit;
BitBlt(b.Canvas.Handle,0,0,wid,hei,c.Handle,0,0,SRCCOPY);
 Printer.Title:='test';
 Printer.BeginDoc;
 r:=bounds(0,0,b.Width,b.Height);
 Printer.Canvas.CopyRect(r,b.Canvas,r);
 Printer.EndDoc;
 b.free;
 end;

procedure TForm1.Button1Click(Sender: TObject);
begin
PrintCanvas(label1.Canvas,0,0,label1.Width,label1.Height);
end;


Moderiert von user profile iconTino: Code-Tags hinzugefügt.

_________________
yEaH..cAll..mE...tHe..wAndArA...
GruppeCN
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 322



BeitragVerfasst: Mo 27.01.03 18:57 
Warum kopierst du nicht einfach mittels einer Procedure den Text in ein RichEdit und druckst das alles aus??
Etwa so:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure printlabel(caption: String);
begin
Form1.RichEdit1.Text := caption;
begin
try 
Form1.RichEdit1.Print(Form1.RichEdit1.Text);
except
ShowMessage('Fehler');
end;
end;
end;


Dann der Code zum Aufrufen:

ausblenden Quelltext
1:
printlabel(Label1.Caption);					


Über die Eigenschaft Font von RichEdit1 kannst du dann bequeme das Schriftbild anpassen.

_________________
Warum sind die Sachen, die du suchst, immer da, wo du zuletzt nachsiehst?
Weil du aufhörst zu suchen, wenn du sie gefunden hast.
CitnAmor Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mo 27.01.03 23:01 
thx... mein prob is nur dass ich mehrere label ausdrucken muss, wenn ich jetzt
ausblenden Quelltext
1:
2:
3:
4:
5:
procedure TForm1.FormCreate(Sender: TObject);
begin
printlabel(Label1.Caption);
printlabel(Label2.Caption);
end;

eingebe dann druckt er beide label auf verschiedene blätter.
also ich habe halt verschiedene label auf dem blatt angeördnet, die label haben auch unterschiedliche eingenschaften(farbe, größe)
die muss ich halt ausdrucken...
ich kenn mich mit rich text jetzt nicht so aus..deswegen habe ich versucht die label auif nen image zu kopieren.

_________________
yEaH..cAll..mE...tHe..wAndArA...