Asp.Net Core ClosedXml Excel Resim Ekleme

Merhaba arkadaşlar, bi önceki yazımızda Asp.Net Core’ da ClosedXml kütüphanesinin temel olarak kullanımına bakmıştık. Bu yazımızda ise excelde resim oluşturma işlemine bakıyor olacağız.

Senaryomuz, projede dizininde ilgili klasördeki resmi excel dosyasına yükleyerek kullanıcının export ettiği excelde resmi göstermek şeklinde özetlenebilir.

1.Dependency Injection(DI) yapılandırması

Resim işlemi yapacağımız için controllerımızda ilgili DI yapılandırmasını yapmamız gerekiyor.

    private readonly IWebHostEnvironment _webHostEnvironment;
    public HomeController(IWebHostEnvironment webHostEnvironment)
    {
        _webHostEnvironment = webHostEnvironment;
    }

2.Resmi excel dosyasında gösterme işlemi

_webHostEnvironment.ContentRootPath ile sunucudaki proje dizinine erişiyoruz. Bu ifadenin arkasına eklemek istediğimiz resmin yolunu ekleyerek resmimize ulaşıyoruz. Dilersek hücre biçimlendirmesi yaparak işlemi sonlandırıyoruz.

    using (var workbook = new XLWorkbook())
    {
        var workSheet = workbook.Worksheets.Add("Öğrenci istesi");
        var rowNumber = 1;
        workSheet.Row(1).Height = 50;
        workSheet.Column(1).Width = 25;
        string contentRootPath = _webHostEnvironment.ContentRootPath;
        if (System.IO.File.Exists(contentRootPath + "/Logo/Acente/" + acenteBilgi.Logo + ""))
        {
            var image = workSheet.AddPicture(contentRootPath + "/Logo/Sube/" + resimAdi.jpg + "");
            var range = workSheet.Range(workSheet.Cell(1, 1), workSheet.Cell(2, 1)).Merge();
            image.Name = subeAdi;
        }
    }

Related Post

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir