Forum: Multimedia
by uligerhardt,
11. Sep 2017
Ist leider nicht nur mein Windows. Zuerst ist das Problem nach und nach bei Kunden mit Windows 10 aufgetaucht. Mittlerweile kann ich es auf meiner Windows7-Testkiste nachvollziehen.
Forum: Multimedia
by uligerhardt,
11. Sep 2017
SetGraphicsMode hab ich schon - im Normalfall geht's ja auch. Bis ich den Bluescreen bei mir nachvollziehen konnte, musste ich ewig probieren. Scheinbar kommt es drauf an, wo genau auf dem Bildschirm das Bitmap landet.
Forum: Multimedia
by uligerhardt,
11. Sep 2017
Nö, nicht sicher. :oops:
Ist bloß etwas diffizil zu debuggen, wenn dauernd der Rechner neu bootet. Und es tritt scheinbar auch erst seit Neuerem auf, unter Windows 7 und 10. Drum vermute ich, dass irgendwelche Updates an Graphiksubsystem oder -kartentreibern mit reinspielen.
Forum: Multimedia
by uligerhardt,
11. Sep 2017
Ja, ich will ja rotieren. Mein Testcode gibt das zugegebenermaßen nicht wieder. :mrgreen:
Edit: Ursprünglich habe ich mit SetWorldTransform rotiert. Das gibt aber seit Kurzem Bluescreens. So wie früher. Unter Windows 95. :shock::pale:
Denen komme ich nicht bei, also suche ich nach alternativen Wegen.
Forum: Multimedia
by uligerhardt,
11. Sep 2017
So, ich hab mal eine Lösung, wenn auch eher unelegant:
procedure TForm1.PaintBox1Paint(Sender: TObject);
var
bmp, mask, mask2: TBitmap;
r: TRect;
Points: array of TPoint;
begin
bmp := TBitmap.Create;
try
bmp.LoadFromFile('test.bmp');
Forum: Multimedia
by uligerhardt,
11. Sep 2017
Hallo zusammen!
Ich möchte ein TBitmap "bmp" rotiert zeichnen. Dazu verwende ich PlgBlt. Leider wird dabei erstmal die Transparenz nicht berücksichtigt. Dafür ist wohl der Parameter Mask: HBITMAP da. Wenn ich dem bmp.MaskHandle übergebe, wird allerdings mein Bitmap wegmaskiert, nicht die transparenten Teile.
Hier mal Testcode:
procedure TForm1.PaintBox1Paint(Sender: TObject);
var
bmp:...