Entwickler-Ecke

Sonstiges (Delphi) - Graphik "vergessen" beim Ausdrucken Unter Windows 7 ...!


Hochhaus - So 25.04.10 18:01
Titel: Graphik "vergessen" beim Ausdrucken Unter Windows 7 ...!
Hallo allerseits !

Ich habe ein äusserst komisches Problem unter Windows 7 (64 bit). Meine 32-bit-Delphi-Programme laufen zwar - grösstenteils. Wenn ich aber Graphiken drucke, wird immer die erste Graphik auf der Seite "vergessen". Dies passiert auch dann, wenn ich in ein PDF drucke.

Unter Windows XP und Vista 32 bit tritt der Fehler nicht auf. Ich weiss nicht, ob es am Druckertreiber oder am Betriebssystem liegt.

Einfache Umgehungsmöglichkeit: Kleines, weisses Quadrat links oben auf der Seite "drucken". Dann wird eben dieses vergessen, und der Ausdruck geht überall.

Weiss jemand Rat ?

Danke im Voraus !

Moderiert von user profile iconNarses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.


jaenicke - So 25.04.10 18:46

Das passiert bei mir nicht, aber ohne den entsprechenden Quelltext wird wohl niemand etwas dazu sagen können. Wie druckst du denn?


Hochhaus - So 25.04.10 19:06

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Das passiert bei mir nicht, aber ohne den entsprechenden Quelltext wird wohl niemand etwas dazu sagen können. Wie druckst du denn?



Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
    Printer.BeginDoc;
    Printer.Canvas.Font.Style := [];
    Printer.Canvas.Font.Name := 'Courier New';
    Printer.Canvas.Font.Size := 12;
    Long := Printer.Canvas.Font.PixelsPerInch;
    Frac := Long / 600 + 0.0000001;


    Bmp := TBitMap.Create;
    Bmp.LoadFromFile('PP.BMP');

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

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


Ein Programmauszug vom Drucken ...

Moderiert von user profile iconKha: Delphi-Tags hinzugefügt


jaenicke - So 25.04.10 22:34

Wie dabei dann Fehler auftreten können in der Art wie du es geschrieben hast (also dass eines der gezeichneten Elemente verschwindet), weiß ich dann auch nicht.

Ein Fehler in dem Beispiel ist, dass die Pfadangabe fehlt, so dass es Glücksspiel ist, ob die Datei gefunden wird. Aber ich vermute mal das ist hier nur ein Beispiel gewesen und in deinem Projekt nicht so.

Bist du sicher, dass die Koordinaten stimmen?


Hochhaus - Mo 26.04.10 06:09

Moderiert von user profile iconNarses: Komplett-Zitat des letzten Beitrags entfernt.

Ja, die Koordinaten stimmen prima. Die Pfadangabe fehlt jedoch tatsächlich. Das habe ich übersehen. Vielen Dank


jaenicke - Mo 26.04.10 07:45

Dann poste ich einmal noch zwei Links, in denen ich genauer erklärt habe warum die Pfadangabe notwendig ist und wo man z.B. Einstellungen speichern sollte:
http://www.delphi-library.de/viewtopic.php?p=499701
http://www.delphi-library.de/viewtopic.php?p=548600
;-)


Hochhaus - Do 29.04.10 19:30

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Dann poste ich einmal noch zwei Links, in denen ich genauer erklärt habe warum die Pfadangabe notwendig ist und wo man z.B. Einstellungen speichern sollte:
http://www.delphi-library.de/viewtopic.php?p=499701
http://www.delphi-library.de/viewtopic.php?p=548600
;-)


Sorry. Aber mein Problem ist immer noch nicht gelöst. Die Pfadangabe habe ich "nachgerüstet". Und wie ich gesehen habe, gibt es noch mehr andere Probleme mit Windows 7 (Beitrag in diesem Forum unter derselben Rubrik.) Da kommt vielleicht noch etwas auf uns zu ... ...


jaenicke - Fr 30.04.10 00:38

Hmm, kannst du vielleicht ein Testprojekt posten? Bei mir kann ich einen solchen Effekt nicht reproduzieren. :nixweiss:


Hochhaus - Fr 30.04.10 17:05

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Hmm, kannst du vielleicht ein Testprojekt posten? Bei mir kann ich einen solchen Effekt nicht reproduzieren. :nixweiss:


Ich versuche es ! Vielen Dank im Voraus. Das Testprojekt verhält sich 1:1 wie mein ursprüngliches Projekt. Wie ich eben gesehen habe, tritt das Problem unter Windows 7 32 bit nicht auf. (nur unter 64 bit)


Hochhaus - Mo 03.05.10 12:29

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Hmm, kannst du vielleicht ein Testprojekt posten? Bei mir kann ich einen solchen Effekt nicht reproduzieren. :nixweiss:


Hinweis:

Das Testprojekt läuft unter Windows XP, Vista32 bit und Windows 7 32 bit problemlos. Der beobachtete Effekt tritt nur unter Windows 7 64 bit auf.