2017-10-16 5 views

Répondre

1

À l'avenir, s'il vous plaît essayer de poster un MCVE. Le code dans votre message dessine le texte complètement hors de l'écran, ce qui me fait me demander ce qui est différent dans votre vrai code. Utilisez-vous une fonction draw()? Veuillez éviter ces incertitudes en postant un MCVE. En tout cas, votre problème de base est causé par anti-aliasing. Par défaut, Processing utilise l'anticrénelage pour rendre les dessins plus fluides et moins pixélisés. Vous pouvez le voir si vous zoomez sur un dessin et remarquez que les bords sont un peu flous. C'est une bonne chose pour la plupart des dessins, mais dans votre cas, cela fait apparaître les bords flous.

Donc, pour résoudre ce problème, vous pourriez désactiver l'anti-aliasing en appelant la fonction noSmooth():

size(500, 500); 
noSmooth(); 
background(255); 
noLoop(); 
fill(#500F0F); 
text("99", 300, 200); 
fill(255); 
text("99",300, 200); 

Notez également que j'utilise 255 comme paramter au lieu de -1. Je ne suis pas sûr de ce qu'un paramètre de couleur de -1 est censé faire, donc je le garderais entre 0 et 255 juste pour être sûr.

Mais c'est un peu de poisson que vous devez "supprimer" n'importe quel texte en premier lieu. Comme le dit le commentaire de George, pourquoi n'appelez-vous pas la fonction background() pour effacer les anciens cadres?

Voici un petit exemple:

void draw() { 
    background(64); 
    if (mousePressed) { 
    text("hello", 20, 40); 
    } 
} 
+1

belle réponse élargie (+1) –