グラフィックスと描画
グラフィックスと描画
Aspose.PDF FOSS for .NET には、PDF ページにベクター グラフィックを追加するための描画サブシステムが含まれています。Graph コンテナはシェイプ要素(Line、Arc、Circle)を保持し、ページの 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 は、自由形ベクトルシェイプ用に MoveTo、LineTo、CurveTo、および Close をサポートします。
var path = new DrawingPath();
path.MoveTo(10, 10);
path.LineTo(100, 10);
path.CurveTo(150, 50, 150, 100, 100, 100);
path.Close();画像形式
ImageFormat は、ページを画像に変換する際に使用されるラスタ形式の列挙値を提供します: Bmp、Jpeg、Png、Tiff、Gif。
ヒントとベストプラクティス
- 描画したい領域に合わせてグラフのサイズを設定します —
Graph内の座標はその境界を基準とします。 - 半透明の塗りつぶし(アルファチャンネル対応)には
Color.FromArgbを使用します。 - 効率的なレンダリングのために、複数のシェイプを単一の
Graphに結合します。 DrawingPathは複雑なベジェ曲線や任意の多角形シェイプに最適です。GraphをページのParagraphsコレクションに追加します — アノテーションには追加しないでください。
一般的な問題
| Issue | Cause | Fix |
|---|---|---|
| シェイプが表示されない | シェイプ座標に対してグラフのサイズが小さすぎる | Graph の幅/高さを増やすか、シェイプ座標をスケールする |
| ビューアで色が異なって表示される | カラースペースの不一致 | 0.0〜1.0 の範囲の値で Color.FromRgb を使用する |
| 描画がテキストと重なる | 段落のフロー内でグラフが誤った位置に配置されている | 段落の順序を調整するか、絶対位置指定のために FloatingBox を使用する |
よくある質問
塗りつぶしされた形状を描くことはできますか?
はい。シェイプの GraphInfo.FillColor プロパティを、単色で塗りつぶすように設定します。
特定のページ座標にグラフを配置するにはどうすればよいですか?
Graph を FloatingBox でラップし、絶対位置指定のためにその Left と Top プロパティを設定します。
このライブラリはグラデーションをサポートしていますか?
Shading クラスは基本的なシェーディングパターンをサポートしています。DrawingPath を使用して
シェーディングでグラデーション塗りつぶしを行います。
API リファレンス概要
| Class / Method | Description |
|---|---|
Graph | 描画可能なシェイプのコンテナで、ページの段落に追加されます |
Line | 2 つ以上の点間の直線 |
Arc | 中心、半径、角度で定義される円弧 |
Circle | 中心と半径で定義される円形シェイプ |
DrawingPath | MoveTo、LineTo、CurveTo、Close を使用したフリーフォームパス |
Color | RGB、ARGB とファクトリーメソッドを持つカラー値 |
Color.FromRgb | RGB コンポーネントからカラーを作成 |
Color.FromArgb | アルファ透過を持つカラーを作成 |
GraphicElementCollection | ページ上のグラフィック要素のコレクション |
ImageFormat | ラスタ画像フォーマットの列挙 (Bmp、Jpeg、Png、Tiff、Gif) |