DioDocs for PDF
ページの整理
PDFビューワ > PDFの編集 > ページの整理

PDFビューワでは、 [ページを整理]ボタンを使用して、PDFドキュメントのページを並び替え、複製、削除、回転することができます。また、別のPDFからページを結合することも、現在のPDFを複数のPDFに分割することもできます。

[ページを整理]ボタンは、以下のツールバーから使用できます。

[ページを整理]ボタンをクリックすると、次のダイアログが表示されます。

[ページの整理]ダイアログの機能は以下のとおりです。

機能 アイコン 説明

ページ範囲を追加

現在のPDFドキュメントから、1ページごと、すべてのページ、奇数ページ、偶数ページ、ページサイズ、空白ページ、独自指定のページなど、操作するページ範囲をダイアログに追加します。

外部PDFを結合

外部PDFドキュメントの1ページまたはページ範囲を現在のPDFドキュメントの最後に追加します。
クリア すべてのページ範囲をダイアログから削除します。
ダウンロード 変更を適用したPDFドキュメントをコンピュータのローカルファイルシステムにダウンロードします。
完了 変更を適用してダイアログを閉じます。
メモ:現在のPDFドキュメントに変更を適用した後、以前の状態に戻すことはできません。
PDFビューワは、新しいページ構造に変更されたPDFドキュメントを読み込みます。
キャンセル 変更をキャンセルして、ダイアログを閉じます。
範囲を分割 ページ範囲を1ページごとに分割して表示します。
ページを削除 特定のページまたはページ範囲をダイアログから削除します。
ページを複製 ページまたはページ範囲を複製します。
ページを回転 ページまたはページ範囲を90度回転します。
情報 ページまたはページ範囲に関する情報を表示します。
入力フィールド ページ範囲の開始ページ番号と終了ページ番号を指定します。
「Enter」キーを押すと、新しい値が反映されます。
「Escape」キーを押すと、以前の値に戻ります。

メモ:[ページの整理]ダイアログでは、ページプレビューをクリックして、ページまたはページ範囲をドラッグ&ドロップすることで、1ページまたはページ範囲を並び替えることもできます。

次の図は、[ページ範囲を追加]ドロップダウンメニューのオプションの一覧です。

 

オプション 説明 表示する範囲
1ページごと 1ページごとにページ範囲を作成します。各ページを個別に操作することができます。  
すべてのページ すべてのページを含むページ範囲を1つ作成します。すべてのページを1つの単位としてまとめて操作することができます。
奇数ページ すべての奇数ページを含むページ範囲を作成します。  
偶数ページ すべての偶数ページを含むページ範囲を作成します。  
ページサイズ ページサイズ/向きごとにページ範囲を作成します。  
空白ページ 新しい空白ページでページ範囲を作成します。  
独自のページ範囲 入力されたページ番号から独自のページ範囲を作成します。  
メモ:[ページを整理]ボタンのキーは pdf-organizer であり、ツールバーをカスタマイズする際に使用することができます。

PDFページの並び替え

[ページの整理]ダイアログを使用すると、入力フィールドのページ番号またはページ範囲を変更したり、ページまたはページ範囲を任意の場所にドラッグ&ドロップすることで、PDFページを並び替え、再編成することができます。

 

また、コードを使用してPDFページを並び替えることもできます。次のサンプルコードは、その方法を示しています。

コードのコピー
await viewer.save("test_changed_order.pdf", { pages: "3, 2, 1, 0" });

PDFドキュメントの分割

[ページの整理]ダイアログを使用すると、入力フィールドのページ番号またはページ範囲を変更しダウンロードすることにより、PDFドキュメントを別のPDFドキュメントに分割することができます。

 

また、コードを使用して、PDFドキュメントをページ番号やサイズによって分割することもできます。次のサンプルコードは、PDFドキュメントをページ番号によって分割する方法を示しています。

コードのコピー
await viewer.save("part1.pdf", { pages: "0-3" });
await viewer.save("part2.pdf", { pages: "4-8" });
await viewer.save("part3.pdf", { pages: "9-11" });

次のサンプルコードは、PDFドキュメントをサイズによって分割する方法を示しています。

コードのコピー
async function splitPdfBySize(partSizeKb)
{
    const fileSizeBytes = await viewer.fileSize, fileSizeKb = fileSizeBytes / 1024,
          partCount = Math.floor(fileSizeKb / partSizeKb), pageCount = viewer.pageCount;
    if (pageCount > partCount)
    {
        let nextPageIndex = 0;
        for (let i = 0; i < partCount; i++)
        {
            const startIndex = nextPageIndex ? (nextPageIndex + 1) : 0;
            nextPageIndex = i === partCount - 1 ? pageCount - 1 : startIndex + Math.floor(pageCount / partCount);
            await viewer.save(`part -${ i + 1}.pdf`, { pages: `${ startIndex} -${ nextPageIndex}` });
        }
    }   
    else {
          await viewer.save("all-in-one.pdf");
         }
}
// PDF を 300 KB ごとに分割します。
await splitPdfBySize(300);

PDFドキュメントの結合

[ページの整理]ダイアログを使用すると、PDFビューワで開いているPDFドキュメントに外部のPDFドキュメントを結合することができます。その後、ページを並び替え、現在のPDFドキュメントに追加するページを選択することができます。

 

また、コードを使用して PDFドキュメントを結合することもできます。次のサンプルコードは、その方法を示しています。

コードのコピー
// 外部PDFドキュメントの最初のページを現在のPDFドキュメントの最後に結合します。
const fileId = "uniquefileid1";
viewer.storage.setItem(fileId, new Uint8Array(fileReader.result));
await viewer.save("test_part10.pdf", { pages: `0 -${ viewer.pageCount - 1}, [file:${ fileId}]0` });