การบีบอัดภาพ เป็นวิธีที่ได้รับความนิยมในการลดขนาดของภาพ ช่วยให้คุณลดพื้นที่และเวลาที่ต้องใช้ในการจัดเก็บและส่งภาพตามลำดับ มีเทคนิคการบีบอัดที่หลากหลายซึ่งบีบอัดภาพในลักษณะที่คุณภาพของภาพไม่ลดลง ตามนั้น โพสต์นี้จะนำเสนอวิธีง่ายๆ ในการบีบอัดรูปภาพ PNG, JPEG และ TIFF โดยใช้ภาษา C#
- C# Image Compression API - ดาวน์โหลดฟรี
- บีบอัดรูปภาพ PNG ใน C#
- บีบอัดรูปภาพ JPEG ใน C#
- ใช้การบีบอัดภาพ TIFF ใน C #
C# Image Compression API - ดาวน์โหลดฟรี
Aspose.Imaging for .NET คือ API การประมวลผลภาพอันทรงพลังที่ให้คุณจัดการรูปแบบรูปภาพยอดนิยมจากภายในแอปพลิเคชัน .NET ของคุณ นอกจากนี้ API ยังให้คุณใช้การบีบอัดประเภทต่างๆ กับรูปภาพ รวมถึง PNG, JPEG และ TIFF หากต้องการใช้ API คุณสามารถ ดาวน์โหลด DLL หรือติดตั้งโดยใช้ NuGet
Install-Package Aspose.Imaging
บีบอัดรูปภาพ PNG ใน C#
สำหรับรูปภาพ PNG คุณสามารถตั้งค่าระดับการบีบอัดได้ตั้งแต่ 0 ถึง 9 โดยที่ 9 คือการบีบอัดสูงสุดและ 0 คือโหมดจัดเก็บ ต่อไปนี้เป็นขั้นตอนในการบีบอัดรูปภาพ PNG โดยใช้ Aspose.Imaging for .NET
- โหลดภาพโดยใช้คลาส Image
- สร้างวัตถุของคลาส PngOptions
- ตั้งค่าระดับการบีบอัดโดยใช้คุณสมบัติ PngOptions.CompressionLevel
- บันทึกภาพโดยใช้เมธอด Image.Save(String, PngOptions)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีบีบอัดรูปภาพ PNG โดยใช้ C#
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_PNG();
// โหลดรูปภาพจากไฟล์ (หรือสตรีม)
using (Image image = Image.Load(dataDir + "aspose_logo.png"))
{
// วนซ้ำช่วง CompressionLevel ที่เป็นไปได้
for (int i = 0; i <= 9; i++)
{
// สร้างอินสแตนซ์ของ PngOptions สำหรับแต่ละผลลัพธ์ PNG ตั้งค่า CompressionLevel และบันทึกผลลัพธ์บนดิสก์
PngOptions options = new PngOptions();
options.CompressionLevel = i;
image.Save(i + "_out.png", options);
}
}
บีบอัดรูปภาพ JPEG ใน C#
เพื่อจัดการกับรูปภาพ JPEG Aspose.Imaging for .NET จัดเตรียมคลาส JpegOptions ซึ่งมีประเภทการบีบอัดต่อไปนี้สำหรับรูปภาพ JPEG
- บรรทัดฐาน
- ความก้าวหน้า
- ไม่สูญเสีย
- JpegL
ต่อไปนี้เป็นขั้นตอนในการบีบอัดภาพ JPEG โดยใช้ประเภทการบีบอัดประเภทใดประเภทหนึ่งที่กล่าวถึงข้างต้น
- โหลดภาพ JPEG โดยใช้คลาส Image
- สร้างวัตถุของคลาส JpegOptions
- ตั้งค่าโหมดสีโดยใช้คุณสมบัติ JpegOptions.ColorType
- ตั้งค่าประเภทการบีบอัดโดยใช้คุณสมบัติ JpegOptions.CompressionType
- บันทึกภาพโดยใช้เมธอด Image.Save(String, JpegOptions)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีบีบอัดรูปภาพ JPEG โดยใช้ C#
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_JPEG();
using (var original = Image.Load(dataDir+"ColorGif.gif"))
{
var jpegOptions = new JpegOptions()
{
ColorType = JpegCompressionColorMode.Grayscale,
CompressionType = JpegCompressionMode.Progressive,
};
original.Save("D:/temp/result.jpg", jpegOptions);
}
ใช้การบีบอัดภาพ TIFF ใน C
Aspose.Imaging for .NET มีประเภทการบีบอัด กว้าง สำหรับภาพ TIFF รวมถึง LZW, Packbits, CCIT Fax 3 & 4 และอื่นๆ คุณสามารถเลือกประเภทที่เหมาะสมตามความต้องการของคุณ ต่อไปนี้เป็นขั้นตอนในการบีบอัดภาพ TIFF
- โหลดภาพ TIFF โดยใช้คลาส Image
- สร้างวัตถุของ TiffOptions และเริ่มต้นด้วยค่า enum TiffExpectedFormat.Default
- ตั้งค่าโหมด BitsPerSample, Compression, Photometric และ Palette สำหรับภาพ Tiff
- บันทึกภาพโดยใช้เมธอด Image.Save(String, TiffOptions)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีบีบอัดรูปภาพ TIFF โดยใช้ C#
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_ModifyingAndConvertingImages();
// โหลดรูปภาพผ่านตำแหน่งพาธของไฟล์หรือสตรีม
Image image = Image.Load(dataDir + "SampleTiff.tiff");
// สร้างอินสแตนซ์ของ TiffOptions สำหรับรูปภาพผลลัพธ์
TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);
// ตั้งค่า BitsPerSample การบีบอัด โหมดโฟโตเมตริก และจานสีโทนสีเทา
outputSettings.BitsPerSample = new ushort[] { 4 };
outputSettings.Compression = TiffCompressions.Lzw;
outputSettings.Photometric = TiffPhotometrics.Palette;
outputSettings.Palette = ColorPaletteHelper.Create4BitGrayscale(false);
image.Save(dataDir + "SampleTiff_out.tiff", outputSettings);
บทสรุป
ในโพสต์นี้ คุณได้เรียนรู้วิธีบีบอัดรูปภาพ PNG, JPEG และ TIFF โดยใช้ C# มีการระบุเทคนิคการบีบอัดต่างๆ ที่รองรับสำหรับภาพ JPEG และ TIFF คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ API การประมวลผลภาพ .NET โดยใช้ เอกสารประกอบ
ดูสิ่งนี้ด้วย
ข้อมูล: การใช้ตัวแปลง Aspose JPG เป็น PPT หรือ PNG เป็น PPT คุณสามารถสร้างงานนำเสนอ PowerPoint จากรูปภาพง่ายๆ