チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル»pdfnetpagesetting

Displaying items by tag: pdfnetpagesetting

PDF ドキュメントのページサイズ、向き、および回転角度を確認することは、品質管理プロセスの一環として必要になる場合があります。たとえば、文書を公開または配布する前に、すべてのページが正しく表示されているかどうかを確認する必要があるかもしれません。本記事では、C# で Spire.PDF for .NET を使い、PDF ページのサイズ、向き、回転角度を取得する方法を紹介します。

Spire.PDF for .NET をインストールします

まず、Spire.PDF for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.PDF

C# で PDF ページサイズを取得する

Spire.PDF for .NET は、PDF ページの幅と高さをポイント単位で取得するために、PdfPageBase.Size.Width および PdfPageBase.Size.Height プロパティを提供しています。デフォルトの単位を他の単位に変換したい場合は、PdfUnitConvertor クラスを使用できます。以下に詳細な手順を示します。

  • PdfDocument インスタンスを作成します。
  • PdfDocument.LoadFromFile() メソッドを使って PDF ファイルを読み込みます。
  • PdfDocument.Pages[] プロパティを使って指定したページを取得します。
  • PdfPageBase.Size.Width および PdfPageBase.Size.Height プロパティを使用して、PDF ページの幅と高さを取得します。
  • PdfUnitConvertor インスタンスを作成し、PdfUnitConvertor.ConvertUnits() メソッドを使ってポイント単位を他の測定単位に変換します。
  • ページサイズの情報を StringBuilder インスタンスに追加し、結果を TXT ファイルに保存します。
  • C#
using System.Text;
using Spire.Pdf;
using Spire.Pdf.Graphics;

namespace GetPDFPageSize
{
    class Program
    {
        static void Main(string[] args)
        {
            // PdfDocumentオブジェクトを作成
            PdfDocument pdf = new PdfDocument();

            // ディスクからPDFファイルを読み込む
            pdf.LoadFromFile("Sample.pdf");

            // 最初のページを取得
            PdfPageBase page = pdf.Pages[0];

            // ページの幅と高さをポイントで取得
            float pointWidth = page.Size.Width;
            float pointHeight = page.Size.Height;

            // PdfUnitConvertorを作成して単位を変換
            PdfUnitConvertor unitCvtr = new PdfUnitConvertor();

            // ポイントをピクセルに変換
            float pixelWidth = unitCvtr.ConvertUnits(pointWidth, PdfGraphicsUnit.Point, PdfGraphicsUnit.Pixel);
            float pixelHeight = unitCvtr.ConvertUnits(pointHeight, PdfGraphicsUnit.Point, PdfGraphicsUnit.Pixel);

            // ポイントをインチに変換
            float inchWidth = unitCvtr.ConvertUnits(pointWidth, PdfGraphicsUnit.Point, PdfGraphicsUnit.Inch);
            float inchHeight = unitCvtr.ConvertUnits(pointHeight, PdfGraphicsUnit.Point, PdfGraphicsUnit.Inch);

            // ポイントをセンチメートルに変換
            float centimeterWidth = unitCvtr.ConvertUnits(pointWidth, PdfGraphicsUnit.Point, PdfGraphicsUnit.Centimeter);
            float centimeterHeight = unitCvtr.ConvertUnits(pointHeight, PdfGraphicsUnit.Point, PdfGraphicsUnit.Centimeter);

            // StringBuilderインスタンスを作成
            StringBuilder content = new StringBuilder();

            // ページサイズ情報をStringBuilderインスタンスに追加
            content.AppendLine("このページのサイズ(ポイント)は (幅: " + pointWidth + "pt, 高さ: " + pointHeight + "pt) です。");
            content.AppendLine("このページのサイズ(ピクセル)は (幅: " + pixelWidth + "pixel, 高さ: " + pixelHeight + "pixel) です。");
            content.AppendLine("このページのサイズ(インチ)は (幅: " + inchWidth + "inch, 高さ: " + inchHeight + "inch) です。");
            content.AppendLine("このページのサイズ(センチメートル)は (幅: " + centimeterWidth + "cm, 高さ: " + centimeterHeight + "cm) です。");

            // テキストファイルに保存
            File.WriteAllText("GetPageSize.txt", content.ToString());
        }
    }
}

C#:PDF ページのサイズ、向き、回転を取得する方法

C# で PDF ページの向きを取得する

PDF ページの向きを検出するには、ページの幅と高さを比較します。ページの幅が高さより大きい場合、そのページは横向き(ランドスケープ)であり、それ以外の場合は縦向き(ポートレート)です。以下に詳細な手順を示します。

  • PdfDocument インスタンスを作成します。
  • PdfDocument.LoadFromFile() メソッドを使って PDF ファイルを読み込みます。
  • PdfDocument.Pages[] プロパティを使って指定したページを取得します。
  • PdfPageBase.Size.Width および PdfPageBase.Size.Height プロパティを使用して、PDF ページの幅と高さを取得します。
  • ページの幅と高さの値を比較して、ページの向きを検出します。
  • Console.WriteLine() メソッドを使って結果を出力します。
  • C#
using Spire.Pdf;

namespace GetPDFPageOrientation
{
    class Program
    {
        static void Main(string[] args)
        {
            // PdfDocumentオブジェクトを作成
            PdfDocument pdf = new PdfDocument();

            // ディスクからPDFファイルを読み込む
            pdf.LoadFromFile("Sample.pdf");

            // 最初のページを取得
            PdfPageBase page = pdf.Pages[0];

            // ページの幅と高さを取得
            float width = page.Size.Width;
            float height = page.Size.Height;

            // ページの幅と高さを比較
            if (width > height)
            {
                Console.WriteLine("\r\n\r\nページの向きは横向きです。");
            }
            else
            {
                Console.WriteLine("\r\n\r\nページの向きは縦向きです。");
            }
        }
    }
}

C#:PDF ページのサイズ、向き、回転を取得する方法

C# で PDF ページの回転角度を取得する

PDF ページの回転角度は、PdfPageBase.Rotation プロパティを通じて取得できます。以下に詳細な手順を示します。

  • PdfDocument インスタンスを作成します。
  • PdfDocument.LoadFromFile() メソッドを使って PDF ファイルを読み込みます。
  • PdfDocument.Pages[] プロパティを使って指定したページを取得します。
  • PdfPageBase.Rotation プロパティを使用してページの回転角度を取得し、それを文字列に変換します。
  • Console.WriteLine() メソッドを使って結果を出力します。
  • C#
using Spire.Pdf;

namespace GetPDFPageRotationAngle
{
    class Program
    {
        static void Main(string[] args)
        {
            // PdfDocumentオブジェクトを作成
            PdfDocument pdf = new PdfDocument();

            // ディスクからPDFファイルを読み込む
            pdf.LoadFromFile("Sample.pdf");

            // 最初のページを取得
            PdfPageBase page = pdf.Pages[1];

            // 現在のページの回転角度を取得
            PdfPageRotateAngle rotationAngle = page.Rotation;
            string rotation = rotationAngle.ToString();

            // ページの回転角度情報を出力
            Console.WriteLine("\r\n\r\n現在のページの回転角度は: " + rotation);
        }
    }
}

C#:PDF ページのサイズ、向き、回転を取得する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Published in ページの設定
Tagged under

PDF ファイルのページ数を数えることは、ドキュメントの長さを把握したり、内容を整理したり、印刷要件を評価したりするために重要です。PDF ビューアでページ数を確認するだけでなく、プログラムによってこの作業を自動化することも可能です。本記事では、C# で Spire.PDF for .NET を使い、PDF ファイルのページ数を取得する方法を紹介します。

Spire.PDF for .NET をインストールします

まず、Spire.PDF for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.PDF

C# で PDF ファイルのページ数を取得する

Spire.PDF for .NET は、PDF ファイルを開かずに素早くページ数を数えるために、PdfDocument.Pages.Count プロパティを提供しています。以下に詳細な手順を示します。

  • PdfDocument オブジェクトを作成します。
  • PdfDocument.LoadFromFile() メソッドを使って PDF ファイルを読み込みます。
  • PdfDocument.Pages.Count プロパティを使って、PDF ファイルのページ数を取得します。
  • 結果を出力し、PDF ファイルを閉じます。
  • C#
using Spire.Pdf;

namespace GetNumberOfPages
{
    class Program
    {
        static void Main(string[] args)
        {
            // PdfDocumentオブジェクトを作成
            PdfDocument pdf = new PdfDocument();

            // サンプルPDFファイルを読み込む
            pdf.LoadFromFile("Sample.pdf");

            // PDFのページ数を数える
            int PageNumber = pdf.Pages.Count;
            Console.WriteLine("\r\n\r\nこのPDFファイルには{0}ページあります。", PageNumber);

            // PDFを閉じる
            pdf.Close();
        }
    }
}

C#:PDF ドキュメントのページ数を取得する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Published in ページの設定
Tagged under

PDF の余白とは、コンテンツとページ端の間の空白領域です。多くの場合、余白は中程度か狭く設定し、コンパクトな体裁を作ります。しかし、会社のロゴやその他の関連情報を余白に配置したい場合は、余白をもう少し広くする必要があります。この記事では、C# で Spire.PDF for .NET を使って既存の PDF ドキュメントの余白を増やしたり減らしたりする方法を説明します。

Spire.PDF for .NET をインストールします

まず、Spire.PDF for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.PDF

C# で PDF ドキュメントの余白を広げる

PDF ドキュメントの余白を拡大する方法は、ページサイズを大きくした新しい PDF を作成し、その大きなページの適切な位置にソースページを描画することです。以下は、Spire.PDF for .NET を使って PDF ドキュメントの余白を大きくする手順です。

  • PdfDocument オブジェクトを初期化しながら元の PDF ドキュメントを読み込みます。
  • 別の PdfDocument オブジェクトを作成します。
  • 余白の増加値を設定します。
  • 新しい PDF ドキュメントのページサイズを計算します。
  • 元のドキュメント内のページをループし、PdfPageBase.CreateTemplate() メソッドを使用して特定のページに基づいてテンプレートを作成します。
  • PdfDocument.Pages.Add() メ ソ ッ ド を使っ て新 し い PDF ドキュメントにページ を追加 し ます。
  • PdfTemplate.Draw() メソッドを使用して、座標 (0, 0) でページ上にテンプレートを描画します。
  • PdfDocument.SaveToFile() メ ソ ッ ド を使っ て新 し い PDF ドキュメントを保存 し ます。
  • C#
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace IncreaseMargins
{
    class Program
    {
        static void Main(string[] args)
        {
            //オリジナルのPDFドキュメントをロードする
            PdfDocument originalPdf = new PdfDocument("サンプル.pdf");

            //最初のページを取得する
            PdfPageBase firstPage = originalPdf.Pages[0];

            //新しいPdfDocumentオブジェクトを作成する
            PdfDocument newPdf = new PdfDocument();

            //マージンの増加値を設定する
            PdfMargins margins = newPdf.PageSettings.Margins;
            margins.Top = 40;
            margins.Bottom=40;
            margins.Left=40;
            margins.Right= 40;

            //新しいページサイズを計算する
            SizeF sizeF = new SizeF(firstPage.Size.Width + margins.Left + margins.Right, firstPage.Size.Height + margins.Top + margins.Bottom);

            //オリジナルドキュメントのページをループ処理する
            for (int i = 0; i < originalPdf.Pages.Count; i++)
            {
                //特定のページを元にテンプレートを作成する
                PdfTemplate pdfTemplate = originalPdf.Pages[i].CreateTemplate();

                //新しいPDFにページを追加する
                PdfPageBase page = newPdf.Pages.Add(sizeF);

                //テンプレートをページ上に描画する
                pdfTemplate.Draw(page, 0, 0);
            }

            //新しいドキュメントを保存する
            newPdf.SaveToFile("output/マージンの拡大.pdf", FileFormat.PDF);
        }
    }
}

C#:PDF ドキュメントの余白を調整する方法

C# で PDF ドキュメントの余白を縮める

