DioDocs for PDF
画像
機能 > 画像
トピック内容:

DioDocs for PDF では、GcGraphics クラスの DrawImage メソッドを使用して、ページ内に画像を描画できます。ファイル、またはストリームを使用して画像をロードできます。このライブラリは、BMP、GIF(シングルフレームのみ)、JPEG、SVG、PNG などのさまざまな画像形式をサポートします。 さらに、Windows では、TIFF、JpegXR、および ICO 形式もサポートされます。

同じImageオブジェクトをGcPdfDocument インスタンス内で複数回描画される場合、DioDocs for PDF はそれを自動的に辞書に格納し、ドキュメント内でその画像が使用されるすべての場所からその画像データを参照します。これにより、時間を節約し、キャッシュで同じ画像が複数回描画されるため、最適なサイズのPDFファイルをより迅速に作成できます。この機能は、繰り返しページヘッダーに会社のロゴを含んだドキュメントを描画する場合に特に便利です。

また、DioDocs for PDF ライブラリには ImageAlign クラスが用意されており、AlignHorzAlignVertBestFitTileHorz などのプロパティを使用してさまざまな方法で画像を配置できます。GcPdfDocument クラスにある ImageOptions プロパティを通じて、カラー値の圧縮、JPEG 画像の品質の設定など、画質を制御することもできます。

PDF の画像

ファイルからの画像の追加

PDF ドキュメントに画像を追加するには、Image.FromFile メソッドを使用して、アプリケーションに画像をロードします。このメソッドは、画像を Image クラスのオブジェクトに格納します。画像を追加したら、GcGraphics クラスの DrawImage メソッドを使用して画像をレンダリングできます。

C#
コードのコピー
public void CreatePDF(Stream stream)
{
    GcPdfDocument doc = new GcPdfDocument();
    var page = doc.NewPage();
    var g = page.Graphics;
    // アプリケーションに画像を追加します

    var image = GrapeCity.Documents.Drawing.Image.FromFile
     (Path.Combine("Resources", "Images", "clouds.jpg"));

    // DrawImageを使用して画像をレンダリングします
    g.DrawImage(image, new RectangleF(30.6F, 30.7F, 40.8F, 100.9F), 
        null, ImageAlign.CenterImage);
    
    // PDFファイルを保存します
    doc.Save(stream);
}
先頭に戻る

ストリームからの画像の追加

ストリームを使用して PDF ドキュメントに画像を追加するには、Image.FromStream メソッドを使用して、ストリームに画像を格納する必要があります。 画像を格納したら、それをアプリケーションに追加できます。その後、GcGraphics クラスの DrawImage メソッドを使用して画像を描画できます。

C#
コードのコピー
public void CreatePDF(Stream stream)
{
GcPdfDocument doc = new GcPdfDocument();
var page = doc.NewPage();
var g = page.Graphics;
string fileName = @"C:\Users\Admin\Desktop\clouds.png";
FileStream fs = new FileStream(fileName, System.IO.FileMode.Open);

// アプリケーションに画像を追加します
var image = GrapeCity.Documents.Drawing.Image.FromStream(fs);
// DrawImageを使用して画像を描画します
g.DrawImage(image, new RectangleF(30.6F, 30.7F, 40.8F, 100.9F), null, ImageAlign.CenterImage);
// PDFファイルを保存します
doc.Save(stream);
}

さらに、DioDocs for PDF では、ToJpegStream メソッドを使用して JPEG として、ToPngStream メソッドを使用して PNG として、ConvertToGrayscale メソッドを使用してグレースケール画像として、画像をメモリストリームに保存できます。

画像の不透明度の設定

指定された透明度で画像を描画するには、不透明度をパラメータとして受け取るDrawImageメソッドを使用してPDFドキュメントに画像を追加します。

C#
コードのコピー
//PDFドキュメントを作成します
GcPdfDocument doc = new GcPdfDocument();
GcPdfGraphics g = doc.NewPage().Graphics;
g.DrawString("A sample document showing an image with controlled opacity.",
    new TextFormat() { Font = StandardFonts.Times, FontSize = 12 }, new PointF(72, 72));
            
//不透明度を調整して画像を追加します
var image = RawImage.FromFile(Path.Combine("Resources", "sea.jpg"), 
                              RawImageFormat.Jpeg, 800, 532);
