Entwickler-Ecke

Sonstiges (Delphi) - Barcode Drucken: Schlechte Qualität


jjturbo - Mi 27.02.08 14:55
Titel: Barcode Drucken: Schlechte Qualität
Moin Forum,

ich möchte ein Barcode-Etikett drucken, dazu generiere ich ein Bitmap mit einer kleinen Tabelle drauf, an eine bestimmte Stelle auf diesem Bitmap zeichne ich den Barcode. Auf dem Bildschirm sieht es auch perfekt aus.
Wenn ich es allerdings auf dem Thermotransferdrucker(Valentin, 300dpi) ausdrucke, dann sieht der Barcode echt schlimm aus.

So drucke ich:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
    with Printer do begin
      ...
      ...
      BeginDoc;
      MyRect      := Rect(0, OffSetOben, Breite, Hoehe + OffSetOben);
      Canvas.StretchDraw(MyRect,Image1.Picture.Bitmap);
      EndDoc;
      ...
      ...
    end;


Ich habe das Bitmap auch mal in seiner Größe geändert, das Result bleibt irgendwie das gleiche.
Ich habe mal ein Beispieletikett angehängt, vielleicht weiß jemand Rat?

Danke schon mal im voraus,
jjturbo


BenBE - Sa 01.03.08 00:20

Hast Du einmal versucht, den Barcode direkt auf dem Canvas des Druckers zu generieren\zeichnen, anstatt diesen mit StretchDraw zu verunglimpfen?


jjturbo - Sa 01.03.08 08:18

Ja, das war die Lösung.
Ich wollte das, was als Ettikett auf dem Bildschirm angezeigt wird 1:1 ausdrucken. Aber selbst wenn die Größe dss verwendeten BitMap der Größe der Canvas im Drucker entspricht scheint StretchDraw ein Raster zur Hilfe zu nehmen und verunstaltet die Grafik.
Also zeichne ich jetzt zwei mal: Einmal als Vorschau auf dem Monitor, beim Drucken dann direkt auf die Canvas des Druckers, alles gut.

Danke an alle
jjturbo