PDF の余白を減らす方法は、ページサイズを小さくした新しい PDF を作成し、指定された座標で小さなページ上にソースページを描画することです。以下は、Spire.PDF for .NET を使用して PDF ドキュメントの余白を縮小する手順です。

  • PdfDocument オブジェクトを初期化しながら元の PDF ドキュメントを読み込みます。
  • 別の PdfDocument オブジェクトを作成します。
  • 余白の減少値を設定します。
  • 新しい PDF ドキュメントのページサイズを計算します。
  • 元のドキュメント内のページをループし、PdfPageBase.CreateTemplate() メソッドを使用して特定のページに基づいてテンプレートを作成します。
  • PdfDocument.Pages.Add() メ ソ ッ ド を使っ て新 し い PDF ドキュメントにページ を追加 し ます。
  • PdfTemplate.Draw() メソッドを使用して、指定した座標でページ上にテンプレートを描画します。
  • PdfDocument.SaveToFile() メソッドを使用して新しいPDFドキュメントをファイルに保存します。
  • C#
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace DecreaseMargins
{
    class Program
    {
        static void Main(string[] args)
        {
            //オリジナルのPDFドキュメントをロードする
            PdfDocument originalPdf = new PdfDocument("サンプル.pdf");

            //最初のページを取得する
            PdfPageBase firstPage = originalPdf.Pages[0];

            //新しいPdfDocumentオブジェクトを作成する
            PdfDocument newPdf = new PdfDocument();

            //減少値を設定する
            float left = -12;
            float right = -12;
            float top = -12;
            float bottom = -12;

            //新しいページサイズを計算する
            SizeF sizeF = new SizeF(firstPage.Size.Width + left + right, firstPage.Size.Height + top + bottom);

            //オリジナルドキュメントのページをループ処理する
            for (int i = 0; i < originalPdf.Pages.Count; i++)
            {
                //特定のページを元にテンプレートを作成する
                PdfTemplate pdfTemplate = originalPdf.Pages[i].CreateTemplate();

                //新しいPDFにページを追加する
                PdfPageBase page = newPdf.Pages.Add(sizeF, new PdfMargins(0));

                //テンプレートをページ上に描画する
                pdfTemplate.Draw(page, left, top);
            }

            //新しいドキュメントを保存する
            newPdf.SaveToFile("output/マージンの縮小.pdf", FileFormat.PDF);
        }
    }
}

C#:PDF ドキュメントの余白を調整する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Published in ページの設定
Tagged under

PDF 文書において、背景とはページのコンテンツの背後にある全体的な視覚的な外観を指します。背景は単純な均一な色であることもありますし、好みの画像であることもあります。PDF に背景を追加することで、ドキュメントに視覚的な魅力を加えることができ、読みやすさも向上するでしょう。この記事では、Spire.PDF for .NET を使用して PDF の背景色と背景画像を設定する方法を紹介します。

Spire.PDF for .NET をインストールします

まず、Spire.PDF for .NET パッケージに含まれているDLLファイルを.NETプロジェクトの参照として追加する必要があります。DLLファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.PDF

PDF ドキュメントへの背景色を追加する

Spire.PDF for .NET が提供する PdfPageBase.BackgroundColor プロパティを使用すると、PDF の背景として単色を設定できます。詳細な手順は次のとおりです。

  • PdfDocument インスタンスを作成します。
  • PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
  • すべての PDF ページをループし、PdfPageBase.BackgroundColor プロパティを使用して各ページに背景色を追加します。
  • PdfPageBase.BackgroudOpacity プロパティを使用して、背景の透明度を設定します。
  • PdfDocument.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
  • VB.NET
using Spire.Pdf;
using System.Drawing;

namespace PDFBackgroundColor
{
    class Program
    {
        static void Main(string[] args)
        {
            //PdfDocument インスタンスを作成する
            PdfDocument pdf = new PdfDocument();

            //PDFファイルをロードする
            pdf.LoadFromFile("input.pdf");

            //PDFのページをループする
            foreach (PdfPageBase page in pdf.Pages)
            {
                //ページの背景色を設定する
                page.BackgroundColor = Color.Yellow;

                //背景の透明度を設定する
                page.BackgroudOpacity = 0.1f;
            }

            //PDFファイルを保存する
            pdf.SaveToFile("BackgroundColor.pdf");
            pdf.Close();

        }
    }
}
Imports Spire.PDF
Imports System.Drawing

Namespace PDFBackgroundColor
    Class Program
        Private Shared Sub Main(ByVal args() As String)

            'PdfDocument インスタンスを作成する
            Dim pdf As PdfDocument = New PdfDocument

            'PDFファイルをロードする
            pdf.LoadFromFile("input.pdf")

            'PDFのページをループする
            For Each page As PdfPageBase In pdf.Pages

                'ページの背景色を設定する
                page.BackgroundColor = Color.Yellow

                '背景の透明度を設定する
                page.BackgroudOpacity = 0.1!
            Next

            'PDFファイルを保存する
            pdf.SaveToFile("BackgroundColor.pdf")
            pdf.Close()
        End Sub
    End Class
