Autor Beitrag
georgfischerx
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 37



BeitragVerfasst: Do 06.02.03 21:54 
Hallo allerseits !

ich hatte ein ganz komisches Problem: Immer wenn ich mit einem
Delphi 6-Proggi unter Win2000 gedruckt habe, kamen zeitweise nicht
die richtigen Ausdrucke, sondern nur gedruckte Steuersequenzen.

ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
  If FrmMain.DlgPrint.Execute Then Begin
   With Printer Do Begin
    Orientation := poPortrait;
    BeginDoc;

    Long := Printer.Canvas.Font.PixelsPerInch;
    Frac := Long / 600 + 0.0000001;

    Koordinat[1] := Trunc(800*Frac);
    Koordinat[2] := Trunc(800*Frac);
    Koordinat[3] := Trunc((Bmp.Width + 800) * Frac);
    Koordinat[4] := Trunc((Bmp.Height + 800)* Frac);

    MyRect := Rect(Koordinat[1], Koordinat[2],
                   Koordinat[3], Koordinat[4]);
    Canvas.StretchDraw(MyRect,
                   Bmp);

    StringX[1] := '                        Katalog                ';
    StringX[2] := '                 Kassettendienst               ';

    StringX[3] := '   Die   Kassetten  in   diesem   Katalog      ';
    StringX[4] := '   sind   nicht  für  den    Leihdienst  be-   ';
    StringX[5] := '   stimmt. Sie  können  zum  Stückpreis        ';
    StringX[6] := '   von  Fr.  8.--   (inkl.  Porto   und   Ver- ';
    StringX[7] := '   packung) bezogen werden.                    ';
    StringX[8] := '   Bitte  beiliegende Bestellkarte  (letzte    ';
    StringX[9] := '   te Seite) benützen.                         ';

    Canvas.Font.Style := [fsBold];
    Canvas.Font.Name := 'Arial';
    Canvas.Font.Size := 33;

    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(3000*Frac), StringX[1]);
    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(3300*Frac), StringX[2]);

    Canvas.Font.Style := [];
    Canvas.Font.Size := 30;

    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(4200*Frac), StringX[3]);
    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(4500*Frac), StringX[4]);
    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(4800*Frac), StringX[5]);
    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(5100*Frac), StringX[6]);
    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(5400*Frac), StringX[7]);
    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(5700*Frac), StringX[8]);
    Canvas.TextOut(Trunc(60*Frac),
                   Trunc(6000*Frac), StringX[9]);

    NewPage;


Nachdem ich Service-Pack 3 von Win2000 installiert hatte, lief alles
bestens normal.

Weiss jemand den Grund für diesen Spuk ?

Besten Dank im Voraus für die Antworten !

Gruss, Georg