ImageAlign ia = new ImageAlign(ImageAlignHorz.Center, ImageAlignVert.Center, 
                               true, true, true, false, false);
g.DrawImage(image, new RectangleF(100, 100, 180, 100), null, ImageAlign.ScaleImage,0.3F);

        
//PDFドキュメントを保存します
doc.Save("AddImage_Opacity.pdf"); 

Console.WriteLine("終了するには任意のキーを押してください。");
Console.ReadKey();
先頭に戻る

画像の抽出

PDFドキュメントから画像を抽出するには、次のようにGetImagesメソッドを使用します。

  1. GcPdfDocumentクラスの Load メソッドを使用して、画像を含むPDFドキュメントをロードします。
  2. GcPdfDocumentクラスの GetImages メソッドを使用して、PDFドキュメントから画像を抽出します。
  3. Graphics.DrawImageメソッドを使用して、抽出された画像を別のPDFドキュメントに描画します。
  4. GcPdfDocumentクラスの Save メソッドを使用してドキュメントを保存します。
    C#
    コードのコピー
    using (FileStream fs = new FileStream(Path.Combine("Resources", "Wetlands.pdf"),
           FileMode.Open, FileAccess.Read))
    {
        GcPdfDocument docSrc = new GcPdfDocument();
    
        //画像を含む既存のPDFドキュメントをロードします
        docSrc.Load(fs);
        
        //ロードされたPDFから画像に関する情報を抽出します
         var imageInfos = docSrc.GetImages();
    
        GcPdfDocument doc = new GcPdfDocument();
        var textPt = new PointF(72, 72);
    
        foreach (var imageInfo in imageInfos)
        {
            //同じ画像が複数の場所に表示されることがあります 
            //imageInfoにはページインデックスとページ上に画像の位置に関する情報が含まれます
            
            var g = doc.NewPage().Graphics;
            g.DrawImage(imageInfo.Image, new RectangleF(10,0,400,400), null, ImageAlign.ScaleImage);
        }
        doc.Save("ExtractImage.pdf");
    }
    Console.WriteLine("終了するには任意のキーを押してください。");
    Console.ReadKey();
    

同様に、GcPdfDocumentクラスのGetImageメソッドを使用して、ページから画像を抽出できます。

先頭に戻る

DioDocs for PDF を使用した画像の実装の詳細については、DioDocs for PDF サンプルブラウザを参照してください。

コードを使用したSVG画像の作成

