Aspose.Words SVG File Processor za .NET

Aspose.Words SVG File Processor za .NET vam omogućava da programski kreirate, promenite i sačuvate СВГ графике из ваше .NET апликације. јер Aspose.Words не оптерећења СВГ као формат документа, овај плугин је намењен да се користи ** заједно са конвертер плагинима** (на пример, ДОЦКС/ХТМЛ/ПДФ → СвГ) или било који врхунски увоз који производи свг ознаку.

Инсталација и подешавање

Напомена: Овај плугин пружа СВГ фокусиран АПИ површину која допуњује, а не замени, нуклеарне Асписе.Вордс карактеристике.

Карактеристике и способности

Креирање СВГ документа

  • Инсталирајте нови СВГ у коду, подесите width, height, и viewBox.
  • Изаберите апсолутне јединице (пк, мм, у) или се ослањате на viewBox за одговорни излаз.

Форме и путеви

  • Креирајте и уређујете елементе рект , црцк и елипс.
  • Потпуна пут подршка за команду (М/Л/Х/В/Ц/С/К/Т/А/З) са опцијама сегмента убацивање/уклањање, трансформације и пуњење/попуњавање.

Текстови и типографија

  • Додај <text> и <tspan> унуци са породицом шрифта, величином, тежином и премештањем основне линије, словом/словом и анкарима (старт/средње/крај).
  • Применити ЦСС сличан стил у линији или путем поновљивих дефиниција класе.

Групирање и лаирање

  • Организовање садржаја са <g> Групе; примените трансформације на нивоу групе (превод / скала / ротација / скев).
  • Нест групе да огледа слој-стил хијерархије.

Градијенти, обрасци, филтери

  • Дефинишите ** линеарне/радиалне градијенте ** , ** узорке** и референцирајте их по ИД-у.
  • Причврстите филтере (блир, сенка пада, матрица боје) за напредне визуелне ефекте.

Слика уграђена

  • Унесите растер слике преко <image> користећи спољне УРИ или Базе64 податке.
  • Контролно постављање, величина (са чувањем АспектРатион) и нејасност.

Интеграција конвертера

  • Типичан ток: **Import ** (на пример, DOCX→SVG) → **Refine ** са SVG File Processor (прилагодити боје, додати водене знаке, оптимизовати путеве) • Спасите СВГ.
  • Сачувајте или понављајте ИД, класе и дефе током пост-процесирања.

Серијализација и извоз

  • Сачувајте компактне или прелепо штампане СВГ.
  • Опционално убацити ресурсе (фонте / слике) или их чувати споља.
  • Обезбедите стандардне ознаке компатибилне са модерним рендерима.

Брзи почетак: креирање СВГ документа

// 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);

Пост-процес увозеног СВГ (ДОЦКС → СВЕГ → Твик → Сачувај)

// 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 са релативним координатима за реактивне графике.
  • Група мудро : примените трансформације на групе уместо по елементу да би се поједноставила ознака.
  • Ставите дефс (градијенти, обрасци, симболи, филтери) на врх и референце по ИД.
  • Држите велике битмапе изван за мање СВГ-а; унесите само мале имовине.
  • Prefer **pretty-print ** tokom razvoja; minify u proizvodnji.
  • Иницијалишете мерено лиценцирање рано како бисте избегли прекиде.

Управљање грешкама и валидација

  • Процесор валидира потребне атрибуте, ИД и референце.
  • Јасне изузеци за поремећене путеве, неважеће трансформације или недостаје defs циљеви.
  • Опционални “лијантни” режим може превазићи не-критичне проблеме и наставити сериализацију.

Performance

  • Пренос / штедња за велике документе.
  • Поново користите дефиниције градијента / филтера како бисте избегли дуплиране чворове.
  • Питање путем селектора лагане тежине (по ИД/класу/имену) за брзе уређења.
 Српски