C# はどのように1つのPDFページを2ページまたは複数のページに分割します


PDFドキュメントを複数のPDFとして分割するほか、PDFページを2つまたは複数のページに分割することもある。この文章をどのようにして、Cを使用して、1つのPDFページを横と縦に2ページまたは複数のページに分割することを紹介します。

本文はPDFコンポーネントを使用する:Spire.PDF for .NET

元PDFページは以下の通り:

横取り分けPDF

using System.Drawing;
using Spire.Pdf;
using Spire.Pdf.Graphics;

namespace SplitPDFPage
{
    class Program
    {
        static void Main(string[] args)
        {
            // PDFドキュメントをロードする
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("Sample.pdf");

            //第1ページを取得
            PdfPageBase page = pdf.Pages[0];

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

            //新規作成したPDFドキュメントのサイド距離を削除
            newPdf.PageSettings.Margins.All = 0;

            //新しいPDF文書を新設するページの幅は、元PDFドキュメントの第1ページのページ幅に等しい。高さは、元PDFドキュメント第1ページのページの高さに等しい
            newPdf.PageSettings.Width = page.Size.Width;
            newPdf.PageSettings.Height = page.Size.Height / 2;

            //新しいページを追加したPDFドキュメントを追加
            PdfPageBase newPage = newPdf.Pages.Add();

            // ページ内容が満了した後に自動的にページを分けます
            PdfTextLayout format = new PdfTextLayout();
            format.Break = PdfLayoutBreakType.FitPage;
            format.Layout = PdfLayoutType.Paginate;

            //オリジナルPDFドキュメントの第1ページの内容を新規PDFのページに描きます
            page.CreateTemplate().Draw(newPage, new PointF(0, 0), format);

            //ファイルを保存する
            newPdf.SaveToFile("HorizontallySplit.pdf");

            //閉鎖する
            newPdf.Close();
            pdf.Close();
        }
    }
}

2ページの横を横に分解する:

縦割りPDF

using System.Drawing;
using Spire.Pdf;
using Spire.Pdf.Graphics;

namespace SplitPDFPage
{
    class Program
    {
        static void Main(string[] args)
        {
            // PDFドキュメントをロードする
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("Sample.pdf");

            //第1ページを取得
            PdfPageBase page = pdf.Pages[0];

            PdfDocument newPdf = new PdfDocument();
            newPdf.PageSettings.Margins.All = 0;

            //新しくPDFドキュメントを作成するページの幅は、元PDFドキュメントの第1ページのページ幅の半分に等しい。高さは、元PDFドキュメント第1ページのページの高さに等しい
            newPdf.PageSettings.Width = page.Size.Width / 2;
            newPdf.PageSettings.Height = page.Size.Height;

            //新しいページを追加したPDFドキュメントを追加
            PdfPageBase newPage = newPdf.Pages.Add();


            PdfTextLayout format = new PdfTextLayout();
            format.Break = PdfLayoutBreakType.FitPage;
            format.Layout = PdfLayoutType.Paginate;

             page.CreateTemplate().Draw(newPage, new PointF(0, 0), format);

            //ファイルを保存する
            newPdf.SaveToFile("VerticallySplit.pdf");

            //閉鎖する
            newPdf.Close();
            pdf.Close();         
        }
    }
}

縦割り2ページの効果: