Le redimensionnement d'une toile d'image sans flou
J'ai une petite image, je me suis rendu sur une toile, comme ceci:
ctx.drawImage(img, 0, 0, img.width*2, img.height*2);
Je voudrais montrer une forte migrées de l'image (4 pixels identiques pour chaque pixel de l'image). Toutefois, ce code (dans Chrome 29 sur Mac) fait une image floue. Dans Photoshop, il semble que c'est à l'aide de "Bicubique" rééchantillonnage, au lieu de "plus Proche Voisin".
Dans une situation où il serait utile (par exemple. un jeu rétro), Est-il possible de produire une forte migrées image, ou dois-je avoir un autre fichier image pour chaque taille de l'image sur le serveur?
la meilleure façon de le faire est d'avoir des images séparées pour chaque taille (plus rapide, de bonne qualité), un autre moyen est d'avoir le plus grand puis les redimensionner sur la route (très peu de stockage, de bonne qualité).
Si je la baisse, il a le même flou.
il ne devrait pas être flou, ne vous garder le ratio d'aspect?
Ouais.
Découvrez la réponse à cette question, stackoverflow.com/questions/2303690/.... En fait votre question semble être un double de cette.
Si je la baisse, il a le même flou.
il ne devrait pas être flou, ne vous garder le ratio d'aspect?
Ouais.
Découvrez la réponse à cette question, stackoverflow.com/questions/2303690/.... En fait votre question semble être un double de cette.
OriginalL'auteur JJJollyjim | 2013-08-31
Vous devez vous connecter pour publier un commentaire.
Il suffit de désactiver toile anti-aliasing pour les images - malheureusement, cette propriété est toujours vendeur préfixé voici donc les variations:
puis dessiner l'image.
En option pour les versions plus anciennes et les navigateurs qui n'a pas mis en œuvre cette encore, vous pouvez utiliser les CSS à la place:
TEST EN LIGNE ICI
getImageData
.L'onu précédé d'
context.imageSmoothingEnabled
fonctionne dans Chrome à tout le moins au ver 33.OriginalL'auteur