1. Produk
  2.   Imej
  3.   .NET
  4.   ImageSharp  

ImageSharp  

 
 

Perpustakaan C# .NET Sumber Terbuka untuk Grafik 2D

Baca, Tulis, Ubah Suai, Ubah Saiz & Tukar Imej PNG, JPEG, GIF & TIFF menggunakan .NET API.

ImageSharp ialah perpustakaan sumber terbuka merentas platform yang ringkas namun sangat berkuasa untuk pemprosesan fail imej di dalam aplikasi C#. Ia adalah API grafik 2D yang diurus sepenuhnya dan merentas platform yang direka untuk membenarkan pemprosesan imej. ImageSharp ialah perpustakaan pemprosesan imej sumber terbuka yang dikeluarkan dengan matlamat untuk menyediakan alternatif kepada System.Drawing API.

API ini komprehensif dan menyokong algoritma lanjutan untuk pemprosesan imej. API dipertingkatkan dari tahun ke tahun untuk menyediakan sokongan untuk pemprosesan imej yang lebih maju. Satu-satunya pergantungan ialah .NET itu sendiri, yang menjadikannya sangat mudah alih. API telah menyertakan sokongan untuk ciri lanjutan seperti saiz semula imej, pengekodan dan penyahkodan imej, menyahkod metadata imej sahaja, pengklonan imej, Melukis tera air pada imej, Melukis teks di sepanjang laluan dan banyak lagi.

Previous Next

Bermula dengan ImageSharp

Keluaran Stabil tersedia pada NuGet Untuk versi beta, pastikan suis Sertakan Prakeluaran didayakan. Keluaran pembangunan boleh didapati melalui MyGet.

Pasang ImageSharp melalui NuGet

Install-Package SixLabors.ImageSharp -Version number 

C# API untuk Mengubah Saiz Imej

Pustaka ImageSharp membenarkan pengaturcara C# .NET mengubah saiz imej di dalam aplikasi .NET mereka sendiri. Saiz semula imej memerlukan proses penjanaan dan lelaran melalui piksel imej sasaran dan kawasan pensampelan imej sumber untuk memilih warna yang hendak dilaksanakan bagi setiap piksel. Anda boleh menetapkan algoritma dengan mudah semasa memproses imej, seperti Bicubic, Hermite, Box, CatmullRom, Lanczos2 dan banyak lagi. Selain daripada operasi saiz semula asas, ImageSharp juga menawarkan ciri yang lebih maju.

Saiz semula Imej melalui C# API

// Load File 
using (Image image = Image.Load("fileformat.jpg"))
{
  // Resize file 
  image.Mutate(x => x
      .Resize(image.Width / 2, image.Height / 2)
      .greyscale());
  // Save
  image.Save("fileformat_out.jpg");
}                
                  

Lukis Tera Air pada Imej

Biasanya, orang melindungi imej mereka dengan meletakkan tera air yang besar bertindih untuk menghalang orang daripada menggunakan imej tanpa kebenaran. Pustaka ImageSharp menyediakan sokongan untuk menambah tera air pada imej dalam aplikasi C++. Untuk memulakan, anda memerlukan keluarga fon dan anda boleh mendapatkannya dengan mudah dari kedai fon sistem. Lukis teks di atas imej & kelabukannya dengan kelegapan 50%.

Lukis Teks Sepanjang Laluan & Gunakan Kesan pada Imej

Pustaka ImageSharp membenarkan pembangun C# .NET melukis beberapa teks mengikut kontur laluan. Adalah disyorkan untuk membuat koleksi fon. Mula-mula, mari kita hasilkan teks sebagai satu set vektor yang dilukis di sepanjang laluan. Selepas melukis laluan supaya kita dapat melihat teks yang sepatutnya diikuti. API ImageSharp juga membenarkan untuk menggunakan pelbagai jenis kesan pada imej hanya dalam bentuk.

Gunakan Kesan pada Imej


namespace CustomImageProcessor
{
    static class Program
    {
        static void Main(string[] args)
        {
            System.IO.Directory.CreateDirectory("output");
            using (Image image = Image.Load("fb.jpg"))
            {
                var outerRadii = Math.Min(image.Width, image.Height) / 2;
                var star = new Star(new PointF(image.Width / 2, image.Height / 2), 5, outerRadii / 2, outerRadii);
                using (var clone = image.Clone(p =>
                {
                    p.GaussianBlur(15); // apply the effect here you and inside the shape
                }))
                {
                    clone.Mutate(x => x.Crop((Rectangle)star.Bounds));
                    var brush = new ImageBrush(clone);
                    // cloned image with the effects applied
                    image.Mutate(c => c.Fill(brush, star));
                }
                image.Save("output/fb.png");
            }
        }
    }
}              
 Melayu