End Namespace

C#/VB.NET:PDF の背景色または背景画像を追加する方法

PDF ドキュメントへの背景画像を追加する

文書のテーマに合わせて背景として画像を追加する場合は、PdfPageBase.BackgroundImage プロパティを使用できます。詳細な手順は次のとおりです。

  • PdfDocument インスタンスを作成します。
  • PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
  • すべての PDF ページをループし、PdfPageBase.BackgroundImage プロパティを使用して各ページに背景画像を追加します。
  • PdfPageBase.BackgroudOpacity プロパティを使用して、背景の透明度を設定します。
  • PdfDocument.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
  • VB.NET
using Spire.Pdf;
using System.Drawing;

namespace PDFBackgroundImage
{
    class Program
    {
        static void Main(string[] args)
        {
            //PdfDocument インスタンスを作成する
            PdfDocument pdf = new PdfDocument();

            //PDFファイルをロードする
            pdf.LoadFromFile("input.pdf");

            //画像をロードする
            Image background = Image.FromFile("background.png");

            //PDFのページをループする
            foreach (PdfPageBase page in pdf.Pages)
            {
                //ロードされた画像をページの背景画像に設定する
                page.BackgroundImage = background;

                //背景の透明度を設定する
                page.BackgroudOpacity = 0.2f;
            }

            // PDFファイルを保存する
            pdf.SaveToFile("BackgroundImage.pdf");
            pdf.Close();

        }
    }
}
Imports Spire.PDF
Imports System.Drawing

Namespace PDFBackgroundImage
    Class Program
        Private Shared Sub Main(ByVal args() As String)

            'PdfDocument インスタンスを作成する
            Dim pdf As PdfDocument = New PdfDocument

            'PDFファイルをロードする
            pdf.LoadFromFile("input.pdf")

            '画像をロードする
            Dim background As Image = Image.FromFile("background.png")

            'PDFのページをループする
            For Each page As PdfPageBase In pdf.Pages

                'ロードされた画像をページの背景画像に設定する
                page.BackgroundImage = background

                '背景の透明度を設定する
                page.BackgroudOpacity = 0.2!
            Next

            'PDFファイルを保存する
            pdf.SaveToFile("BackgroundImage.pdf")
            pdf.Close()
        End Sub
    End Class
End Namespace

C#/VB.NET:PDF の背景色または背景画像を追加する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Published in ページの設定
Tagged under

何らかの理由で PDF のページサイズを変更する必要がある場合があります。たとえば、印刷するファイルのページサイズとプリンタで使用する用紙サイズが異なります。この記事では、Spire.PDF for .NET を使用して、C# および VB.NET でプログラムによって PDF ページサイズを変更する方法を示します。

Spire.PDF for .NET をインストールします

まず、Spire.PDF for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.PDF

PDF ページサイズを標準の用紙サイズに変更する

PDF ファイルのページサイズを変更する方法は、新しい PDF ファイルを作成し、必要なサイズのページを追加することです。次に、元の PDF ファイルのページに基づいてテンプレートを作成し、新しい PDF ファイルのページにテンプレートを描画します。この方法では、元の PDF ファイルのテキスト、画像、その他の要素が保持されます。

