Autor Beitrag
norics
Hält's aus hier
Beiträge: 12

WIN XP

BeitragVerfasst: Mo 31.07.06 10:57 
Moin Moin,

Kann mir jemand helfen? Ich habe schon einiges im Forum gefunden aber igendwie nicht für mich verarbeiten können.

Ich möchte eine Zeile auf dem Drucker ausgeben. Die Button2Click Routine funktioniert. Da ist die Schrift aber sehr klein. Bei der Drucken Routine kommt die Fehlermeldung nach Auswahl des Drucker "Ein Bild kann nur geändert werden, wenn es ein Bitmap enthält".

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure TForm1.Button2Click(Sender: TObject);
var  f1_out : textfile;
 begin
  if PrintDialog1.Execute then
   begin  Assignprn(f1_out);
   ReWrite(f1_out);
   writeln(f1_out,nummer);
   CloseFile(f1_out);
   end;
 end;

procedure TForm1.drucken(Sender: TObject);
 begin
  if PrintDialog1.Execute then
  begin
  Printer.Canvas.Font.Size := 16;
  Printer.Canvas.TextOut(1, 1, 'Test-Text');
  end;
end;


Gruß norics

Moderiert von user profile iconraziel: Delphi-Tags hinzugefügt
ebs
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 213

Suse Linux 9.2, Win 98, Win NT, Win XP, Win for Workgroups, Win XP SP2, Dos 6.1
D3 Prof, D2005 PE, Delphi 2006 Prof.
BeitragVerfasst: Mo 31.07.06 11:21 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure TForm1.drucken(Sender: TObject);
begin
if PrintDialog1.Execute then
begin
Printer.BeginDoc;
Printer.Canvas.Font.Size := 16;
Printer.Canvas.TextOut(1, 1, 'Test-Text');
Printer.EndDoc;
end;
end;

So sollte die zweite Methode gehen.

Zu 2, woher kommt "nummer"?
Sonst würde ich es mal so probieren. Kann aber auch falsch sein, da ich nicht weiß, wie assignprn den Text erzeugt.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
procedure TForm1.Button2Click(Sender: TObject);
var f1_out : textfile;
begin
if PrintDialog1.Execute then
begin
Printer.Canvas.Text.height := 12;
Assignprn(f1_out);
ReWrite(f1_out);
writeln(f1_out,nummer);
CloseFile(f1_out);
end;
end;
norics Threadstarter
Hält's aus hier
Beiträge: 12

WIN XP

BeitragVerfasst: Mo 31.07.06 12:05 
Hallo EBS

Sorry, Nummer ist eine String Variable die den auszudruckenden Text enthält. Zum testen habe ich einen festen String hinterlegt.

Sobald ich Printer.BeginDoc und Printer.EndDoc einfüge kommt die Fehlermeldung: undefinierter Bezeichner 'BeginDoc'.

Wenn ich in irgendeiner Form den Printer.Canvas.Font formatieren möchte egal ob Size oder Height kommt die Fehlermeldung "Ein Bild kann nur geändert werden ...."

Gruß
norics
norics Threadstarter
Hält's aus hier
Beiträge: 12

WIN XP

BeitragVerfasst: Mo 31.07.06 15:55 
Hat sich erledigt.
Nachdem ich ein neues Projekt angelegt und den Sourcecode rüberkopiert habe, funktionierte es einwandfrei. Ich weiß nicht was jetzt anders ist als vorher.

Gruß
norics