グラフィックスと描画

グラフィックスと描画

グラフィックスと描画

Aspose.PDF FOSS for .NET には、PDF ページにベクター グラフィックを追加するための描画サブシステムが含まれています。
Graph コンテナはシェイプ要素(LineArcCircle)を保持し、ページの Paragraphs コレクションに追加されます。


グラフ コンテナの作成

Graph は、指定された幅と高さを持つ描画領域を定義します。

using var doc = new Document();
var page = doc.Pages.Add();

var graph = new Graph(400, 200);
page.Paragraphs.Add(graph);

線を描く

var line = new Line(new float[] { 0, 0, 300, 100 });
graph.Shapes.Add(line);

円弧と円の描画

var arc = new Arc(150, 100, 80, 0, 180);
graph.Shapes.Add(arc);

var circle = new Circle(150, 100, 50);
graph.Shapes.Add(circle);

色の操作

Color クラスは RGB、ARGB、および名前付きカラーのためのファクトリ メソッドを提供します。

var red = Color.FromRgb(1.0, 0.0, 0.0);
var semiTransparent = Color.FromArgb(128, 0, 0, 255);

描画パス

DrawingPath は、自由形ベクトルシェイプ用に MoveToLineToCurveTo、および Close をサポートします。

var path = new DrawingPath();
path.MoveTo(10, 10);
path.LineTo(100, 10);
path.CurveTo(150, 50, 150, 100, 100, 100);
path.Close();

画像形式

ImageFormat は、ページを画像に変換する際に使用されるラスタ形式の列挙値を提供します: BmpJpegPngTiffGif


ヒントとベストプラクティス

  • 描画したい領域に合わせてグラフのサイズを設定します — Graph 内の座標はその境界を基準とします。
  • 半透明の塗りつぶし(アルファチャンネル対応)には Color.FromArgb を使用します。
  • 効率的なレンダリングのために、複数のシェイプを単一の Graph に結合します。
  • DrawingPath は複雑なベジェ曲線や任意の多角形シェイプに最適です。
  • Graph をページの Paragraphs コレクションに追加します — アノテーションには追加しないでください。

一般的な問題

IssueCauseFix
シェイプが表示されないシェイプ座標に対してグラフのサイズが小さすぎるGraph の幅/高さを増やすか、シェイプ座標をスケールする
ビューアで色が異なって表示されるカラースペースの不一致0.0〜1.0 の範囲の値で Color.FromRgb を使用する
描画がテキストと重なる段落のフロー内でグラフが誤った位置に配置されている段落の順序を調整するか、絶対位置指定のために FloatingBox を使用する

よくある質問

塗りつぶしされた形状を描くことはできますか?

はい。シェイプの GraphInfo.FillColor プロパティを、単色で塗りつぶすように設定します。

特定のページ座標にグラフを配置するにはどうすればよいですか?

GraphFloatingBox でラップし、絶対位置指定のためにその LeftTop プロパティを設定します。

このライブラリはグラデーションをサポートしていますか?

Shading クラスは基本的なシェーディングパターンをサポートしています。
DrawingPath を使用して
シェーディングでグラデーション塗りつぶしを行います。


API リファレンス概要

Class / MethodDescription
Graph描画可能なシェイプのコンテナで、ページの段落に追加されます
Line2 つ以上の点間の直線
Arc中心、半径、角度で定義される円弧
Circle中心と半径で定義される円形シェイプ
DrawingPathMoveTo、LineTo、CurveTo、Close を使用したフリーフォームパス
ColorRGB、ARGB とファクトリーメソッドを持つカラー値
Color.FromRgbRGB コンポーネントからカラーを作成
Color.FromArgbアルファ透過を持つカラーを作成
GraphicElementCollectionページ上のグラフィック要素のコレクション
ImageFormatラスタ画像フォーマットの列挙 (Bmp、Jpeg、Png、Tiff、Gif)

参照

 日本語