Forum: Multimedia
Delphi
by mashutu,
3. Aug 2011
Danke fuer den Hinweis.
Mir haben die Loesungen hier schon was gebracht. Den 'Workaround von DeddyH' habe ich nun so eingebaut, dass ich ihn abrufen kann, wenn ich ueber remote desktop arbeite und dann bekomme ich auch das korrekte Ergebnis.
Danke noch mal Euch allen.
Forum: Multimedia
Delphi
by mashutu,
3. Aug 2011
Himitsu hat mich mit seinen Antworten auf den richtigen Trichter gebracht.
Das Problem ist schlicht und einfach: Ich habe nur noch einen uralten Laptop mit Windows, den ich nur ganz selten (bspw. um dieses alte Programm zu warten) verwende - ansonsten arbeite ich mit Linux.
Da das Keyboard am alten Windows-Laptop defekt ist benutze ich ihn ueber remote desktop von meiner Linux-Maschine aus....
Forum: Multimedia
Delphi
by mashutu,
3. Aug 2011
_img.Picture.Bitmap.PixelFormat := pf24Bit;
fuehrt bei mir dazu dass gar nichts mehr auf die Canvas gezeichnet wird. strange ...
Forum: Multimedia
Delphi
by mashutu,
3. Aug 2011
Also ich habe ein vorhandenes Bitmap mit der erforderlichen Farbtiefe geladen und dann da drauf gezeichnet.
Das Ergebnis ist das gewuenschte.
So habe ich es gemacht
var img:TImage;
begin
{...}
img:=tImage.Create(self);
Forum: Multimedia
Delphi
by mashutu,
3. Aug 2011
Danke erst mal.
Ja, ich zeichne direkt auf die Canvas des TImage.
Bzw. ich uebergebe den Zeichenroutinen TImage.Canvas und die arbeiten dann damit weiter.
Das ganze hat seit 8 Jahren hervorragend funktioniert und jetzt macht es ploetzlich so was ...
Dein Vorschlag ein Bitmap mit der entsprechenden Farbtiefe zu nehmen muss ich mal probieren.
Meinst du ich sollte eines der alten Bilder laden...
Forum: Multimedia
Delphi
by mashutu,
3. Aug 2011
Servus,
mein Programm zeichnet Daten auf eine Canvas. Der aktuelle Zustand kann auch als Datei gespeichert werden, was durch ein simples
Picture.Bitmap.SaveToFile(dlgSave.FileName);
Picture.Graphic.SaveToFile(dlgSave.FileName);
bewerkstelligt wird (nachdem der anwender mit einem Save-dialog behelligt wurde).
Bis vor kurzem hat das auch Problemlos getan.
An diesem Code habe ich...