NEWS

[C#] Hướng dẫn đọc file hình ảnh định dạng WEBP và chuyển đổi WebP sang JPG

[C#] Hướng dẫn đọc file hình ảnh định dạng WEBP và chuyển đổi WebP sang JPG
Đăng bởi: Thảo Meo - Lượt xem: 2814 08:22:41, 20/07/2022C#   In bài viết

Xin chào các bạn, bài viết hôm nay mình sẻ tiếp tục hướng dẫn các bạn cách đọc hình ảnh định dạng WebP vào picturebox C#, Winform.

[C#] Read and Convert WebP to Jpeg in Winform

Vậy định dạng hình ảnh WebP là gì?

Google đã dành vài năm để tạo ra WebP với mục tiêu giảm kích thước file hình ảnh mà không ảnh hưởng đến chất lượng.

Để làm điều này, định dạng hình ảnh WebP sử dụng thuật toán nén hiệu quả hơn, giúp kích thước file hình ảnh trên web nhỏ hơn đáng kể so với JPEG hoặc PNG.

Định dạng WebP sẽ tăng tối ưu tăng tốc độ load trang web nhanh hơn.

Các bạn có thể xem hình ảnh dưới đây để so sánh kích thước của 1 hình ảnh định dạng: jpeg và webp

webp_in_csharp

Mặc định, trên Winform không có hỗ trợ bạn đọc định dạng hình ảnh File WebP.

Trong bài viết này, mình sẽ hướng dẫn các bạn sử dụng thư viện libwebp.dll để đọc file định dạng này.

Thư viện, các bạn download ở source code bên dưới nhé.

Giao diện demo ứng dụng đọc hình ảnh WEBP C#:

read_webp

Source code c#:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using WebPWrapper;

namespace ReadWebPToPictureBox
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
           // pictureBox1.Image = Image.FromFile("SimpleLossless.webp");
            using (WebP webp = new WebP())
            {
                Bitmap bmp = webp.Load("SimpleLossless.webp");
                pictureBox1.Image = bmp;
            }
        }

        private void btnSave_Click(object sender, EventArgs e)
        {
            var image = pictureBox1.Image;
            using (var dlg = new SaveFileDialog()) {
                dlg.Filter = "*.jpg|jpg image";
                if (dlg.ShowDialog() == DialogResult.OK) {
                    image.Save(dlg.FileName + ".jpg", ImageFormat.Jpeg);
                }
               
            }
        }
    }
}

Nếu các bạn muốn save hình ảnh từ jpg, png,... sang webp thì các bạn đọc nó vào Bitmap rồi convert theo lệnh sau:

Bitmap bmp = new Bitmap("test.jpg");
using (WebP webp = new WebP())
  webp.Save(bmp, 80, "test.webp");

Thanks for watching!

DOWNLOAD SOURCE

THÔNG TIN TÁC GIẢ

BÀI VIẾT LIÊN QUAN

[C#] Hướng dẫn đọc file hình ảnh định dạng WEBP và chuyển đổi WebP sang JPG
Đăng bởi: Thảo Meo - Lượt xem: 2814 08:22:41, 20/07/2022C#   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp
.