画像の彩度は、色の強度として表されます。場合によっては、SVG 画像にテキストを追加して飽和させる必要がある場合があります。このようなシナリオに従って、この記事では、C# でプログラムによって SVG 画像のテキストの飽和を実行する方法について説明します。
SVG イメージ内のテキストを飽和させる C# API - インストール
Aspose.SVG for .NET API は、SVG イメージを作成または操作できます。さまざまなフィルターを適用して、Scalable Vector Graphic 画像の多くのプロパティを操作したり、SVG 画像を サポートされている形式 に変換したりできます。 DLL ファイルをダウンロードするか、次の NuGet インストール コマンドを実行するだけです。
PM> Install-Package Aspose.SVG
C# で SVG 画像のテキストを飽和させる方法
次の手順で、SVG 画像にテキストを挿入して飽和させることができます。
- SVGDocument クラス オブジェクトを作成します。
- defs およびフィルター要素を作成します。
- feColorMatrix 要素を作成し、テキストを SVG に追加します。
- 出力 SVG イメージを保存します。
次のセクションでは、C# コード スニペットでこれらの手順を実行する方法について詳しく説明します。
C# でプログラムによって SVG イメージ内のテキストを飽和させる
次の手順で、SVG 画像内のテキストを飽和させることができます。
- SVGDocument クラス オブジェクトを作成します。
- ルート SVG 要素にアクセスし、名前空間 URL を設定します。
- SVGDefsElement クラス オブジェクトを作成し、SVG 要素に追加します。
- SVGFEColorMatrixElement クラス インスタンスを初期化し、異なる値を設定します。
- SVGTextElement クラス オブジェクトを定義し、テキストを SVG に追加します。
- 最後に、Save() メソッドで出力 SVG 画像をエクスポートします。
以下のコード スニペットは、C# でカラー マトリックスを使用して彩度効果を作成する方法を示しています。
// SVGDocument クラスのインスタンスを作成する
Aspose.Svg.SVGDocument document = new Aspose.Svg.SVGDocument();
// SVG 名前空間 URL の設定
string SvgNamespace = "http://www.w3.org/2000/svg";
// ドキュメントのルート svg 要素を取得する
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 ライセンスを取得する
無料の一時ライセンス をリクエストして、API のすべての機能を最大限に評価することができます。
結論
この記事では、C# でプログラムによって SVG 画像にテキストの彩度を適用する方法を学習しました。一方、API に含まれるその他のさまざまな機能については、ドキュメント セクションを参照してください。ご不明な点やご不明な点がございましたら、無料サポート フォーラム までお気軽にお問い合わせください。