draw-text-image-csharp

Ми бачимо або створюємо багато зображень для візуальної інформації. Іноді вам потрібно додати або намалювати текст на зображенні таким чином, щоб ніхто інший не міг змінити цей текст. Одним із найпоширеніших прикладів є зображення водяного знака. Подібним чином для маркування або перегляду зображень також може знадобитися накреслення тексту. Давайте розглянемо подальше використання малювання тексту на зображеннях:

Додайте, вставте або намалюйте форматований текст на зображенні – встановлення C# API

Aspose.Drawing for .NET API — це бібліотека двовимірної графіки, яка сумісна з пакетом System.Drawing. Він підтримує візуалізацію прямокутників, кривих, ліній, тексту та іншої графіки на зображеннях. Він не залежить від будь-якої сторонньої бібліотеки, тому його можна використовувати в будь-якому середовищі. Наприклад, його також можна використовувати для відтворення графіки в Linux або Azure Functions V2, де бібліотека System.Drawing не підтримується. Ви можете встановити Aspose.Drawing for .NET API, завантаживши його з розділу Завантаження або за допомогою такої команди встановлення:

PM> Install-Package Aspose.Drawing

Намалюйте текст як водяний знак на наявному зображенні програмним шляхом за допомогою C#

Текстовий водяний знак на зображенні часто використовується, щоб показати право власності, приналежність або призначення зображення. Ви можете додати або намалювати текст як водяний знак на наявному зображенні, виконавши такі дії:

  1. Завантажити наявне вхідне зображення
  2. Ініціалізувати об’єкт класу Graphics.
  3. Встановити форматування тексту та текст
  4. Намалювати текст
  5. Зберегти вихідне зображення

У наведеному нижче коді показано, як програмно намалювати текст як водяний знак на наявному зображенні за допомогою C#:

// Завантажити наявне вхідне зображення
Bitmap bitmap = new Bitmap(dataDir + @"Test.png");

// Ініціалізація об’єкта класу Graphics
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
Brush brush = new SolidBrush(Color.FromKnownColor(KnownColor.Black));

// Оголосити кисть, вказавши колір
Pen pen = new Pen(Color.FromKnownColor(KnownColor.Blue), 1);

// Встановити шрифт тексту
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);

// Намалювати текст
graphics.DrawString(text, arial, brush, rectangle);

// Зберегти вихідне зображення
bitmap.Save(RunExamples.GetDataDir() + @"TextFonts\DrawText_out.png");

Намалюйте текст на новому зображенні з нуля програмно в C#

Вам може знадобитися намалювати текст у форматі зображення для різних цілей. Наприклад, ви можете заборонити іншим змінювати або копіювати текстовий вміст. Щоб намалювати текст на новому зображенні, потрібно виконати наступні кроки:

  1. Ініціалізація нового зображення з нуля
  2. Ініціалізувати об’єкт класу Brush.
  3. Встановити стиль шрифту, розмір тощо.
  4. Намалювати текст on the image
  5. Зберегти вихідне зображення

Наведений нижче фрагмент коду демонструє, як програмно намалювати текст на новому зображенні з нуля за допомогою мови C#:

// Ініціалізація нового зображення з нуля
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
Brush brush = new SolidBrush(Color.FromKnownColor(KnownColor.Black));
Pen pen = new Pen(Color.FromKnownColor(KnownColor.Blue), 1);

// Встановити стиль шрифту, розмір тощо.
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);

// Намалюйте текст на зображенні
graphics.DrawString(text, arial, brush, rectangle);

// Зберегти вихідне зображення
bitmap.Save(RunExamples.GetDataDir() + @"TextFonts\DrawText_out.png");

Висновок

У цій статті ми навчилися додавати або малювати текст на зображеннях. Ви можете намалювати текстовий водяний знак як на наявних, так і на нових зображеннях з нуля, не встановлюючи сторонніх програм. Крім того, ви можете обробляти багато форматів зображень, включаючи JPG, PNG, BMP, Icon, Tiff тощо. API пропонує кілька функцій для обробки малюнків і графіки відповідно до ваших вимог. Ви можете відвідати Приклад проекту, який ми розробили як демонстрацію різних сценаріїв. Будь ласка, зв’яжіться з нами в будь-який час через безкоштовні форуми підтримки у разі будь-яких проблем. здоров’я!

Дивись також

Інформація: Aspose нещодавно розробив БЕЗКОШТОВНИЙ Конвертер тексту в GIF.