J'ai besoin de redimensionner un bmp comme le redimensionne fonctionne dans MS Paint - c'est-à-dire sans antialiasing. Quelqu'un sait comment faire cela dans C# ou vb.net?Redimensionner bitmap comme dans MS Paint
Répondre
S'il vous plaît voir: Image resizing in .Net with Antialiasing
Vous pouvez utiliser la méthode Image.GetThumbnailImage
. Je ne suis pas au courant de l'antialiasing.
EDIT: Je pensais aux images miniatures depuis que je l'ai récemment utilisé dans un projet. Mais vous demandez simplement un redimensionnement en général. Cette méthode peut ne pas aboutir à un redimensionnement de bonne qualité.
http://msdn.microsoft.com/en-us/library/system.drawing.image.getthumbnailimage.aspx
How to: Copy Images de MSDN.
La peinture coupe juste l'image, n'est-ce pas? Les exemples sur cette page ont les outils pour ce dont vous avez besoin.
@Robert - Paint.Net est récemment devenu une source fermée en raison du changement de marque et de la revente. Cependant, les anciennes versions (3.36) sont toujours open source.
@Moshe, ceci est mieux indiqué comme commentaire sous ma réponse, pas comme une autre réponse à la question du PO. –
Il a besoin de 50 rep. pour pouvoir écrire des commentaires ... – Jan
Vous pouvez définir le mode d'interpolation graphique sur le plus proche voisin, puis utiliser drawimage pour le redimensionner sans anticrénelage. (Pardonnez mon vb :-))
Dim img As Image = Image.FromFile("c:\jpg\1.jpg")
Dim g As Graphics
pic1.Image = New Bitmap(180, 180, System.Drawing.Imaging.PixelFormat.Format32bppArgb)
g = Graphics.FromImage(pic1.Image)
g.InterpolationMode = Drawing2D.InterpolationMode.NearestNeighbor
g.DrawImage(img, 0, 0, pic1.Image.Width, pic1.Image.Height)
// ********************************************** ScaleBitmap
/// <summary>
/// Scale a bitmap by a scale factor, growing or shrinking
/// both axes, maintaining the aspect ratio
/// </summary>
/// <param name="inputBmp">
/// Bitmap to scale
/// </param>
/// <param name="scale_factor">
/// Factor by which to scale
/// </param>
/// <returns>
/// New bitmap containing the original image, scaled by the
/// scale factor
/// </returns>
/// <citation>
/// A Bitmap Manipulation Class With Support For Format
/// Conversion, Bitmap Retrieval from a URL, Overlays, etc.,
/// Adam Nelson, The Code Project, September 2003.
/// </citation>
private Bitmap ScaleBitmap (Bitmap bitmap,
float scale_factor)
{
Graphics g = null;
Bitmap new_bitmap = null;
Rectangle rectangle;
int height = (int) ((float) bitmap.Size.Height *
scale_factor);
int width = (int) ((float) bitmap.Size.Width *
scale_factor);
new_bitmap = new Bitmap (width,
height,
PixelFormat.Format24bppRgb);
g = Graphics.FromImage ((Image) new_bitmap);
g.InterpolationMode = InterpolationMode.High;
g.ScaleTransform (scale_factor, scale_factor);
rectangle = new Rectangle (0,
0,
bitmap.Size.Width,
bitmap.Size.Height);
g.DrawImage (bitmap,
rectangle,
rectangle,
GraphicsUnit.Pixel);
g.Dispose ();
return (new_bitmap);
}
Vous voulez InterpolationMode.NearestNeighbor - pas InterpolationMode.High. – BrainSlugs83
- 1. Redimensionner une image bitmap comme MS Paint - pas anticrénelage
- 2. Composant Java Paint en bitmap
- 3. C# WinForms - sélection de boîte image/image - comme MS Paint
- 4. Comment créer un clone MS Paint avec Python et pygame
- 5. La meilleure façon de redimensionner un bitmap dans une vue?
- 6. Actionscript EventDispatcher dans le programme Paint
- 7. données bitmap comme film Clip
- 8. image Redimensionner dans asp.net
- 9. Éditeur de bitmap WPF
- 10. multi Image: défiler comme redimensionner
- 11. Redimensionner une image bitmap de taille 9000x9000 à 150x150?
- 12. C# ListBox Paint Event
- 13. Texte Rendu sur bitmap
- 14. Redimensionner l'image en Java. Comment redimensionner
- 15. Fusionner comme dates dans MS Access
- 16. Intégrer MS Word comme éditeur (comme dans Outlook)
- 17. Comment paint() dans un CLONE JPanel?
- 18. PIL enregistrer comme bitmap couleur 24 bits
- 19. Java - Paint, JFrame et Backgrounds
- 20. Comment dessiner sur Bitmap dans Android?
- 21. Javascript redimensionner le texte comme une image
- 22. vue converti en bitmap
- 23. Redimensionner des images dans VB.NET
- 24. Copie bitmap dans d'autres bitmap avec WPF
- 25. BlackBerry Bitmap listener
- 26. Exceptions et violations d'accès dans les événements Paint dans Windows
- 27. nouvelle Bitmap OutOfMemoryException dans CF 2.0SP2
- 28. ms-accès: colonne d'affichage comme « autre chose »
- 29. Boîte de dialogue Swing Paint Issue
- 30. semble comme bug dans les expressions lambda MS VC2010?
Les nouvelles fonctions de WPF sont généralement plus rapides et mieux que les anciens System.Drawing. Découvrez http://stackoverflow.com/questions/754168/how-to-serve-high-resolution-imagery-in-a-low-resolution-form-using-c –