AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

Ein Thema von Matze · begonnen am 19. Sep 2008 · letzter Beitrag vom 24. Sep 2008
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

[PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 16:48
Hi,

ich zeichne per imagettftext() Text auf ein Bild. Nun ist es so, dass der Text je nach Farben des Bildes kaum lesbar ist. Ist es möglich, die Schriftfarbe so anzupassen, dass sie sich von Hintergrund abhebt (von mir aus buchstabenweise), also dass der Kontrast brauchbar wird? Wenn ja, wie macht man das?

Grüße
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 16:50
Zeichnest Du den Hintergrund auch selbst oder zeichnest Du nur auf ein fertiges Bild drauf?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 16:56
Ich zeichne das auf ein fertiges Bild, das ich in eine Variable lade und mittels ImageCopyResampled() auf dem "Endbild" darstelle.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#4

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 17:01
Spontan fiele mir ein, dass Du an den Koordinaten ein 10x10px großes Feld mit den Farben ausliest, davon den Mittelwert bildest und von diesem Mittelwert die Komplementärfarbe.
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#5

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 17:05
Spricht etwas gegen einen Schatten? Also Text erst um einen Pixel nach rechts und unten versetzt in schwarz zeichnen, dann normal in weiß? Vier solche Schatten in alle vier Richtungen (bei kleiner Schrift reichen zwei gegenüberliegende) ergeben einen schwarzen Rand, das sieht je nach Situation besser aus als ein Schatten.
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#6

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 17:07
Die Schattenidee ist natürlich sehr nett. So könnte auch der Text immer in der gleichen Farbe bleiben.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 17:07
Wie berechnet man die Farbe mit dem höchsten Konstrast? Ich meine nicht dieses simple
Delphi-Quellcode:
Function Complementary (aRGB : TColor) : TColor;
Begin
  Result := RGB (255 - Red (aRGB), 255 - Green(aRGB), 255 - Blue(aRGB));
End;
Denn da kann man bei einem Grauwert gar nichts mehr erkennen.

Die Schattenidee wäre ein Ausweg..
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 19. Sep 2008, 17:14
Stimmt, die Schattenidee ist gar nicht übel. Nur bei Schriftgröße 7 wirkt das etwas unscharf, da der Schatten im Verhältnis zur Schrift zu groß ist.

Aber vielleicht klappt das halbwegs, wenn ich mit den Farben etwas herumspiele. Viele Dank auf jedenfall.

Grüße
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#9

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 22. Sep 2008, 09:46
Bei geringer Schriftgröße würde ich eins der folgenden probieren:
  • Entweder mal gucken, ob du auch halbe Pixel zeichnen kannst. In dem Fall kannst du den Pixel um einen halben Pixel verschieben und müsstest ein ganz gutes Ergebnis bekommen.
  • Oder eben wirklich den Schatten einmal nach rechts unten, einmal nach links oben um einen Pixel versetzt zeichnen. Sollte eigentlich dann zu einem ganz netten Rahmen führen.
Du kannst den Schatten vielleicht auch erweitern, also z.B. um einen Pixel vergrößern, und dann etwas unscharf machen. Macht eigentlich nichts, dass der Schatten zu groß ist, Hauptsache der Text ist klar zu lesen
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: [PHP/GD] Wie Schriftfarbe dem Hintergrund anpassen?

  Alt 22. Sep 2008, 17:31
Hallo,

ungerade Schriftgrößen werden akzeptiert, allerdings staucht es die Buchstaben dann etwas.

Ich werde mit dem Schatten herumspielen. irgendwie kriege ich das schon hin.

Grüße
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz