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.
- Системное перечисление SmoothingMode заменено свойством ImageRenderingOptions.UseAntialiasing.
- Системное перечисление TextRenderingHint заменено свойством TextOptions.UseHinting.
FontStyle против WebFontStyle
В версии 24.10 перечисление FontStyle, определяющее такие стили шрифта, как обычный, полужирный и курсив, было заменено перечислением WebFontStyle:
Old | New |
---|---|
FontStyle.Bold | WebFontStyle.Bold |
FontStyle.Italic | WebFontStyle.Italic |
FontStyle.Regular | WebFontStyle.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
- системное перечисление SmoothingMode, ранее использовавшееся для управления качеством сглаживания визуализируемых фигур и изображений, заменено свойством ImageRenderingOptions.UseAntialiasing;
- системное перечисление TextRenderingHint, помогающее контролировать качество отрисовки текста, теперь заменено свойством TextOptions.UseHinting. Это свойство обеспечивает четкость и читаемость текста.
В таблице соответствия ниже показано, как применяются настройки рендеринга при переходе между старой и новой версиями Aspose.HTML for .NET.
Таблица соответствия для разных случаев рендеринга
В таблице представлены четкие инструкции, показывающие, как настройки UseAntialiasing
и UseHinting
соответствуют старым свойствам, таким как SmoothingMode
и TextRenderingHint
:
UseAntialiasing | UseHinting | SmoothingMode | TextRenderingHint |
---|---|---|---|
true | true | SmoothingMode.AntiAlias | TextRenderingHint.AntiAliasGridFit |
false | true | SmoothingMode.None | TextRenderingHint.SingleBitPerPixelGridFit |
true | false | SmoothingMode.AntiAlias | TextRenderingHint.AntiAlias |
false | false | SmoothingMode.None | TextRenderingHint.SingleBitPerPixel |
В этой таблице показано, как преобразовать предыдущие настройки сглаживания и рендеринга текста в новые свойства UseAntialiasing
и UseHinting
. Вот как можно интерпретировать и применять эту таблицу:
- Когда вы определитесь с необходимым уровнем четкости текста и прорисовки форм для вашего проекта, сопоставьте предыдущие настройки с новыми свойствами.
- Замените старые значения
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 }
Выводы
- Переход к перечислению
WebFontStyle
, свойствамUseAntialiasing
иUseHinting
в Aspose.HTML for .NET 24.10 представляет собой шаг вперед в поддержке сред Linux. - Базовые значения свойств
UseAntialiasing
иUseHinting
были изменены, что привело к улучшению рендеринга текста при использовании параметров по умолчанию. - В рамках перехода на поддержку Linux эта миграция также направлена на унификацию общедоступного API для упрощения доступа к различным версиям библиотеки Aspose.HTML for .NET, которые поддерживают различные механизмы рендеринга HTML.
Таким образом, изменения API, реализованные в версии 24.10, существенно влияют на качество отображения текста и изображений, упрощают пользователям переключение между различными версиями библиотек Aspose.HTML for .NET, поддерживающих разные механизмы рендеринга HTML, и являются шагами вперед в поддержке Linux.
Примечания к выпуску Aspose.HTML for .NET 24.10 – этот выпуск включает изменения в общедоступный API, связанные с улучшением поддержки Linux, качеством рендеринга и исправлением ошибок для повышения общей производительности и стабильности библиотеки.