• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Resize ảnh, tạo thumbnail cho ảnh

Các mẹo vặt linh tinh không thuộc các nhóm trên

Moderators: tungcan5diop, QUANITGROBEST

User avatar
NoBi
Quản trị
Quản trị
Posts: 961
Joined: Tue 18/03/2008 1:22 pm
Location: Sài Gòn
Has thanked: 53 times
Been thanked: 66 times
Contact:

Resize ảnh, tạo thumbnail cho ảnh

Postby NoBi » Mon 17/08/2009 5:12 pm

Thủ thuật: Resize ảnh, tạo thumbnail cho ảnh
Tác giả: Sưu tầm
Mô tả: Resize ảnh, ứng dụng để tạo thumbnail (ảnh nhỏ) cho 1 ảnh lớn


Code: Select all

  1. /// <summary>
  2.     /// Resize image
  3.     /// </summary>
  4.     /// <param name="imgToResize">Image need resize</param>
  5.     /// <param name="size">New size</param>
  6.     /// <returns>Image with new size</returns>
  7.     public static System.Drawing.Image resizeImage(System.Drawing.Image imgToResize, Size size)
  8.     {
  9.         int sourceWidth = imgToResize.Width;
  10.         int sourceHeight = imgToResize.Height;
  11.  
  12.         float nPercent = 0;
  13.         float nPercentW = 0;
  14.         float nPercentH = 0;
  15.  
  16.         nPercentW = ((float)size.Width / (float)sourceWidth);
  17.         nPercentH = ((float)size.Height / (float)sourceHeight);
  18.  
  19.         if (nPercentH < nPercentW)
  20.             nPercent = nPercentH;
  21.         else
  22.             nPercent = nPercentW;
  23.  
  24.         int destWidth = (int)(sourceWidth * nPercent);
  25.         int destHeight = (int)(sourceHeight * nPercent);
  26.  
  27.         Bitmap b = new Bitmap(destWidth, destHeight);
  28.         Graphics g = Graphics.FromImage((System.Drawing.Image)b);
  29.         g.InterpolationMode = InterpolationMode.HighQualityBicubic;
  30.  
  31.         g.DrawImage(imgToResize, 0, 0, destWidth, destHeight);
  32.         g.Dispose();
  33.  
  34.         return (System.Drawing.Image)b;
  35.     }


Sử dụng như sau:

Code: Select all

  1.        // Init size
  2.         System.Drawing.Size size = new System.Drawing.Size();
  3.         size.Width = 100;
  4.         size.Height = 100;
  5.  
  6.         System.Drawing.Image newImg = resizeImage(System.Drawing.Image.FromFile("Đường dẫn file hình đã có"), size);
  7.  
  8.         newImg.Save("Đường dẫn file hình mới cần lưu lại");
  9.         }
  10.     }


:>

User avatar
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Posts: 1641
Joined: Wed 16/04/2008 11:25 am
Location: Chợ Lách - Bến Tre
Been thanked: 31 times
Contact:

Re: Resize ảnh, tạo thumbnail cho ảnh

Postby clarkkent » Thu 10/09/2009 11:04 am

tạo thumbnail :D

Code: Select all

  1.        Dim bm As New Bitmap("E:\TIN SOFTWARE\anhcuatui.jpg")
  2.         PictureBox1.Image = bm.GetThumbnailImage(80, 80, Nothing, IntPtr.Zero)
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...


Return to “[.NET] Mẹo vặt khác”

Who is online

Users browsing this forum: No registered users and 0 guests