Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
844 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Swing] Ecrire une string en noir cerclé de blanc

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Swing] Ecrire une string en noir cerclé de blanc

n°2129844
Fraisouill​e
Grouik Grouik
Posté le 06-03-2012 à 16:11:03  profilanswer
 

Salut les gens !
 
Je dois écrire du texte sur une image. Ce texte doit être lisible quelque soit le fond de l'image.
J'aimerais donc écrire mon texte en noir cerclé de blanc. Pour ceux qui ne voient pas trop de quoi je parle, c'est le rendu qu'on a avec les sous-titres de film (sauf que c'est plutôt du blanc cerclé de noir dans ce cas là).
 
Pour info, pour l'instant, j'écris mon texte en noir en utilisant le graphics de l'image.
 
Vous avez une idée de comment faire ça proprement et sans embarquer de police de caractère spécifique ?
 
Sur ce screen, on voit pas mal le cerclage que j'aimerais reproduire (mais en inversant les couleurs) :
http://www.dvdbeaver.com/film/DVDReviews24/a%20water%20deepak%20mehta/Cap1-Subtitle.jpg

mood
Publicité
Posté le 06-03-2012 à 16:11:03  profilanswer
 

n°2130063
Fraisouill​e
Grouik Grouik
Posté le 07-03-2012 à 17:04:05  profilanswer
 

J'ai trouvé une solution qui est un peu du bidouillage mais qui marche pas mal :

Code :
  1. g.setColor(Color.WHITE);
  2. g.drawString(s, x - 1, y);
  3. g.drawString(s, x + 1, y);
  4. g.drawString(s, x, y - 1);
  5. g.drawString(s, x, y + 1);
  6. g.setColor(Color.BLACK);
  7. g.drawString(s, x, y);
 

En gros, j'écris du blanc en décalé tout autour et j'écris du noir à la vraie place :)


Message édité par Fraisouille le 07-03-2012 à 17:04:24
n°2130065
tpierron
Posté le 07-03-2012 à 17:29:33  profilanswer
 

J'avais aussi fait un truc de ce genre, mais pas avec Swing, avec GDI+. La technique que j'avais utilisée, c'est de tranformer le texte en polygone et de faire un rendu de ce polygone avec une épaisseur de ligne décroissante (dans mon cas, l'épaisseur variait de 7 à 1), le tout avec un canal alpha fixe de 96/255 pour chaque tracé. Par-dessus le texte était écrit en noir.
 
Le résultat était passable, principalement parce que la police était assez petite à la base, mais au moins c'était lisible car écrit par dessus des images qui étaient souvent des bouillies de pixels multicolor.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Swing] Ecrire une string en noir cerclé de blanc

 

Sujets relatifs
meilleur façon d'écrire une requête sqlMacro Ecrire Dossier et sous dossiers
[DELPHI] mettre un | dans un string !écrire avec un thread en binaire ou en ascii ?
[C Multitâche] Récupérer un string sur stdinecrire un programme (pascal) qui calcule X puissance n ?!!!
[Divers/Ada] Ecrire pour un afficheur LCD sur Gnu/Linux et WindowsEcrire un nombre avec un séparateur décimal locale
[ Divers / C ] Ecrire pour un afficheur LCDMenu d'entrée, images en cercle
Plus de sujets relatifs à : [Swing] Ecrire une string en noir cerclé de blanc


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR