![]() |
Re: Abgerundete Ecken
ich hab das nochmal mit dinem Code probiert und festgestellt, dass der definierte bereich ggf. nur andersfarbig gemalt wird und deshalb nicht transparent. Ursache dafür war bei meinen Tests die Farbtiefe...
wenn ich bei der initialisierung (vor dem erstellen der Maske) die Farbtiefe beider bitmaps auf 24bit stelle funktioniert es bei mir.
Delphi-Quellcode:
HTH Frank
bmp_mask.PixelFormat:=pf24Bit;
bmp_tmp.PixelFormat:=pf24Bit; |
Re: Abgerundete Ecken
Liste der Anhänge anzeigen (Anzahl: 1)
hmm, also hier passiert immer noch das gleiche, nämlich nichts. Egal wie und wo ich das Pixelformat setze, wird mein Bild nicht mit runden Ecken angezeigt.
Ich stelle mal mein Testprojekt diesbezüglich hier rein. Im Programm auf den "Do It Round" - Button klicken. |
Re: Abgerundete Ecken
bei mir funktioniert das... (gesteted mit zapotek.bmp aus windows-verzeichnis und 20er Rundung)
Delphi-Quellcode:
was mir auffällt..du hantierst mit image.canvas rum...evtl solltest du die procedure DoItRound auch auf das Canvas ausbauen...auch damit jpegs und andere grafiken unterstützt werden.
//resize mask
bmp_mask.pixelformat := pf24bit; bmp_tmp.pixelformat := pf24bit; bmp_mask.width := bmp_tmp.width; bmp_mask.height := bmp_tmp.height; weiterhin würde ich die DoItRound so umbauen, dass du rundung,quell und zielcanvas übergibst, damit es unabhängig von dem Formular ist, sowie die prüfungen auf nil (assigned) in die procedure verlagern. HTH Frank |
Re: Abgerundete Ecken
Es hat sich rausgestellt, dass es wohl an meinem Bitmap lag. Warum auch immer es bei diesem nicht funktioniert...
Zitat:
Zitat:
Somit wird auch auf andere Formate und auf nicht Vorhandensein eines Bildes überprüft. Eine Frage wirft sich jetzt in dieser Situation noch auf: Die Bilder werden in ihrer Originalgröße gezeichnet, obwohl von dem Image-Objekt der Wert Strtch bzw. Autosize gesetzt sind. Woran liegt das? |
Re: Abgerundete Ecken
Zitat:
width,height => Image.width/height bitblt(image.canvas,0,0,width,height,bmp.canvas,0, 0,srcCopy); Gruß Frank |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz