Cách hợp nhất JPG thành JPG trong C#

Cách hợp nhất JPG thành JPG trong C#

Hãy phát triển sự hợp nhất JPG thành JPG bằng cách sử dụng [thư viện] hình ảnh C# này 2. Có nhiều tình huống khi bạn cần hợp nhất nhiều hình ảnh thành một tệp hình ảnh duy nhất. Vì vậy, việc tự động hóa toàn bộ quá trình này sẽ mang lại lợi thế cạnh tranh cho phần mềm doanh nghiệp của bạn. Do đó, trong bài đăng trên blog này, chúng ta sẽ tìm hiểu cách hợp nhất JPG với JPG trong C# bằng cách sử dụng các phương thức được thư viện mạnh mẽ này cung cấp. Đến cuối bài viết này, bạn sẽ có thể viết các đoạn mã để đạt được chức năng này.

Các phần sau đây sẽ được đề cập trong hướng dẫn này:

Cài đặt thư viện hình ảnh C#

Điều tuyệt vời nhất là bạn có thể cài đặt thư viện cấp doanh nghiệp này một cách dễ dàng. Tuy nhiên, tải xuống DLL của nó hoặc cài đặt nó bằng cách chạy lệnh sau trong trình quản lý gói NuGet.

Install-Package Aspose.Imaging

Cách hợp nhất JPG thành JPG trong C#

Cho đến nay, bạn đã cài đặt thư viện hình ảnh C# này trong ứng dụng .NET của mình. Do đó, bạn đã sẵn sàng bắt đầu viết mã để xây dựng sự hợp nhất JPG sang JPG theo chương trình.

Vui lòng làm theo các bước và đoạn mã được đề cập bên dưới:

  1. Gọi thuộc tính Size để lấy kích thước hình ảnh thu được.
  2. Lặp lại các đường dẫn hình ảnh, tải từng hình ảnh một bằng cách gọi phương thức Load của lớp Image và thêm vào danh sách imageSizes.
  3. Tính chiều rộng và chiều cao của hình ảnh.
  4. Khởi tạo một phiên bản mới của lớp FileCreateSource.
  5. Tạo một đối tượng mới của lớp JpegOptions.
  6. Gọi phương thức Tạo để tạo hình ảnh mới bằng cách sử dụng các tùy chọn tạo đã chỉ định.
  7. Lặp lại các hình ảnh, tải hình ảnh bằng cách gọi phương thức Tải.
  8. Khởi tạo một phiên bản mới của cấu trúc Hình chữ nhật với vị trí và kích thước được chỉ định.
  9. Gọi phương thức SaveArgb32Pixels để lưu pixel ARGB 32 bit.
  10. Gọi phương thức Save để lưu dữ liệu của hình ảnh vào luồng được chỉ định ở định dạng tệp đã chỉ định theo các tùy chọn lưu.

Sao chép và dán đoạn mã sau vào tệp chính của bạn:

using Aspose.Imaging;
using Aspose.Imaging.FileFormats.Jpeg;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.Sources;
string[] imagePaths = {"image.jpg", "image.jpg" };
string outputPath =   "result1.jpg";
string tempFilePath = "temp.jpg";
// Gọi thuộc tính Size để lấy kích thước hình ảnh thu được. 
List<Size> imageSizes = new List<Size>();
// Lặp lại các đường dẫn hình ảnh, tải từng hình ảnh một bằng cách gọi phương thức Load của lớp Image và thêm vào danh sách imageSizes.
foreach (string imagePath in imagePaths)
{
    using (RasterImage image = (RasterImage)Image.Load(imagePath))
    {
        imageSizes.Add(image.Size);
    }
}
// Tính chiều rộng và chiều cao của hình ảnh. 
int newWidth = imageSizes.Sum(size => size.Width);
int newHeight = imageSizes.Max(size => size.Height);
// Khởi tạo một phiên bản mới của lớp FileCreateSource. 
Source tempFileSource = new FileCreateSource(tempFilePath, isTemporal: true);
// Tạo một đối tượng mới của lớp JpegOptions  
JpegOptions options = new JpegOptions() { Source = tempFileSource, Quality = 100 };
// Gọi phương thức Create để tạo một hình ảnh mới bằng cách sử dụng các tùy chọn tạo đã chỉ định. 
using (JpegImage newImage = (JpegImage)Image.Create(options, newWidth, newHeight))
{
    // Lặp lại các hình ảnh, tải hình ảnh bằng cách gọi phương thức Load. 
    int stitchedWidth = 0;
    foreach (string imagePath in imagePaths)
    {
        using (RasterImage image = (RasterImage)Image.Load(imagePath))
        {
            // Khởi tạo một phiên bản mới của cấu trúc Hình chữ nhật với vị trí và kích thước được chỉ định. 
            Rectangle bounds = new Rectangle(stitchedWidth, 0, image.Width, image.Height);
            // Gọi phương thức SaveArgb32Pixels để lưu pixel ARGB 32 bit.
            newImage.SaveArgb32Pixels(bounds, image.LoadArgb32Pixels(image.Bounds));
            stitchedWidth += image.Width;
        }
    }
    // Gọi phương thức Save để lưu dữ liệu của hình ảnh vào luồng đã chỉ định ở định dạng tệp đã chỉ định theo tùy chọn lưu. 
    newImage.Save(outputPath);
}

Bạn có thể thấy đầu ra trong hình ảnh dưới đây:

sáp nhập JPG sang JPG

Nhận giấy phép miễn phí

Bạn có thể tận dụng giấy phép tạm thời miễn phí để dùng thử API mà không bị giới hạn về đánh giá.

Tổng hợp

Đây là phần cuối của bài viết blog này. Bạn đã học cách hợp nhất JPG thành JPG trong C# bằng thư viện hình ảnh C# này. Hơn nữa, bạn có thể xây dựng sự hợp nhất JPG sang JPG cho ứng dụng kinh doanh của mình theo chương trình. Hơn nữa, đừng quên truy cập tài liệu để biết các tính năng thú vị khác.

Hơn nữa, chúng tôi khuyên bạn nên làm theo Hướng dẫn bắt đầu của chúng tôi.

Cuối cùng, conholdate.com đang viết bài blog mới. Vì vậy, hãy giữ liên lạc để cập nhật thường xuyên.

Đặt một câu hỏi

Bạn có thể cho chúng tôi biết về các câu hỏi hoặc thắc mắc của bạn trên diễn đàn của chúng tôi.

Câu hỏi thường gặp

Làm cách nào để kết hợp các tệp JPG thành một JPG?

Gọi phương thức Load, tạo một thể hiện của lớp JpegOptions và gọi phương thức Save để lưu tệp. Ngoài ra, bạn có thể truy cập liên kết này để biết đoạn mã hoàn chỉnh được viết bằng C#.

Làm cách nào để kết hợp các tệp JPEG vào một tài liệu?

Bạn có thể tận dụng [thư viện] hình ảnh C# này 2 để kết hợp các tệp hình ảnh JPEG/JPG thành một tài liệu theo chương trình.

Xem thêm