Draw-text-image-csharp

Görsel bilgi için çok fazla resim görüyoruz veya oluşturuyoruz. Bazen bir resme başka hiç kimsenin o metni değiştiremeyeceği şekilde metin eklemeniz veya çizmeniz gerekir. Görüntü filigranı en yaygın örneklerden biridir. Aynı şekilde, görüntülerin etiketlenmesi veya gözden geçirilmesi de metin çizmeyi gerektirebilir. Resimlerin üzerine metin çizmenin diğer kullanımlarını keşfedelim:

Görüntüye Biçimlendirilmiş Metin Ekleme, Ekleme veya Çizme – C# API Kurulumu

Aspose.Drawing for .NET API, System.Drawing paketiyle uyumlu bir 2B grafik kitaplığıdır. Görüntüler üzerinde dikdörtgenler, eğriler, çizgiler, metin ve diğer grafiklerin oluşturulmasını destekler. Herhangi bir 3. parti kütüphaneye bağımlı olmadığı için her ortamda kullanılabilir. Örneğin, System.Drawing kitaplığının desteklenmediği Linux veya Azure Functions V2’de grafikleri işlemek için de kullanılabilir. Aspose.Drawing for .NET API’yi İndirilenler bölümünden indirerek veya aşağıdaki kurulum komutu aracılığıyla kurabilirsiniz:

PM> Install-Package Aspose.Drawing

C# Kullanarak Programlı Olarak Mevcut Görüntüde Metni Filigran Olarak Çizin

Resimdeki metin filigranı genellikle resmin sahipliğini, ilişkisini veya amacını göstermek için kullanılır. Aşağıdaki adımlarla mevcut bir görüntüye filigran olarak metin ekleyebilir veya çizebilirsiniz:

  1. Mevcut giriş resmini yükle
  2. Graphics sınıf nesnesini başlat
  3. Metin biçimlendirmesini ve metni ayarla
  4. Metin çiz
  5. Çıktı görüntüsünü kaydet

Aşağıdaki kod, C# kullanarak programlı olarak mevcut görüntüye filigran olarak nasıl metin çizileceğini gösterir:

// Mevcut giriş resmini yükle
Bitmap bitmap = new Bitmap(dataDir + @"Test.png");

// Graphics sınıfı nesnesini başlat
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
Brush brush = new SolidBrush(Color.FromKnownColor(KnownColor.Black));

// Rengi belirtirken fırça bildir
Pen pen = new Pen(Color.FromKnownColor(KnownColor.Blue), 1);

// Metin yazı tipini ayarla
Font arial = new Font("Arial", 20, FontStyle.Regular);

// Metin ayarla
string text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";
Rectangle rectangle = new Rectangle(100, 100, 800, 600);
graphics.DrawRectangle(pen, rectangle);

// Metin çiz
graphics.DrawString(text, arial, brush, rectangle);

// Çıktı görüntüsünü kaydet
bitmap.Save(RunExamples.GetDataDir() + @"TextFonts\DrawText_out.png");

C# ile Programlı Olarak Sıfırdan Yeni Görüntüye Metin Çizin

Farklı amaçlar için resim formatında bazı metinler çizmeniz gerekebilir. Örneğin, başkalarının metin içeriklerini değiştirmesini veya kopyalamasını engellemek isteyebilirsiniz. Yeni resim üzerine metin çizmek için aşağıdaki adımları izlemeniz gerekir:

  1. Yeni görüntüyü sıfırdan başlat
  2. Brush sınıf nesnesini başlat
  3. Yazı tipi stilini, boyutunu vb. ayarlayın.
  4. Metin çiz on the image
  5. Çıktı görüntüsünü kaydet

Aşağıdaki kod parçacığı, C# dilini kullanarak programlı olarak yeni görüntüye sıfırdan nasıl metin çizileceğini gösterir:

// Yeni görüntüyü sıfırdan başlat
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
graphics.Clear(Color.FromKnownColor(KnownColor.White));

// Brush sınıfı nesnesini başlat
Brush brush = new SolidBrush(Color.FromKnownColor(KnownColor.Black));
Pen pen = new Pen(Color.FromKnownColor(KnownColor.Blue), 1);

// Yazı tipi stilini, boyutunu vb. ayarlayın.
Font arial = new Font("Arial", 20, FontStyle.Regular);
string text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";
Rectangle rectangle = new Rectangle(100, 100, 800, 600);
graphics.DrawRectangle(pen, rectangle);

// Resmin üzerine metin çizin
graphics.DrawString(text, arial, brush, rectangle);

// Çıktı görüntüsünü kaydet
bitmap.Save(RunExamples.GetDataDir() + @"TextFonts\DrawText_out.png");

Çözüm

Bu yazıda, resimlere nasıl metin ekleneceğini veya çizileceğini öğrendik. Herhangi bir 3. taraf uygulaması yüklemenize gerek kalmadan mevcut ve yeni görüntülerde sıfırdan metin filigranı çizebilirsiniz. Ayrıca, JPG, PNG, BMP, Icon, Tiff, vb. dahil birçok resim formatını işleyebilirsiniz. API, gereksinimlerinize göre çizimleri ve grafikleri işlemek için çeşitli özellikler sunar. Farklı senaryolar için vitrin olarak tasarladığımız Örnek Projeyi ziyaret edebilirsiniz. Herhangi bir endişeniz olması durumunda lütfen istediğiniz zaman Ücretsiz Destek Forumları aracılığıyla bizimle iletişime geçmekten çekinmeyin. Şerefe!

Ayrıca bakınız

Bilgi: Aspose kısa bir süre önce ÜCRETSİZ bir Metinden GIF’e Dönüştürücü geliştirdi.