บทช่วยสอนทีละขั้นตอนนี้อธิบายวิธี สร้าง GIF จากรูปภาพใน C# มีขั้นตอนโดยละเอียดในการกำหนดค่าสภาพแวดล้อมพร้อมกับโฟลว์เชิงตรรกะของโปรแกรมเพื่อให้เข้าใจกระบวนการได้ง่าย การใช้ C#animation GIF มีโค้ดสำหรับสร้างไฟล์ GIF ที่ส่วนท้ายซึ่งใช้รูปภาพประเภทต่างๆ เช่น JPG, PNG และ BMP
ขั้นตอนในการสร้าง GIF จากรูปภาพใน C#
- สร้างสภาพแวดล้อมเพื่อใช้ Aspose.Imaging for .NET ในโครงการของคุณเพื่อสร้าง GIF
- สร้างรายการ raster images โดยใช้ไฟล์อิมเมจในดิสก์
- สร้าง GIF image โดยใช้ภาพแรสเตอร์ภาพแรกในรายการ
- แยกรายการที่เหลือและเพิ่มแต่ละภาพลงในภาพ GIF
- บันทึกภาพ GIF บนดิสก์
ขั้นตอนข้างต้นอธิบายถึงวิธีการใช้ C# สร้าง GIF จากรูปภาพ โดยแบ่งปันวิธีการทีละขั้นตอน โดยอันดับแรกรูปภาพทั้งหมดจะถูกโหลดลงในรายการของคลาสออบเจกต์ RasterImage จากนั้นไฟล์ GIF จะถูกสร้างขึ้นโดยใช้ขั้นตอนแรก ภาพในรายการ. เมื่อสร้างภาพ GIF แล้ว ตอนนี้คุณสามารถเพิ่มภาพได้มากเท่าที่คุณต้องการเพื่อสร้างภาพ GIF ที่ต้องการ
รหัสเพื่อสร้าง GIF จากรูปภาพใน C
using System.Collections.Generic; | |
using System.IO; | |
using System.Linq; | |
using Aspose.Imaging; | |
using Aspose.Imaging.FileFormats.Gif; | |
using Aspose.Imaging.FileFormats.Gif.Blocks; | |
namespace CreateGifFromImagesInCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) // Main function to create GIF from images in CSharp | |
{ | |
// Load the license to create a GIF image without | |
// the trial version watermark in it | |
Aspose.Imaging.License licCreateGif= new Aspose.Imaging.License(); | |
licCreateGif.SetLicense("Aspose.Imaging.lic"); | |
// Get the list of raster images having pictures in it from the given folder | |
var rasterImages = LoadRasterImages("AnimationImages/").ToArray(); | |
// From the first frame, create a GIF image | |
using (var gifImage = new GifImage(new GifFrameBlock(rasterImages[0]))) | |
{ | |
// Once the GIF is created, add rest of the frames in it | |
for (var imageIndex = 1; imageIndex < rasterImages.Length; imageIndex++) | |
{ | |
// Add frame using the GifImage.AddPage function | |
gifImage.AddPage(rasterImages[imageIndex]); | |
} | |
// Save the output GIF image | |
gifImage.Save("Multipage.gif"); | |
} | |
System.Console.WriteLine("Done"); | |
} | |
//Function to load the images from the given directory into the collection of RasterImage | |
private static IEnumerable<RasterImage> LoadRasterImages(string directory) | |
{ | |
foreach (var imagePath in Directory.GetFiles(directory)) | |
{ | |
yield return (RasterImage)Image.Load(imagePath); | |
} | |
} | |
} | |
} |
รหัสนี้สาธิตวิธีการใช้ C# สร้างภาพเคลื่อนไหว GIF โดยทำตามขั้นตอนด้านบน เมื่อเราสร้าง GIF จากภาพแรก เราสามารถตั้งค่าจานสีได้ด้วย และถ้าเราไม่ได้ตั้งค่าตามตัวอย่างข้างต้น จะใช้จานสีเริ่มต้น นอกจากนี้ ในขณะที่โหลดรูปภาพจากดิสก์ลงในรายการ คุณสามารถใช้วัตถุคลาส LoadOptions ที่รองรับการตั้งค่าแหล่งแบบอักษรที่กำหนดเอง ตั้งค่าคำใบ้ขนาดบัฟเฟอร์เพื่อจัดการรูปภาพขนาดใหญ่ และตั้งค่าสีพื้นหลังของข้อมูลเมื่อไม่สามารถกู้คืนค่าพิกเซลได้เนื่องจากบางค่า ข้อผิดพลาด
บทความนี้สอนเราว่าการใช้ C# สร้าง GIF ด้วยความช่วยเหลือของโค้ดเพียงไม่กี่บรรทัดเท่านั้น หากคุณสนใจคุณสมบัติอื่นๆ เช่น การหมุนภาพ โปรดดูบทความใน วิธีหมุนภาพใน C#