Spire.PDF for .NET は、letter、legal、A0、A1、A2、A3、A4、B0、B1、B2、B3、B4 など、さまざまな標準用紙サイズをサポートしています。以下に詳細な操作手順を示します。

  • PdfDocument インスタンスを初期化し、PdfDocument.LoadFromFile() メソッドを使用して元の PDF ファイルをロードします。
  • 別の PdfDocument インスタンスを初期化し、新しい PDF ファイルを作成します。
  • 元の PDF のページをループします。
  • PdfDocument.Pages.Add() メソッドを使用して、必要なサイズのページを新しい PDF ファイルに追加します。
  • PdfTextLayout インスタンスを初期化し、PdfTextLayout.Layout プロパティでテキストレイアウトを1ページに設定します。
  • PdfPageBase.CreateTemplate() メソッドを使用して、元の PDF 内のページに基づいてテンプレートを作成します。
  • PdfTemplate.Draw() メソッドを使用して、指定したテキストレイアウトを持つ新しい PDF ファイルのページにテンプレートを描画します。
  • PdfDocument.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
  • VB.NET
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace ChangePageSizeToStandardPaperSize
{
    class Program
    {
        static void Main(string[] args)
        {            
            //PdfDocumentインスタンスを初期化する
            PdfDocument originPdf = new PdfDocument();
            //元のPDFドキュメントをロードする
            originPdf.LoadFromFile("Sample.pdf");

            //新しいPDFドキュメントを作成する
            PdfDocument newPdf = new PdfDocument();

            //元のPDFのページをループする
            foreach(PdfPageBase page in originPdf.Pages)
            { 
                //A 1サイズのページを新しいPDFに追加する
                PdfPageBase newPage = newPdf.Pages.Add(PdfPageSize.A1, new PdfMargins(0));
                //PdfTextLayoutインスタンスを作成する
                PdfTextLayout layout = new PdfTextLayout();
                //テキストレイアウトを1ページに設定する(設定されていない場合、コンテンツはページサイズに合わせてスケールできません)
                layout.Layout = PdfLayoutType.OnePage;
                //元のPDFのページに基づいてテンプレートを作成する
                PdfTemplate template = page.CreateTemplate();
                //テンプレートを新しいPDFのページに描画する
                template.Draw(newPage, new PointF(0, 0), layout);
            }

            //結果文書を保存する
            newPdf.SaveToFile("ChangePageSizeToA1.pdf");
        }
    }
}
Imports Spire.Pdf
Imports Spire.Pdf.Graphics
Imports System.Drawing

Namespace ChangePageSizeToStandardPaperSize
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            'PdfDocumentインスタンスを初期化する
            Dim originPdf As PdfDocument = New PdfDocument()
            '元のPDFドキュメントをロードする
            originPdf.LoadFromFile("Sample.pdf")

            '新しいPDFドキュメントを作成する
            Dim newPdf As PdfDocument = New PdfDocument()

            '元のPDFのページをループする
            For Each page As PdfPageBase In originPdf.Pages
                'A 1サイズのページを新しいPDFに追加する
                Dim newPage As PdfPageBase = newPdf.Pages.Add(PdfPageSize.A1, New PdfMargins(0))
                'PdfTextLayoutインスタンスを作成する
                Dim layout As PdfTextLayout = New PdfTextLayout()
                'テキストレイアウトを1ページに設定する(設定されていない場合、コンテンツはページサイズに合わせてスケールできません)
                layout.Layout = PdfLayoutType.OnePage
                '元のPDFのページに基づいてテンプレートを作成する
                Dim template As PdfTemplate = page.CreateTemplate()
                'テンプレートを新しいPDFのページに描画する
                template.Draw(newPage, New PointF(0, 0), layout)
            Next

            '結果文書を保存する
            newPdf.SaveToFile("ChangePageSizeToA1.pdf")
        End Sub
    End Class
End Namespace

C#/VB.NET:PDF ページサイズを変更する方法

PDF ページサイズをカスタム用紙サイズに変更する

Spire.PDF for .NET は、測定単位としてポイント(1/72インチ)を使用します。PDF のページサイズをインチやミリメートルなどの他の単位のカスタム用紙サイズに変更する必要がある場合は、PdfUnitConvertor クラスを使用してポイントに変換できます。

