Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mengubah saiz imej dalam C#?
Peta bit terdiri daripada data piksel imej grafik dan atributnya. Terdapat banyak format standard untuk menyimpan bitmap ke fail. GDI+ menyokong format fail berikut: BMP, GIF, EXIF, JPG, PNG dan TIFF. Anda boleh menggunakan salah satu daripada pembina Bitmap untuk mencipta imej daripada fail, strim dan sumber lain dan menggunakan kaedah Simpan untuk menyimpannya ke strim atau sistem fail.
Dalam kod di bawah kaedah CompressAndSaveImageAsync memampatkan imej dan menyimpannya dalam laluan yang disebutkan.
Nama imej baharu ialah gabungan id pengguna desktop dan dateTime
private async Task<string> CompressAndSaveImageAsync(Bitmap inputImage, int quality=50){ string imageSavedPath = string.Empty; try{ var jpgEncoder = await GetEncoderAsync(ImageFormat.Jpeg); var imageEncoder = Encoder.Quality; var imageEncoderParameters = new EncoderParameters(1); var imageEncoderParameter = new EncoderParameter(imageEncoder, quality); imageEncoderParameters.Param[0] = imageEncoderParameter; var userId = Regex.Replace(WindowsIdentity.GetCurrent().Name, @"[^0−9a−zA−Z]+", "_"); var currentDateTime = Regex.Replace(DateTimeOffset.Now.ToString().Split('+')[0].Trim(), @" [^0−9a−zA−Z]+", "_"); var imageName = $"{userId}_{currentDateTime}.jpg"; imageSavedPath = "C:\Users\K\Desktop\Questions\Images"; inputImage.Save(imageSavedPath, jpgEncoder, imageEncoderParameters); inputImage.Dispose(); } catch (Exception ex){ throw } return imageSavedPath; } private async Task<ImageCodecInfo> GetEncoderAsync(ImageFormat format){ ImageCodecInfo imageCodecInfo = null; try{ var codecs = ImageCodecInfo.GetImageDecoders(); foreach (var codec in codecs){ if (codec.FormatID == format.Guid){ imageCodecInfo = codec; } } } catch (Exception ex){ throw } return imageCodecInfo; }
Atas ialah kandungan terperinci Bagaimana untuk mengubah saiz imej dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!