


Tutoriel de dessin sur toile html5 (3) : La raison pour laquelle les lignes de 1 pixel sont floues sur les compétences du didacticiel canvas_html5
Dans la continuité de l'article précédent Tutoriel de dessin de lignes sur toile
Comme nous l'avons mentionné la dernière fois, la toile comporte parfois des lignes de 1 pixel qui sont floues et semblent plus larges, comme indiqué ci-dessous :
Une telle ligne n'est évidemment pas ce que nous souhaitons.
Le but de cet article est de clarifier le principe et de le résoudre.
Tout le monde sait que la plus petite taille d'affichage sur l'écran est de 1 pixel. Bien que les éléments inférieurs à 1 pixel puissent ne pas être affichés, l'ordinateur s'en fiche, il essaiera de les dessiner.
En fait, les pixels sont aussi une unité après tout. Que se passerait-il si nous agrandissions la toile à une taille suffisamment grande pour voir clairement chaque pixel ? Cela ressemble probablement à ceci :
Chaque pixel a une plage de début et de fin, comme le montre la figure, leur plage commence à gauche, s'étend sur 1 pixel et se termine à droite.
Si nous suivons la plage de pixels de début et de fin lorsque nous traçons une ligne de 1 pixel, nous obtiendrons certainement une ligne fine très standard. Comme suit :
Mais malheureusement, la méthode de dessin des lignes de la toile est différente. Comme nous l'avons dit dans l'article précédent, chaque ligne de toile a une "ligne centrale" infiniment fine, et la largeur de la ligne s'étend de la ligne centrale aux deux. côtés. Si nous traçons toujours une ligne à partir du deuxième pixel, alors la ligne centrale de la ligne sera alignée avec le point de départ du deuxième pixel, puis nous commencerons à dessiner, et le problème se pose : la ligne du Canvas s'étend des deux côtés. à partir de la ligne médiane. Au lieu de s'étendre vers un certain côté (par exemple, ici, si elle ne s'étend que vers la droite, alors notre problème n'est plus un problème), après extension, notre ligne ressemble en fait à ceci :
Il y avait un autre problème à ce moment-là : l'ordinateur n'autorise pas les graphiques inférieurs à 1 px, il a donc fait un compromis : dessiner les deux pixels.
Ainsi, de cette façon, la ligne originale de 1 px devient une ligne qui semble avoir une largeur de 2 px.
La raison de l'échec a été trouvée : la ligne dans le canevas a aligné la ligne centrale avec le point de départ du pixel, et non avec le point médian du pixel.
Alors, comment résoudre ce problème douloureux ? Peut-être que quelqu'un a déjà pensé : puisque les points de départ des deux sont différents, faisons en sorte que leurs points de départ soient identiques !
Il nous suffit d'aligner la ligne centrale de la ligne avec le point médian du pixel !
Le point milieu du pixel est facile à trouver. Par exemple, le point milieu du deuxième pixel est situé à 1,5 pixels selon l'explication sur l'image Alors le point milieu du pixel x est (x-0,5. )px.

Bien entendu, dans des situations moins rigoureuses, vous pouvez également utiliser x 0,5.
Essayons maintenant nos résultats de recherche sur toile.
ctx.moveTo(100.5, 100,5);
ctx.lineTo(200,5,100,5);
ctx.lineTo(200,5,200,5);
ctx.lineTo(100,5,200,5); ;
ctx.closePath();
ctx.lineWidth = 1;
ctx.strokeStyle = 'rgba(255,0,0,0.5)'; >
Ça a l'air bien ? Mais il semble que cela nous rende très confus au moment de tracer la ligne. Devons-nous ajouter ce 0,5 déprimant à chaque fois ? Bien sûr que non, car la plupart du temps nous utilisons des variables pour sauvegarder des valeurs, nous n'avons pas besoin d'ajouter 0,5 à chaque valeur

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Vous pouvez flouter les photos dans Yitian Camera, alors comment flouter les photos ? Les utilisateurs peuvent cliquer sur Modifier pour sélectionner une photo, puis cliquer sur Effets et sélectionner Flou pour rendre la photo floue. Cette introduction à la façon de flouter les photos peut vous indiquer le contenu spécifique. Ce qui suit est une introduction détaillée, venez y jeter un oeil ! Didacticiel d'utilisation de l'appareil photo Yitian. Comment flouter des photos avec l'appareil photo Yitian Réponse : Accédez à Édition-Effets spéciaux-Flou. Le processus spécifique : 1. Ouvrez d'abord l'application et cliquez sur Modifier en bas à gauche. 2. Cliquez ensuite sur une image et cliquez sur le bouton Modifier. 3. Cliquez ensuite sur le bouton des effets spéciaux ci-dessous. 4. Vous pouvez trouver la fonction de flou ci-dessous. 5. Sélectionnez ensuite le grossissement du flou.