コードを使用してSVG画像を作成するには

  1. GcSvgDocumentのインスタンスを作成して、新しいSVGドキュメントを作成します。
  2. SvgPathBuilderクラスのインスタンスを作成します。このクラスは、パスコマンドを実行するメソッドを提供します。
  3. AddMoveToAddCurveToなどメソッドを使用して、SVGに描画される図形の輪郭を描画するパスを定義します。
  4. Addメソッドを使用して、これらの要素を「svg」要素のルートコレクションに追加します。
  5. パスを描画するための命令を表すSvgPathBuilderクラスのToPathDataメソッドを使用してSvgPathDataを提供します。
  6. 各パスの他のプロパティ(塗りつぶし、ストロークなど)を定義します。
  7. GcSvgDocumentクラスのSaveメソッドを使用して、ドキュメントをSVGとして保存します。
    C#
    コードのコピー
    public static GcSvgDocument DrawCarrot()
    {
        // 新しいSVGドキュメントを作成します
        var doc = new GcSvgDocument();
        var svg = doc.RootSvg;
        svg.ViewBox = new SvgViewBox(0, 0, 313.666f, 164.519f);
    
        // SvgPathBuilderクラスのインスタンスを作成します
        var pb = new SvgPathBuilder();
    
        // パスを定義します
        pb.AddMoveTo(false, 29.649f, 9.683f);
        pb.AddCurveTo(true, -2.389f, -0.468f, -4.797f, 2.57f, -6.137f, 5.697f);
        pb.AddCurveTo(true, 2.075f, -2.255f, 3.596f, -1.051f, 4.91, 5f, -0.675f);
        pb.AddCurveTo(true, -2.122f, 2.795f, -4f, 5.877f, -7.746f, 5.568f);
        pb.AddCurveTo(true, 2.384f, -6.014f, 2.963f, -12.977f, 0.394f, -17.78f);
        pb.AddCurveTo(true, -1.296f, 2.591f, -1.854f, 6.054f, -5.204f, 7.395f);
        pb.AddCurveTo(true, 3.575f, 2.455f, 0.986f, 7.637f, 1.208f, 11.437f);
        pb.AddCurveTo(false, 11.967f, 21.17f, 6.428f, 16.391f, 9.058f, 10.67f);
        pb.AddCurveTo(true, -3.922f, 8.312f, -2.715f, 19.745f, 4.363f, 22.224f);
        pb.AddCurveTo(true, -3.86f, 4.265f, -2.204f, 10.343f, 0.209f, 13.781f);
        pb.AddCurveTo(true, -0.96f, 1.808f, -1.83f, 2.546f, -3.774f, 3.195f);
        pb.AddCurveTo(true, 3.376f, 1.628f, 6.612f, 4.866f, 11.326f, 3.366f);
        pb.AddCurveTo(true, -1.005f, 2.345f, -12.389f, 9.499f, -15.16f, 10.35f);
        pb.AddCurveTo(true, 3.216f, 0.267f, 14.492f, -2.308f, 16.903f, -5.349f);
        pb.AddCurveTo(true, -1.583f, 2.84f, 1.431f, 2.28f, 2.86f, 4.56f);
        pb.AddCurveTo(true, 1.877f, -3.088f, 3.978f, -2.374f, 5.677f, -3.311f);
        pb.AddCurveTo(true, -0.406f, 4.826f, -2.12f, 9.27f, -5.447f, 13.582f);
        pb.AddCurveTo(true, 2.834f, -4.894f, 6.922f, -5.367f, 10.474f, -5.879f);
        pb.AddCurveTo(true, -0.893f, 4.245f, -3.146f, 8.646f, -7.077f, 10.479f);
        pb.AddCurveTo(true, 5.359f, 0.445f, 11.123f, -3.934f, 13.509f, -9.944f);
        pb.AddCurveTo(true, 12.688f, 3.209f, 28.763f, -1.932f, 39.894f, 7.084f);
        pb.AddCurveTo(true, 1.024f, 0.625f, 1.761f, -4.98f, 1.023f, -5.852f);
        pb.AddCurveTo(false, 72.823f, 55.357f, 69.273f, 68.83f, 52.651f, 54.498f);
        pb.AddCurveTo(true, -0.492f, -0.584f, 1.563f, -5.81f, 1f, -8.825f);
        pb.AddCurveTo(true, -1.048f, -3.596f, -3.799f, -6.249f, -7.594f, -6.027f);
        pb.AddCurveTo(true, -2.191f, 0.361f, -5.448f, 0.631f, -7.84f, 0.159f);
        pb.AddCurveTo(true, 2.923f, -5.961f, 9.848f, -4.849f, 12.28f, -11.396f);
        pb.AddCurveTo(true, -4.759f, 2.039f, -7.864f, -2.808f, -12.329f, -1.018f);
        pb.AddCurveTo(true, 1.63f, -3.377f, 4.557f, -2.863f, 6.786f, -3.755f);
        pb.AddCurveTo(true, -3.817f, -2.746f, -9.295f, -5.091f, -14.56f, -0.129f);
        pb.AddCurveTo(false, 33.228f, 18.615f, 32.064f, 13.119f, 29.649f, 9.683f);
    
        // SVGのChildrenコレクションに要素を追加します
        svg.Children.Add(new SvgPathElement()
        {
            FillRule = SvgFillRule.EvenOdd,
            Fill = new SvgPaint(Color.FromArgb(0x43, 0x95, 0x39)),
            PathData = pb.ToPathData(),
        });
    
        pb.Reset();
        pb.AddMoveTo(false, 29.649f, 9.683f);
        pb.AddCurveTo(true, -2.389f, -0.468f, -4.797f, 2.57f, -6.137f, 5.697f);
        pb.AddCurveTo(true, 2.075f, -2.255f, 3.596f, -1.051f, 4.915f, -0.675f);
        pb.AddCurveTo(true, -2.122f, 2.795f, -4f, 5.877f, -7.746f, 5.568f);
        pb.AddCurveTo(true, 2.384f, -6.014f, 2.963f, -12.977f, 0.394f, -17.78f);
        pb.AddCurveTo(true, -1.296f, 2.591f, -1.854f, 6.054f, -5.204f, 7.395f);
        pb.AddCurveTo(true, 3.575f, 2.455f, 0.986f, 7.637f, 1.208f, 11.437f);
        pb.AddCurveTo(false, 11.967f, 21.17f, 6.428f, 16.391f, 9.058f, 10.67f);
        pb.AddCurveTo(true, -3.922f, 8.312f, -2.715f, 19.745f, 4.363f, 22.224f);
        pb.AddCurveTo(true, -3.86f, 4.265f, -2.204f, 10.343f, 0.209f, 13.781f);
        pb.AddCurveTo(true, -0.96f, 1.808f, -1.83f, 2.546f, -3.774f, 3.195f);
        pb.AddCurveTo(true, 3.376f, 1.628f, 6.612f, 4.866f, 11.326f, 3.366f);
        pb.AddCurveTo(true, -1.005f, 2.345f, -12.389f, 9.499f, -15.16f, 10.35f);
        pb.AddCurveTo(true, 3.216f, 0.267f, 14.492f, -2.308f, 16.903f, -5.349f);
        pb.AddCurveTo(true, -1.583f, 2.84f, 1.431f, 2.28f, 2.86f, 4.56f);
        pb.AddCurveTo(true, 1.877f, -3.088f, 3.978f, -2.374f, 5.677f, -3.311f);
        pb.AddCurveTo(true, -0.406f, 4.826f, -2.12f, 9.27f, -5.447f, 13.582f);
        pb.AddCurveTo(true, 2.834f, -4.894f, 6.922f, -5.367f, 10.474f, -5.879f);
        pb.AddCurveTo(true, -0.893f, 4.245f, -3.146f, 8.646f, -7.077f, 10.479f);
        pb.AddCurveTo(true, 5.359f, 0.445f, 11.123f, -3.934f, 13.509f, -9.944f);
        pb.AddCurveTo(true, 12.688f, 3.209f, 28.763f, -1.932f, 39.894f, 7.084f);
        pb.AddCurveTo(true, 1.024f, 0.625f, 1.761f, -4.98f, 1.023f, -5.852f);
        pb.AddCurveTo(false, 72.823f, 55.357f, 69.273f, 68.83f, 52.651f, 54.498f);
        pb.AddCurveTo(true, -0.492f, -0.584f, 1.563f, -5.81f, 1f, -8.825f);
        pb.AddCurveTo(true, -1.048f, -3.596f, -3.799f, -6.249f, -7.594f, -6.027f);
        pb.AddCurveTo(true, -2.191f, 0.361f, -5.448f, 0.631f, -7.84f, 0.159f);
        pb.AddCurveTo(true, 2.923f, -5.961f, 9.848f, -4.849f, 12.28f, -11.396f);
        pb.AddCurveTo(true, -4.759f, 2.039f, -7.864f, -2.808f, -12.329f, -1.018f);
        pb.AddCurveTo(true, 1.63f, -3.377f, 4.557f, -2.863f, 6.786f, -3.755f);
        pb.AddCurveTo(true, -3.817f, -2.746f, -9.295f, -5.091f, -14.56f, -0.129f);
        pb.AddCurveTo(false, 33.228f, 18.615f, 32.064f, 13.119f, 29.649f, 9.683f);
        pb.AddClosePath();
        // SVGのChildrenコレクションに要素を追加します
        svg.Children.Add(new SvgPathElement()
        {
            Fill = SvgPaint.None,
            Stroke = new SvgPaint(Color.Black),
            StrokeWidth = new SvgLength(2.292f),
            StrokeMiterLimit = 14.3f,
            PathData = pb.ToPathData(),
        });
    
        pb.Reset();
        pb.AddMoveTo(false, 85.989f, 101.047f);
        pb.AddCurveTo(true, 0f, 0f, 3.202f, 3.67f, 8.536f, 4.673f);
        pb.AddCurveTo(true, 7.828f, 1.472f, 17.269f, 0.936f, 17.269f, 0.936f);
        pb.AddCurveTo(true, 0f, 0f, 2.546f, 5.166f, 10.787f, 7.338f);
        pb.AddCurveTo(true, 8.248f, 2.168f, 17.802f, 0.484f, 17.802f, 0.484f);
        pb.AddCurveTo(true, 0f, 0f, 8.781f, 1.722f, 19.654f, 8.074f);
        pb.AddCurveTo(true, 10.871f, 6.353f, 20.142f, 2.163f, 20.142f, 2.163f);
        pb.AddCurveTo(true, 0f, 0f, 1.722f, 3.118f, 14.11f, 9.102f);
        pb.AddCurveTo(true, 12.39f, 5.982f, 14.152f, 2.658f, 28.387f, 4.339f);
        pb.AddCurveTo(true, 14.232f, 1.672f, 19.36f, 5.568f, 30.108f, 7.449f);
        pb.AddCurveTo(true, 10.747f, 1.886f, 25.801f, 5.607f, 25.801f, 5.607f);
        pb.AddCurveTo(true, 0f, 0f, 4.925f, 0.409f, 12.313f, 6.967f);
        pb.AddCurveTo(true, 7.381f, 6.564f, 18.453f, 4.506f, 18.453f, 4.506f);
        pb.AddCurveTo(true, 0f, 0f, -10.869f, -6.352f, -15.467f, -10.702f);
        pb.AddCurveTo(true, -4.594f, -4.342f, -16.901f, -11.309f, -24.984f, -15.448f);
        pb.AddCurveTo(true, -8.079f, -4.14f, -18.215f, -7.46f, -30.233f, -11.924f);
        pb.AddCurveTo(true, -12.018f, -4.468f, -6.934f, -6.029f, -23.632f, -13.855f);
        pb.AddCurveTo(true, -16.695f, -7.822f, -13.662f, -8.565f, -28.347f, -10.776f);
        pb.AddCurveTo(true, -14.686f, -2.208f, -6.444f, -11.933f, -23.917f, -16.356f);
        pb.AddCurveTo(true, -17.479f, -4.423f, -11.037f, -4.382f, -26.016f, -9.093f);
        pb.AddCurveTo(true, -14.97f, -4.715f, -10.638f, -10.104f, -26.665f, -13.116f);
        pb.AddCurveTo(true, -14.149f, -2.66f, -21.318f, 0.468f, -27.722f, 11.581f);
        pb.AddCurveTo(false, 73.104f, 89.075f, 85.989f, 101.047f, 85.989f, 101.047f);
        // SVGのChildrenコレクションに要素を追加します
        svg.Children.Add(new SvgPathElement()
        {
            FillRule = SvgFillRule.EvenOdd,
            Fill = new SvgPaint(Color.FromArgb(0xFF, 0xC2, 0x22)),
            PathData = pb.ToPathData(),
        });
    
        pb.Reset();
        pb.AddMoveTo(false, 221.771f, 126.738f);
        pb.AddCurveTo(true, 0f, 0f, 1.874f, -4.211f, 4.215f, -6.087f);
        pb.AddCurveTo(true, 2.347f, -1.868f, 2.812f, -2.339f, 2.812f, -2.339f);
        pb.AddMoveTo(false, 147.11f, 105.122f);
        pb.AddCurveTo(true, 0f, 0f, 0.882f, -11.047f, 6.765f, -15.793f);
        pb.AddCurveTo(true, 5.879f, -4.745f, 10.882f, -5.568f, 10.882f, -5.568f);
        pb.AddMoveTo(false, 125.391f, 86.008f);
        pb.AddCurveTo(true, 0f, 0f, 2.797f, -6.289f, 6.291f, -9.081f);
        pb.AddCurveTo(true, 3.495f, -2.791f, 4.194f, -3.49f, 4.194f, -3.49f);
        pb.AddMoveTo(false, 181.153f, 124.8f);
        pb.AddCurveTo(true, 0f, 0f, -1.206f, -4.014f, -0.709f, -6.671f);
        pb.AddCurveTo(true, 0.493f, -2.66f, 0.539f, -3.256f, 0.539f, -3.256f);
        pb.AddMoveTo(false, 111.704f, 107.641f);
        pb.AddCurveTo(true, 0f, 0f, -1.935f, -6.604f, -1.076f, -10.991f);
        pb.AddCurveTo(true, 0.862f, -4.389f, 0.942f, -5.376f, 0.942f, -5.376f);
        pb.AddMoveTo(false, 85.989f, 101.047f);
        pb.AddCurveTo(true, 0f, 0f, 3.202f, 3.67f, 8.536f, 4.673f);
        pb.AddCurveTo(true, 7.828f, 1.472f, 17.269f, 0.936f, 17.269f, 0.936f);
        pb.AddCurveTo(true, 0f, 0f, 2.546f, 5.166f, 10.787f, 7.338f);
        pb.AddCurveTo(true, 8.248f, 2.168f, 17.802f, 0.484f, 17.802f, 0.484f);
        pb.AddCurveTo(true, 0f, 0f, 8.781f, 1.722f, 19.654f, 8.074f);
        pb.AddCurveTo(true, 10.871f, 6.353f, 20.142f, 2.163f, 20.142f, 2.163f);
        pb.AddCurveTo(true, 0f, 0f, 1.722f, 3.118f, 14.11f, 9.102f);
        pb.AddCurveTo(true, 12.39f, 5.982f, 14.152f, 2.658f, 28.387f, 4.339f);
        pb.AddCurveTo(true, 14.232f, 1.672f, 19.36f, 5.568f, 30.108f, 7.449f);
        pb.AddCurveTo(true, 10.747f, 1.886f, 25.801f, 5.607f, 25.801f, 5.607f);
        pb.AddCurveTo(true, 0f, 0f, 4.925f, 0.409f, 12.313f, 6.967f);
        pb.AddCurveTo(true, 7.381f, 6.564f, 18.453f, 4.506f, 18.453f, 4.506f);
        pb.AddCurveTo(true, 0f, 0f, -10.869f, -6.352f, -15.467f, -10.702f);
        pb.AddCurveTo(true, -4.594f, -4.342f, -16.901f, -11.309f, -24.984f, -15.448f);
        pb.AddCurveTo(true, -8.079f, -4.14f, -18.215f, -7.46f, -30.233f, -11.924f);
        pb.AddCurveTo(true, -12.018f, -4.468f, -6.934f, -6.029f, -23.632f, -13.855f);
        pb.AddCurveTo(true, -16.695f, -7.822f, -13.662f, -8.565f, -28.347f, -10.776f);
        pb.AddCurveTo(true, -14.686f, -2.208f, -6.444f, -11.933f, -23.917f, -16.356f);
        pb.AddCurveTo(true, -17.479f, -4.423f, -11.037f, -4.382f, -26.016f, -9.093f);
        pb.AddCurveTo(true, -14.97f, -4.715f, -10.638f, -10.104f, -26.665f, -13.116f);
        pb.AddCurveTo(true, -14.149f, -2.66f, -21.318f, 0.468f, -27.722f, 11.581f);
        pb.AddCurveTo(false, 73.104f, 89.075f, 85.989f, 101.047f, 85.989f, 101.047f);
        pb.AddClosePath();
    
        // SVGのChildrenコレクションに要素を追加します
        svg.Children.Add(new SvgPathElement()
        {
            Fill = SvgPaint.None,
            Stroke = new SvgPaint(Color.Black),
            StrokeWidth = new SvgLength(3.056f),
            StrokeMiterLimit = 11.5f,
            PathData = pb.ToPathData(),
        });
        // ドキュメントをsvgとして保存します
        doc.Save("demo.svg");
        return doc;
    }
    
先頭に戻る

PDFにSVG画像の描画

GrapeCity.Documents.Svg名前空間のGcSvgDocumentクラスを使用して、SVGファイルをPDFページに描画できます。

SVG画像をPDFドキュメントに描画するには

  1. GcSvgDocumentクラスのFromFileメソッドを使用して、SVG画像をPDFドキュメントにロードします。
  2. GcGraphicsクラスのDrawSvgメソッドを使用して、指定したSVGドキュメントをPDFドキュメントに描画します。
  3. GcPdfDocumentクラスのSaveメソッドを使用して、SVG画像を含むPDFドキュメントを保存します。
    C#
    コードのコピー
    var doc = new GcPdfDocument();
    var g = doc.NewPage().Graphics;
    var prevT = g.Transform;
    g.Transform = Matrix3x2.CreateScale(factor);
    using var svg = GcSvgDocument.FromFile("Rectangle.svg");
    g.DrawSvg(svg, new PointF(72 / factor, 72 / factor));
    g.Transform = prevT;
    doc.Save("SVGImage.pdf");
    

先頭に戻る

DioDocs for PDFを使用してSVG画像をPDFファイルに描画する方法の詳細については、DioDocs for PDF サンプルブラウザを参照してください。