ASPOSE.Words SVG File Processor за .NET
Aspose.Words SVG File Processor за .NET ви позволява да създавате, модифицирате и съхранявате програмно СВГ графики от вашите .NET приложения. защото Aspose.Words не е роден натоварване SVG като формат на документ, този плъгин е предназначен да се използва съвместно с конвертор плагини (напр. DOCX/HTML/PDF→SVG) или всякакви вноски, които произвеждат маркиране на СВГ. След това можете да преобразувате свГ (редактиране форми, пътища, текст, стилове) и да сериализирате стандартно съответстващ резултат.
Инсталация и инсталиране
- Добавете пакета Aspose.Words за .NET NuGet към вашия проект инсталация на ръководството.
- Конфигуриране на измерване на лиценза веднъж при стартирането на приложението Размер на лицензията .
Забележка: Този плагин осигурява SVG фокусирана API повърхност, която допълва, а не заменя основните функции на Aspose.Words.
Характеристики и способности
Създаване на SVG документ
- Инсталирайте нов SVG в код, задайте
width
,height
, иviewBox
. - Изберете абсолютни единици (px, mm, in) или разчитате на viewBox за реактивен изход.
Форми и пътища
- Създайте и редактирайте ректи , кръг , елипс и линия елементите от полилин и полигон.
- Пълна Path командна поддръжка (M/L/H/V/C/S/Q/T/A/Z) с опции за вмъкване/изтриване на сегменти, трансформации и изтегляне/запълване.
Текст и типография
- Добавете
<text>
и<tspan>
възели с фамилия на шрифта, размер, тегло, основна промяна, буквата/словото пространство и анкорни (start/middle/end). - Използвайте CSS-like styling inline или чрез рециклиращи класови дефиниции.
Групиране & Layering
- Организиране на съдържание с
<g>
групи; прилага трансформации на нивото на групата (превод / скала / ротация / скеу). - Нестните групи огледали йерархии в стила на слоя.
Филтри, шаблони и филтри
- Определете **линейни/радиални градиенти ** , модели и ги посочете с ID.
- Включете филтри (плав, сянка на падане, матрица на цвета) за напреднали визуални ефекти.
Снимка вградена
- Снимки на растер чрез
<image>
Използване на външни URIs или Base64 данни. - Контролно поставяне, измерване (с запазване на AspectRatio) и несигурност.
Интеграция конвертор
- Типичен поток: Import (напр. DOCX→SVG) → Refine с SVG File Processor (подреждане на цветове, добавяне на водни знаци, оптимизиране на пътеки) • Save.
- Съхраняване или преписване на идентификатори, класове и дефове по време на пост-процесиране.
Сериализация и износ
- Съхранявайте компактни или прецизно отпечатани SVG.
- Опционално вписване на ресурси (фонтове / изображения) или да ги държите външни.
- Уверете се, че стандартната маркировка е съвместима с съвременните рендери.
Бързо стартиране: Създаване на SVG документ
// Pseudocode for the plugin’s SVG API surface
var svg = new SvgDocument(width: 800, height: 400, viewBox: "0 0 800 400");
// Background rectangle
var bg = svg.AddRect(x: 0, y: 0, width: 800, height: 400);
bg.Fill = "#ffffff";
// Title text
var title = svg.AddText("Quarterly Sales", x: 400, y: 40);
title.FontFamily = "Segoe UI";
title.FontSize = 24;
title.TextAnchor = SvgTextAnchor.Middle;
// A sample path (rounded shape)
var path = svg.AddPath("M40,120 C120,20 280,20 360,120 S600,220 720,120");
path.Stroke = "#0066cc";
path.StrokeWidth = 3;
path.Fill = "none";
// Group with transform
var g = svg.AddGroup();
g.Transform = "translate(60, 220) scale(1.2)";
g.AddCircle(cx: 0, cy: 0, r: 8).Fill = "#ff6a00";
g.AddText("Marker", x: 16, y: 4).FontSize = 12;
// Save to file/stream
using var fs = File.Create(@"C:\out\diagram.svg");
svg.Save(fs, prettyPrint: true);
Post-процес вносен SVG (DOCX → SVg → tweak → save)
// Assume 'svgMarkup' comes from a converter plugin (e.g., Document → Save as SVG)
var svg = SvgDocument.LoadFromString(svgMarkup);
// Example: recolor all elements with class="accent"
foreach (var el in svg.Query(".accent"))
el.Fill = "#1abc9c";
// Add a watermark group
var wm = svg.AddGroup();
wm.Opacity = 0.08;
wm.Transform = "rotate(-20 400 200)";
var wText = wm.AddText("CONFIDENTIAL", x: 400, y: 220);
wText.TextAnchor = SvgTextAnchor.Middle;
wText.FontFamily = "Segoe UI";
wText.FontSize = 64;
wText.Fill = "#000000";
svg.Save(@"C:\out\refined.svg");
Съвети и най-добри практики
- Използвайте viewBox с относителни координати за реакционна графика.
- Group wisely : прилага трансформации към групи вместо per-element за опростяване на маркирането.
- Поставете defs (градиенти, шаблони, символи, филтри) на върха и препратете с ID.
- Дръжте големи битови карти ** външни** за по-малки SVGs; въведете само малки активи.
- Предпочита **претенциозно отпечатване ** по време на разработването; минифиране в производството.
- Иницијализирайте мереното лицензиране рано, за да избегнете прекъсвания.
Управление на грешки и валидиране
- Процесорът валидира необходимите атрибути, идентификатори и референции.
- Ясни изключения за деформирани пътища, невалидни трансформации или липсващи
defs
Целите са. - Опционалният режим на “линейка” може да преодолее некритичните проблеми и да продължи сериализацията.
Performance
- Изтегляне / спестяване за големи документи.
- Повтаряйте дефинициите на градиент/филтър, за да избегнете дублиране на възли.
- Търсене чрез селектори с леко тегло (по ID/клас/име) за бързо редактиране.