רוויה בתמונה מתוארת כעוצמת הצבעים. לפעמים ייתכן שיהיה עליך להוסיף טקסט בתמונת SVG ולהרוות אותו. בהתאם לתרחישים כאלה, מאמר זה מכסה כיצד לבצע ריווי טקסט בתמונות SVG באופן תוכנתי ב-C#.
- C# API להרוות טקסט בתמונת SVG - התקנה
- כיצד להרוות טקסט בתמונת SVG ב-C#
- הרווי טקסט בתמונת SVG באופן פרוגרמטי ב-C#
C# API להרוות טקסט בתמונת SVG - התקנה
Aspose.SVG for .NET API מסוגל ליצור או לתפעל תמונות SVG. אתה יכול להחיל מסננים שונים ולעבוד עם מאפיינים רבים של תמונות וקטור גרפי מדרגיות, כמו גם להמיר את תמונות ה-SVG לפורמטים נתמכים. פשוט הורד את הקובץ DLL או הפעל את פקודת ההתקנה הבאה של NuGet:
PM> Install-Package Aspose.SVG
כיצד להרוות טקסט בתמונת SVG ב-C#
אתה יכול להוסיף טקסט בתמונת SVG ולהרוות אותו עם השלבים הבאים:
- צור אובייקט מחלקה SVGDocument.
- צור אלמנט defs ופילטר.
- צור אלמנט feColorMatrix והוסף טקסט ל-SVG.
- שמור את תמונת הפלט SVG.
הסעיף הבא מרחיב יותר כיצד לבצע את השלבים הללו בקטע קוד C#:
הרווי טקסט בתמונת SVG באופן פרוגרמטי ב-C#
אתה יכול להרוות טקסט בתמונת SVG עם השלבים הבאים:
- צור אובייקט מחלקה SVGDocument.
- גש לרכיב הבסיס SVG והגדר את כתובת האתר של מרחב השמות.
- צור אובייקט מחלקה SVGDefsElement והוסף אותו לאלמנט SVG.
- אתחול מופע מחלקה SVGFEColorMatrixElement והגדר ערכים שונים.
- הגדר אובייקט מחלקה SVGTextElement והוסף טקסט ל-SVG.
- לבסוף, ייצא את תמונת הפלט SVG בשיטה Save().
קטע הקוד שלהלן מדגים כיצד ליצור אפקט רוויה עם מטריצת הצבע ב-C#:
// צור מופע של מחלקה SVGDocument
Aspose.Svg.SVGDocument document = new Aspose.Svg.SVGDocument();
// הגדר את כתובת האתר של מרחב השמות של SVG
string SvgNamespace = "http://www.w3.org/2000/svg";
// קבל רכיב svg root של המסמך
Aspose.Svg.SVGSVGElement svgElement = document.RootElement;
// צור אלמנט defs והוסף ל-svgElement
Aspose.Svg.SVGDefsElement defsElement = (Aspose.Svg.SVGDefsElement)document.CreateElementNS(SvgNamespace, "defs");
svgElement.AppendChild(defsElement);
// צור אלמנט מסנן והוסף ל-defsElement
var filterElement = (Aspose.Svg.SVGFilterElement)document.CreateElementNS(SvgNamespace, "filter");
filterElement.Id = "shadow";
filterElement.SetAttribute("x", "-20px");
filterElement.SetAttribute("y", "-20px");
filterElement.SetAttribute("height", "150px");
filterElement.SetAttribute("width", "150px");
defsElement.AppendChild(filterElement);
// צור אלמנט feColorMatrix
var feColorMatrixElement = (Aspose.Svg.Filters.SVGFEColorMatrixElement)document.CreateElementNS(SvgNamespace, "feColorMatrix");
feColorMatrixElement.In1.BaseVal = "SourceGraphic";
feColorMatrixElement.SetAttribute("type", "saturate");
feColorMatrixElement.SetAttribute("values", "0.2");
filterElement.AppendChild(feColorMatrixElement);
// צור אלמנט טקסט והוסף ל-svgElement
var textElement = (Aspose.Svg.SVGTextElement)document.CreateElementNS(SvgNamespace, "text");
textElement.Style.FontSize = "5em";
textElement.SetAttribute("x", "20px");
textElement.SetAttribute("fill", "blue");
textElement.SetAttribute("y", "100px");
textElement.TextContent = "Aspose.SVG for .NET API";
textElement.SetAttribute("filter", "url(#shadow)");
svgElement.InsertBefore(textElement, svgElement.FirstChild);
// שמור את מסמך ה-SVG
document.Save(Path.Combine(dataDir, "TextSaturation.svg"));
קבל רישיון API בחינם
אתה יכול לבקש [רישיון זמני] בחינם16 כדי להעריך את כל התכונות של ה-API במלואה.
סיכום
במאמר זה, למדת כיצד להחיל רווית טקסט בתמונת SVG באופן תכנותי ב-C#. בעוד שאתה יכול להסתכל בסעיף תיעוד כדי ללמוד תכונות שונות אחרות הכלולות ב-API. במקרה שאתה רוצה לדון בחששות או אי בהירות שלך, אל תהסס לפנות אלינו בפורום התמיכה החינמית.