Parfois, le fond d'écran est flou lors de l'utilisation de Win11. Je ne sais pas ce qui se passe. En fait, nous pouvons le résoudre en modifiant le registre ou la compatibilité des applications. Solution de flou de fond d'écran Win11 : 1. Flou du bureau 1. Si le bureau est flou, vous pouvez cliquer avec le bouton droit sur le menu Démarrer du bas et ouvrir « Exécuter » 2. Entrez ensuite « regedit » et appuyez sur Entrée pour ouvrir le registre. 3. Après l'ouverture, accédez à l'emplacement « Computer\HKEY_CURRENT_USER\ControlPanel\Desktop ». 4. Après avoir entré, faites un clic droit sur l'espace vide et sélectionnez Créer une nouvelle "Valeur DWORD". 5. Renommez-le en "JPEGImportQuality" et double-cliquez pour ouvrir les données.

Les plug-ins de flèches du canevas incluent : 1. Fabric.js, qui possède une API simple et facile à utiliser et peut créer des effets de flèche personnalisés ; 2. Konva.js, qui fournit la fonction de dessiner des flèches et peut créer diverses flèches ; styles ; 3. Pixi.js, qui fournit des fonctions de traitement graphique riches et peut obtenir divers effets de flèche ; 4. Two.js, qui peut facilement créer et contrôler des styles de flèches et des animations 5. Arrow.js, qui peut créer divers effets de flèche ; ; 6. Rough .js, vous pouvez créer des flèches dessinées à la main, etc.

Les détails de l'horloge sur toile incluent l'apparence de l'horloge, les graduations, l'horloge numérique, les aiguilles des heures, des minutes et des secondes, le point central, les effets d'animation, d'autres styles, etc. Introduction détaillée : 1. Apparence de l'horloge, vous pouvez utiliser Canvas pour dessiner un cadran circulaire comme apparence de l'horloge, et vous pouvez définir la taille, la couleur, la bordure et d'autres styles du cadran 2. Lignes d'échelle, tracez des lignes d'échelle dessus ; le cadran pour représenter les heures ou les minutes. Position ; 3. Horloge numérique, vous pouvez dessiner une horloge numérique sur le cadran pour indiquer l'heure et les minutes actuelles ; 4. Aiguille des heures, aiguille des minutes, aiguille des secondes, etc.

Les versions de html2canvas incluent html2canvas v0.x, html2canvas v1.x, etc. Introduction détaillée : 1. html2canvas v0.x, qui est une première version de html2canvas. La dernière version stable est la v0.5.0-alpha1. Il s'agit d'une version mature qui a été largement utilisée et vérifiée dans de nombreux projets ; 2. html2canvas v1.x, il s'agit d'une nouvelle version de html2canvas.

Explorez le framework Canvas : Pour comprendre quels sont les frameworks Canvas couramment utilisés, des exemples de code spécifiques sont nécessaires. Introduction : Canvas est une API de dessin fournie en HTML5, grâce à laquelle nous pouvons obtenir des graphiques et des effets d'animation riches. Afin d'améliorer l'efficacité et la commodité du dessin, de nombreux développeurs ont développé différents frameworks Canvas. Cet article présentera certains frameworks Canvas couramment utilisés et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre comment utiliser ces frameworks. 1.Cadre EaselJSEa

Les attributs du canevas tkinter incluent bg, bd, relief, width, height, curseur, highlightbackground, highlightcolor, highlightthickness, insertbackground, insertwidth, selectbackground, selectforeground, les attributs xscrollcommand, etc. Présentation détaillée

Comment utiliser Canvas pour dessiner des graphiques et des effets d'animation dans Uniapp nécessite des exemples de code spécifiques 1. Introduction Avec la popularité des appareils mobiles, de plus en plus d'applications doivent afficher divers graphiques et effets d'animation sur le terminal mobile. En tant que framework de développement multiplateforme basé sur Vue.js, uniapp offre la possibilité d'utiliser un canevas pour dessiner des graphiques et des effets d'animation. Cet article présentera comment Uniapp utilise Canvas pour obtenir des effets de graphique et d'animation, et donnera des exemples de code spécifiques. 2. toile
