Autor Beitrag
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Fr 05.11.04 23:23 
Abend,

Ich sitze gerade vor einem relativ grossem Problem: Wer Grafiken für Programme oder ähnliches mit anderen Programmen als Paint erstellt sollte es auch kennen.

Wenn man z.B. einen Schriftzug erstellt, und diesen mit einem TImage in D einbinden möchte, so muss der Hintergrund weiss sein um die Transparenz nutzen zu können. Allerdings sorgen komplexe Grafikprogramme automatisch für eine Kantenglättung, sprich sie fügen an den Kanten grautöne ein, die nur im Zoom richtig zu erkennen sind, damit die Ränder nicht so grauenhaftverpixelt aussehen wie bei Paint.

Das Problem ist nun aber das diese hellgrauen Teile ja nicht von Delphi Transparent gemacht werden können! Folglich erhält man ein Bild in dem im Transparenzmodus lauter weisse Punkte an den Rändern sind! Wenn man zuviel Zeit hat und nacharbeitet erhält man aber wieder die verpixelten Ränder :lol:

Gibt's ne Lösung?

danke!
.Chef
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1112



BeitragVerfasst: Fr 05.11.04 23:29 
Was du brauchst, ist ein Alphakanal. Dann musst du in Delphi die Transparenz manuell darstellen. Erstelle eine Graustufe deiner Schriftgrafik, und lege sie als Alphakanal über das Ausgangsbild. Sowas macht zum Beispiel auch der Viewer von meinem Grafikformat. :mrgreen: Oder du nimmst das Bild z.B. als PNG und erstellst den Kanal mit Photoshop. Dann tuts vielleicht auch eine PNG-Komponente in Delphi.

Gruß,
Jörg

_________________
Die Antworten auf die 5 häufigsten Fragen:
1. Copy(), Pos(), Length() --- 2. DoubleBuffered:=True; --- 3. Application.ProcessMessages bzw. TThread --- 4. ShellExecute() --- 5. Keine Vergleiche von Real-Typen mit "="!
Karlson Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Sa 06.11.04 20:06 
Ah, das ist also ein Alphakanal. Ich würde das am liebsten mit der png komponente machen. Aber ich weiss nicht so recht wie ich den Alphakanal in Photoshop festlegen kann...sorry aber ich hab das Prgram erst vor 4 tagen mit Lizens bekommen...