以下に詳細な操作手順を示します。

  • PdfDocument インスタンスを初期化し、PdfDocument.LoadFromFile() メソッドを使用して元の PDF ファイルをロードします。
  • 別のPdfDocument インスタンスを初期化して、新しい PDF ファイルを作成します。
  • PdfUnitConvertor インスタンスを初期化し、PdfUnitConvertor.ConvertUnits() メソッドを使用してインチ単位のカスタムサイズをポイントに変換します。
  • SizeF インスタンスをカスタムサイズから初期化します。
  • 元の PDF のページをループします。
  • PdfDocument.Pages.Add() メソッドを使用して、新しい PDF ファイルにカスタムサイズのページを追加します。
  • PdfTextLayout インスタンスを初期化し、PdfTextLayout.Layout プロパティでテキストレイアウトを1ページに設定します。
  • PdfPageBase.CreateTemplate() メソッドを使用して、元の PDF のページからテンプレートを作成します。
  • PdfTemplate.Draw() メソッドを使用して、指定したテキストレイアウトを持つ新しい PDF ファイルのページにテンプレートを描画します。
  • PdfDocument.SaveToFile() メソッドを使用して結果ファイルを保存します。
  • C#
  • VB.NET
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace ChangePageSizeToCustomPaperSize
{
    class Program
    {
        static void Main(string[] args)
        {
            //PdfDocumentインスタンスを初期化する
            PdfDocument originPdf = new PdfDocument();
            //元のPDFドキュメントをロードする
            originPdf.LoadFromFile("Sample.pdf");

            //新しいPDFドキュメントを作成する
            PdfDocument newPdf = new PdfDocument();

            // PdfUnitConvertorインスタンスを初期化する
            PdfUnitConvertor unitCvtr = new PdfUnitConvertor();
            //カスタムサイズ(インチ)をポイントに変換する
            float width = unitCvtr.ConvertUnits(6.5f, PdfGraphicsUnit.Inch, PdfGraphicsUnit.Point);
            float height = unitCvtr.ConvertUnits(8.5f, PdfGraphicsUnit.Inch, PdfGraphicsUnit.Point);
            //カスタムサイズから新しいSizeFインスタンスを作成して、新しいPDFのページサイズとして使用する
            SizeF size = new SizeF(width, height);

            //元のPDFのページをループする
            foreach (PdfPageBase page in originPdf.Pages)
            {
                //新しいPDFにカスタムサイズ(6.5*8.5インチ)のページを追加する
                PdfPageBase newPage = newPdf.Pages.Add(size, new PdfMargins(0));
                //PdfTextLayoutインスタンスを初期化する
                PdfTextLayout layout = new PdfTextLayout();
                //テキストレイアウトを1ページに設定する(設定されていない場合、コンテンツはページサイズに合わせてスケールできません)
                layout.Layout = PdfLayoutType.OnePage;
                //元のPDFのページに基づいてテンプレートを作成する
                PdfTemplate template = page.CreateTemplate();
                //テンプレートを新しいPDFのページに描画する
                template.Draw(newPage, new PointF(0, 0), layout);
            }

            //結果文書を保存する
            newPdf.SaveToFile("ChangePageSizeToCustomSize.pdf");
        }
    }
}
Imports Spire.Pdf
Imports Spire.Pdf.Graphics
Imports System.Drawing

Namespace ChangePageSizeToCustomPaperSize
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            ' PdfDocumentインスタンスを初期化する
            Dim originPdf As PdfDocument = New PdfDocument()
            '元のPDFドキュメントをロードする
            originPdf.LoadFromFile("Sample.pdf")

            '新しいPDFドキュメントを作成する
            Dim newPdf As PdfDocument = New PdfDocument()

            ' PdfUnitConvertorインスタンスを初期化する
            Dim unitCvtr As PdfUnitConvertor = New PdfUnitConvertor()
            'カスタムサイズ(インチ)をポイントに変換する
            Dim width As Single = unitCvtr.ConvertUnits(6.5F, PdfGraphicsUnit.Inch, PdfGraphicsUnit.Point)
            Dim height As Single = unitCvtr.ConvertUnits(8.5F, PdfGraphicsUnit.Inch, PdfGraphicsUnit.Point)
            'カスタムサイズから新しいSizeFインスタンスを作成して、新しいPDFのページサイズとして使用する
            Dim size As SizeF = New SizeF(width, height)

            '元のPDFのページをループする
            For Each page As PdfPageBase In originPdf.Pages
                '新しいPDFにカスタムサイズ(6.5*8.5インチ)のページを追加する
                Dim newPage As PdfPageBase = newPdf.Pages.Add(size, New PdfMargins(0))
                'PdfTextLayoutインスタンスを初期化する
                Dim layout As PdfTextLayout = New PdfTextLayout()
                'テキストレイアウトを1ページに設定する(設定されていない場合、コンテンツはページサイズに合わせてスケールできません)
                layout.Layout = PdfLayoutType.OnePage
                '元のPDFのページに基づいてテンプレートを作成する
                Dim template As PdfTemplate = page.CreateTemplate()
                'テンプレートを新しいPDFのページに描画する
                template.Draw(newPage, New PointF(0, 0), layout)
            Next

            '結果文書を保存する
            newPdf.SaveToFile("ChangePageSizeToCustomSize.pdf")
        End Sub
    End Class
End Namespace

C#/VB.NET:PDF ページサイズを変更する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Published in ページの設定
Tagged under