کلیه درآمد حاصل از فروش امروز مجموعه توسینسو به سیل زدگان عزیز سیستانی و بلوچ تعلق میگیرد.

قطعه کد برای تغییر سایز عکس در سی شارپ

سلام به همه ITPro ای های عزیز؛ یکی از مواردی که خیلی کاربرد داره، مخصوصاً تو طراحی برنامه های تحت وب، تغییر اندازه تصاویر هست. برای مثال فرض کنید برنامه تحت وب ای نوشتید و نیاز دارید تا پس از آپلود تصاویر، از اون ها Thumbnail یا عکس هایی با سایز کوچیکتر بسازید، بوسیله قطعه کدی که در این نکته معرفی میشه، شما میتونید تصاویر خودتون رو در اندازه ای که مد نظرتون هست تغییر سایز بدید. کد مورد نظر به صورت زیر هست:

namespace ITPro.Codes
{
    using System;
    using System.Drawing;
    using System.Drawing.2D;

    public class ImageTools
    {
        public Image ResizeImage(Image original, int targetWidth)
        {
            var percent = (double)original.Width / targetWidth;
            var destWidth = (int)(original.Width / percent);
            var destHeight = (int)(original.Height / percent);

            var b = new Bitmap(destWidth, destHeight);
            var g = Graphics.FromImage(b);
            try
            {
                g.InterpolationMode = InterpolationMode.HighQualityBicubic;
                g.SmoothingMode = SmoothingMode.HighQuality;
                g.PixelOffsetMode = PixelOffsetMode.HighQuality;
                g.CompositingQuality = CompositingQuality.HighQuality;

                g.DrawImage(original, 0, 0, destWidth, destHeight);
            }
            finally
            {
                g.Dispose();
            }

            return b;
        }
    }
}

متدی که در کد بالا معرفی شد، یک عکس و طول مورد نظر برای تغییر سایز تصویر رو میگیره، در داخل متد، عرض تصویر بر اساس طول وارد شده و طول محاسبه شده و تصویر به اندازه مورد نظر تغییر داده میشه و به عنوان خروجی برگردونده میشه. دلیل محاسبه خودکار عرض تصویر، جلوگیری از کشیدگی تصویر بعد از Resize کردن هست. امیدوارم این نکته مورد توجه شما قرار گرفته باشه. ITPRO باشید

نویسنده: حسین احمدی

منبع: انجمن تخصصی فناوری اطلاعات ایران

0 نظر

هیچ نظری ارسال نشده است! اولین نظر برای این مطلب را شما ارسال کنید...

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....