フッターコンテンツにスキップ
IRONPDFの使用

IronPDFでPDF C#のページを再配置する方法

How to Rearrange Pages in PDF C# With IronPDF:画像1 - C#でPDFのページを並べ替える

PDF C# でプログラム的にページを並べ替えることで、レポートを整理したり、コンテンツを統合したり、古いセクションを削除したりする際の手作業を何時間も節約できます。 この記事では、.NETライブラリを使ってPDFのページを並べ替えたり、ページを新しい場所に移動したり、複数のページをコピーしたり、不要なコンテンツを削除したりする方法を紹介します。 今すぐIronPDFライブラリをインストールし、フォローしてください。

IronPdf.PdfDocument.FromFile("input.pdf")
    .CopyPages(new[] { 2, 0, 1, 3 })
    .SaveAs("reordered.pdf");
IronPdf.PdfDocument.FromFile("input.pdf")
    .CopyPages(new[] { 2, 0, 1, 3 })
    .SaveAs("reordered.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

NuGet 購入の準備ができていませんか?

PM >  Install-Package IronPdf

IronPDFNuGet でチェックしてください。1000万回以上のダウンロードで、C#によるPDF開発を変革しています。 DLL または Windowsインストーラー をダウンロードすることもできます。

C#でのページの並べ替えはどのように機能しますか?

C#を使用してPDFのページを再配置するプロセスでは、ソースドキュメントを読み込み、ページインデックス配列を通して希望のページ順序を指定し、出力ファイルを保存します。IronPDFはCopyPagesメソッドを提供し、PDFファイルから新しいPDFドキュメントクラスオブジェクトにページを抽出し、並べ替えることができます。

次のコードは、ターゲットシーケンスを定義する新しいint配列を作成することによって、ページを並べ替える方法を示しています。 配列の各値は、原文のページインデックスを表し、ページはゼロベースのインデックスを使用します(ページ0は最初のページです)。

using IronPdf;
// Load the source document from file path
var pdf = PdfDocument.FromFile("quarterly-report.pdf");
// Define new page order: move page 3 to front, then pages 1, 2, 0
int[] pageOrder = new int[] { 3, 1, 2, 0 };
// Copy each requested page into its own PdfDocument, collect them
var pageDocs = new List<PdfDocument>();
foreach (var idx in pageOrder)
{
    // CopyPage returns a PdfDocument that contains only that page
    var single = pdf.CopyPage(idx);
    pageDocs.Add(single);
}
// Merge the single-page docs into one ordered document
using var merged = PdfDocument.Merge(pageDocs.ToArray());
// Save the new ordered PDF
merged.SaveAs("report-reorganized.pdf");
using IronPdf;
// Load the source document from file path
var pdf = PdfDocument.FromFile("quarterly-report.pdf");
// Define new page order: move page 3 to front, then pages 1, 2, 0
int[] pageOrder = new int[] { 3, 1, 2, 0 };
// Copy each requested page into its own PdfDocument, collect them
var pageDocs = new List<PdfDocument>();
foreach (var idx in pageOrder)
{
    // CopyPage returns a PdfDocument that contains only that page
    var single = pdf.CopyPage(idx);
    pageDocs.Add(single);
}
// Merge the single-page docs into one ordered document
using var merged = PdfDocument.Merge(pageDocs.ToArray());
// Save the new ordered PDF
merged.SaveAs("report-reorganized.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDFドキュメントの出力

How to Rearrange Pages in PDF C# With IronPDF:画像2 - PDF C#でページを並べ替える方法の最初の例の出力

CopyPages メソッドは、希望する配置に一致する int pageIndex 値を含む IEnumerable<int> を受け入れます。 このアプローチでは、PDFのページを並べ替えたり、特定のページを複製したり、複数のページを別の文書に抽出したりすることができます。 このメソッドは新しい PdfDocument<//code> クラスオブジェクトを返し、元のソースドキュメントは変更されません。

Java環境で働く開発者のために、IronPDFはJava版もあり、同様のページ操作機能とAPI構造を持っています。

複数のページを一度に並べ替えるにはどうすればよいですか?

複数のページを含むPDF文書を扱う場合、1回の操作で文書構造全体を並べ替えることができます。 次の コ ー ド は、 PDF 内のすべてのページ を反転 さ せ る 方法、 ま たは任意のカ ス タ ムページシーケ ン ス を作成す る 方法を示 し てい ます。

using IronPdf;
// Load PDF document with several pages
var doc = PdfDocument.FromFile(@"C:\Users\kyess\Desktop\Desktop\Code-Projects\Assets\quarterly-report.pdf");
int count = doc.PageCount;
// Build reversed single-page PDFs
var pages = new List<PdfDocument>();
for (int i = count - 1; i >= 0; i--)
{
    // Copy a single page as a standalone PDF
    pages.Add(doc.CopyPage(i));
}
// Merge all the reversed single-page PDFs
using var reversed = PdfDocument.Merge(pages.ToArray());
// Save to a NEW filename (avoids viewer caching)
reversed.SaveAs("manual-reversed-final_1.pdf");
using IronPdf;
// Load PDF document with several pages
var doc = PdfDocument.FromFile(@"C:\Users\kyess\Desktop\Desktop\Code-Projects\Assets\quarterly-report.pdf");
int count = doc.PageCount;
// Build reversed single-page PDFs
var pages = new List<PdfDocument>();
for (int i = count - 1; i >= 0; i--)
{
    // Copy a single page as a standalone PDF
    pages.Add(doc.CopyPage(i));
}
// Merge all the reversed single-page PDFs
using var reversed = PdfDocument.Merge(pages.ToArray());
// Save to a NEW filename (avoids viewer caching)
reversed.SaveAs("manual-reversed-final_1.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDFページの出力を反転します。

How to Rearrange Pages in PDF C# With IronPDF:画像3 - 結論が最初に来るようにページを反転させたPDF

このコードは、PDFファイルをロードし、ページ番号カウントを決定し、ページの順序を逆にするために配列を構築します。 ループ内のvarページ参照が動的に新しい順序を構築するので、このアプローチはPDF内のページ数がいくつあっても拡張可能です。

位置を指定して、2つのページだけを入れ替えることもできます。 例えば、ページ1を維持したままページ0と2を入れ替えるには、new int[] { 2, 1, 0 } をインデックス配列として使用します。 その他の例については、IronPDFページ操作ドキュメントをご覧ください。

ページを新しい場所に移動するには?

1つのページを別の場所に移動するには、コピーと挿入の操作を組み合わせる必要があります。 InsertPdfメソッドは、ドキュメント構造内の任意のインデックスにページを正確に配置することができます。

using IronPdf;
// Load the input PDF file
var pdf = PdfDocument.FromFile("presentation.pdf");
int sourceIndex = 1;   // page you want to move
int targetIndex = 3;   // new location
// Make sure indexes stay valid after removal
bool movingForward = targetIndex > sourceIndex;
// 1. Copy the page you want to move (creates a 1-page PdfDocument)
var pageDoc = pdf.CopyPage(sourceIndex);
// 2. Remove the original page
pdf.RemovePage(sourceIndex);
// 3. If moving forward in the document, target index shifts by -1
if (movingForward)
    targetIndex--;
// 4. Insert the copied page
pdf.InsertPdf(pageDoc, targetIndex);
// Save final result
pdf.SaveAs("presentation-reordered.pdf");
using IronPdf;
// Load the input PDF file
var pdf = PdfDocument.FromFile("presentation.pdf");
int sourceIndex = 1;   // page you want to move
int targetIndex = 3;   // new location
// Make sure indexes stay valid after removal
bool movingForward = targetIndex > sourceIndex;
// 1. Copy the page you want to move (creates a 1-page PdfDocument)
var pageDoc = pdf.CopyPage(sourceIndex);
// 2. Remove the original page
pdf.RemovePage(sourceIndex);
// 3. If moving forward in the document, target index shifts by -1
if (movingForward)
    targetIndex--;
// 4. Insert the copied page
pdf.InsertPdf(pageDoc, targetIndex);
// Save final result
pdf.SaveAs("presentation-reordered.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

元のPDFと出力の比較

How to Rearrange Pages in PDF C# With IronPDF:画像4 - 移動したページを持つ入力PDFと出力PDFの比較

このプロセスは、CopyPageを使ってページを抽出し、RemovePageを使ってソース文書から削除し、新しいファイル名で新しいPDFを保存する前に、ターゲット位置に挿入します。 ページインデックス値は、削除後にシフトするため、それに応じて操作を計画してください。 この方法は、文書全体を再構築することなく、特定のページを移動する必要がある場合に有効です。

どのようにMemoryStreamを使用してページを削除し、並べ替えるのですか?

中間ファイルをディスクに書き込まずにPDF処理を自動化するアプリケーションでは、バイト配列とメモリストリームを使用することで、より良いパフォーマンスが得られます。 以下のコードは、PDFページを完全にメモリ内でロード、操作、保存する方法を示しています。

using IronPdf;
using System.IO;
// Load PDF from byte array (simulating input from database or API)
byte[] pdfBytes = File.ReadAllBytes("report-with-blank.pdf");
var pdf = new PdfDocument(pdfBytes);
// Delete blank page at index 2
pdf.RemovePage(2);
// Reorder remaining pages: create new sequence
var reorderedPdf = pdf.CopyPages(new int[] { 1, 0, 2, 3 });
// Export to MemoryStream for further processing
MemoryStream outputStream = reorderedPdf.Stream;
// Or save directly with new MemoryStream pattern
File.WriteAllBytes("cleaned-report.pdf", reorderedPdf.BinaryData);
using IronPdf;
using System.IO;
// Load PDF from byte array (simulating input from database or API)
byte[] pdfBytes = File.ReadAllBytes("report-with-blank.pdf");
var pdf = new PdfDocument(pdfBytes);
// Delete blank page at index 2
pdf.RemovePage(2);
// Reorder remaining pages: create new sequence
var reorderedPdf = pdf.CopyPages(new int[] { 1, 0, 2, 3 });
// Export to MemoryStream for further processing
MemoryStream outputStream = reorderedPdf.Stream;
// Or save directly with new MemoryStream pattern
File.WriteAllBytes("cleaned-report.pdf", reorderedPdf.BinaryData);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PdfDocumentクラスオブジェクトはバイト配列入力を受け入れ、StreamプロパティはPDFをMemoryStreamとして返します。 このアプローチは、Webアプリケーション、クラウド環境のデプロイメント、ファイルシステムにアクセスせずにPDFドキュメントを操作する必要があるシナリオに適しています。 このライブラリは、大きなドキュメントを処理する場合でも、メモリ管理を効率的に処理します。

PdfDocumentのAPIリファレンスを参照し、回転、抽出、結合などのページ操作の追加メソッドを調べてください。

結論

この記事ではIronPDFを使ってC#でページを並べ替えるために必要なテクニック、インデックス配列によるページの並べ替え、新しい場所へのページの移動、不要なコンテンツの削除、メモリー内のドキュメントの処理について説明した。 ライブラリの直感的なAPIにより、最小限のコードで複雑なPDFページ操作を自動化できます。

IronPDFをダウンロードして、無料トライアルをお試しいただき、.NET環境でこれらの機能をテストしてください。 高度な PDF 操作を必要とする本番環境では、プロジェクトの要件に合ったライセンスオプションを検討してください。 もっと知りたいですか? ブログ記事やIronPDFのパワフルな機能の使い方を説明する豊富なドキュメントを含むヘルプリソースをご覧ください。

よくある質問

C#でIronPDFを使ってPDFのページを並べ替えるには?

IronPDFを使ってC#でPDFのページを並べ替えることができます。ステップバイステップのコード例に従って、プログラムでPDFドキュメントのページを並べ替えたり、コピーしたり、削除したりすることができます。

PDFページの操作にIronPDFを使う利点は何ですか?

IronPDFはPDFページを操作するための堅牢で柔軟なAPIを提供し、開発者が効率的にページの並び替え、コピー、削除を簡単に行えるようにすることで、生産性を高め、開発時間を短縮します。

IronPDFを使ってPDFの特定のページを削除することはできますか?

はい、IronPDFはC#コードを使ってPDFドキュメントから特定のページをプログラムで削除することができます。

IronPDFを使ってPDFから別のPDFにページをコピーできますか?

IronPDFはPDFから別のPDFへのページのコピーをサポートしており、C#アプリケーション内で必要に応じてドキュメントをマージしたり、セクションを複製することができます。

C# での PDF ページ操作に役立つ コ ー ド 例はあ り ますか?

このウェブページでは、IronPDFを使ったPDFページの並べ替え、コピー、削除の方法を示すステップバイステップのコード例を提供し、開発者がこれらの機能を簡単に実装できるようにしています。

IronPdfは複数のページを一度に並べ替えることができますか?

はい、IronPdfは複数のページを一度に並べ替えることができ、各ページを個別に操作することなく、大きなドキュメントを効率的に並べ替える方法を提供します。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。