Aspose.HTML for .NET 24.10 – Улучшение качества рендеринга

Aspose.HTML for .NET 24.10

В версии 24.10 Aspose.HTML представил обновления общедоступного API, направленные в первую очередь на улучшение поддержки сред Linux. Эти обновления включают замену нескольких перечислений из System.Drawing реализациями в собственных пространствах имен Aspose.Html.Drawing и Aspose.Html.Rendering.Image:

FontStyle против WebFontStyle

В версии 24.10 перечисление FontStyle, определяющее такие стили шрифта, как обычный, полужирный и курсив, было заменено перечислением WebFontStyle:

OldNew
FontStyle.BoldWebFontStyle.Bold
FontStyle.ItalicWebFontStyle.Italic
FontStyle.RegularWebFontStyle.Regular

Соответственно, в классе GraphicContext изменился тип свойства FontStyle:

 1namespace Aspose.Html.Rendering
 2{
 3    public class GraphicContext
 4    { 
 5        //From:
 6        public virtual FontStyle FontStyle { get; set; }
 7 
 8        //To:
 9        public virtual WebFontStyle FontStyle { get; set; }
10    }
11}

SmoothingMode и TextRenderingHint против UseAntialiasing и UseHinting

В версии 24.10

В таблице соответствия ниже показано, как применяются настройки рендеринга при переходе между старой и новой версиями Aspose.HTML for .NET.

Таблица соответствия для разных случаев рендеринга

В таблице представлены четкие инструкции, показывающие, как настройки UseAntialiasing и UseHinting соответствуют старым свойствам, таким как SmoothingMode и TextRenderingHint:

UseAntialiasingUseHintingSmoothingModeTextRenderingHint
truetrueSmoothingMode.AntiAliasTextRenderingHint.AntiAliasGridFit
falsetrueSmoothingMode.NoneTextRenderingHint.SingleBitPerPixelGridFit
truefalseSmoothingMode.AntiAliasTextRenderingHint.AntiAlias
falsefalseSmoothingMode.NoneTextRenderingHint.SingleBitPerPixel

В этой таблице показано, как преобразовать предыдущие настройки сглаживания и рендеринга текста в новые свойства UseAntialiasing и UseHinting. Вот как можно интерпретировать и применять эту таблицу:

  1. Когда вы определитесь с необходимым уровнем четкости текста и прорисовки форм для вашего проекта, сопоставьте предыдущие настройки с новыми свойствами.
  2. Замените старые значения SmoothingMode и TextRenderingHint соответствующими настройками UseAntialiasing и UseHinting.

Например, если в вашей предыдущей конфигурации использовались SmoothingMode.AntiAlias ​​и TextRenderingHint.AntiAliasGridFit, переключитесь на UseAntialiasing = true и UseHinting = true.

Именно этот пример мы рассмотрим ниже.

Использование перечислений SmoothingMode и TextRenderingHint – 24.9 и более ранние версии


Этот фрагмент кода C# демонстрирует, как визуализировать содержимое HTML в файл изображения с помощью Aspose.HTML for .NET со старыми зависимостями System.Drawing, специально настраивая вывод для оптимизации качества рендеринга с помощью параметров сглаживания:

 1using System.IO;
 2using Aspose.Html;
 3using Aspose.Html.Rendering.Image;
 4using System.Drawing.Drawing2D;
 5using System.Drawing.Text;
 6...
 7    // Create an instance of the ImageRenderingOptions class to specify rendering quality
 8    var opt = new ImageRenderingOptions
 9    {
10        SmoothingMode = SmoothingMode.AntiAlias,
11        Text =
12        {
13            TextRenderingHint = TextRenderingHint.AntiAliasGridFit
14        }
15    };
16
17    // Create an HTML Document
18    using (var doc = new HTMLDocument("text", string.Empty))
19    // Create an ImageDevice object
20    using (var device = new ImageDevice(opt, "out-old.png"))
21    {
22        // Rendering HTML to image
23        doc.RenderTo(device);
24    }

Использование новых свойств UseAntialiasing и UseHinting – начиная с версии 24.10.

Следующий код демонстрирует рендеринг содержимого HTML в файл изображения с использованием новых свойств UseAntialiasing и UseHinting. Этот пример аналогичен предыдущему, где использовались системные перечисления SmoothingMode и TextRenderingHint:

 1using System.IO;
 2using Aspose.Html;
 3using Aspose.Html.Rendering.Image;
 4...
 5    // Create an instance of the ImageRenderingOptions class
 6    var opt = new ImageRenderingOptions
 7    {
 8        UseAntialiasing = true,
 9        Text =
10        {
11            UseHinting = true
12        }
13    };
14
15    // Create an HTML Document
16    using (var doc = new HTMLDocument("text", string.Empty))
17    // Create an ImageDevice object
18    using (var device = new ImageDevice(opt, "out-new.png"))
19    {
20        // Rendering HTML to image
21        doc.RenderTo(device);
22    }

Выводы

Таким образом, изменения API, реализованные в версии 24.10, существенно влияют на качество отображения текста и изображений, упрощают пользователям переключение между различными версиями библиотек Aspose.HTML for .NET, поддерживающих разные механизмы рендеринга HTML, и являются шагами вперед в поддержке Linux.

Примечания к выпуску Aspose.HTML for .NET 24.10 – этот выпуск включает изменения в общедоступный API, связанные с улучшением поддержки Linux, качеством рендеринга и исправлением ошибок для повышения общей производительности и стабильности библиотеки.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.