Rozdělit PDF na více souborů pomocí C#

PDF je jedním z nejčastěji používaných formátů souborů, který je vysoce přenosný. Jako vývojář jste možná čelili scénáři programového rozdělení velkých souborů PDF. V jednom z článků jsme se naučili rozdělit soubory PDF v Java. Dnes tento článek pojednává o různých způsobech, jak rozdělit soubory PDF pomocí C# v aplikacích .NET.

.NET API pro rozdělení souborů PDF

K rozdělení souborů PDF použijeme GroupDocs.Merger for .NET. Je to API, které umožňuje rychlý vývoj pro integraci funkcí s velmi malým počtem řádků kódu. Kromě rozdělení podporuje slučování, záměnu nebo ořezávání dokumentů různých formátů souborů.

Můžete si stáhnout DLL nebo instalační program MSI z části ke stažení nebo nainstalovat API do vaší aplikace .NET prostřednictvím NuGet.

PM> Install-Package GroupDocs.Merger

Rozdělit soubor PDF na vícestránkové soubory pomocí C#

Následující kroky popisují, jak rozdělit soubory PDF na vícestránkové soubory pomocí C#:

  • Definujte formát výstupního souboru (souborů).
  • Definujte intervaly stránek pomocí SplitOptions.
  • Načtěte soubor PDF pomocí třídy Merger.
  • Rozdělte načtené PDF podle definovaného intervalu pomocí metody Split().

Následující ukázka kódu ukazuje, jak rozdělit soubory PDF do vícestránkových souborů.

/*
 * Rozdělte soubory PDF na vícestránkové soubory pomocí C#
 */
// Definujte formát výstupního souboru (souborů).
string filePathOut = "path/splitPDF_{0}.{1}";

// Definujte rozdělovací intervaly a rozdělovací režim
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 }, SplitMode.Interval);

// Načtěte soubor PDF a rozdělte PDF podle možností rozdělení
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
} 

Extrahujte stránky ze souborů PDF podle rozsahu

Následující kroky vedou, jak extrahovat stránky z PDF pomocí C# rozdělením podle daného rozsahu:

  • Definujte formát výstupního souboru (souborů).
  • Zadejte rozsah stránek pomocí SplitOptions.
  • Načtěte soubor PDF pomocí třídy Merger.
  • K rozdělení načteného PDF podle definovaného rozsahu použijte metodu Split().

Následující fragment kódu ukazuje, jak rozdělit PDF a extrahovat stránky poskytnutím rozsahu.

/*
 * Rozdělit soubor PDF podle daného rozsahu na jednostránkové soubory pomocí C#
 */
// Definujte formát výstupního souboru (souborů).
string filePathOut = "path/splitPDF_{0}.{1}";

// Definujte rozsah pro extrakci jako jednostránkové dokumenty
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);

// Načtěte soubor PDF a rozdělte PDF podle možností rozdělení
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
}

Extrahujte sudé/liché stránky ze souborů PDF pomocí C#

Následující kroky vedou, jak extrahovat sudé/liché stránky ze souboru PDF rozdělením v daném rozsahu pouhým použitím filtrů v C#:

  • Definujte formát výstupního souboru (souborů).
  • Zadejte rozsah stránek pomocí SplitOptions.
  • Použijte filtr pro sudé, liché nebo všechny stránky pomocí RangeMode.
  • Načtěte soubor PDF pomocí třídy Merger.
  • Pomocí metody Split() oddělte načtené PDF podle definovaného filtru.

Následující fragment kódu ukazuje, jak extrahovat všechny liché/sudé stránky v definovaném rozsahu souboru PDF.

/*
 * Rozdělit soubor PDF podle daného rozsahu a filtru (sudé/liché stránky) na jednostránkové soubory pomocí C#
 */
// Definujte formát výstupního souboru (souborů).
string filePathOut = "path/splitPDF_{0}.{1}";

// Definujte rozsah a filtr pro extrahování všech stránek ODD v daném rozsahu jako jednostránkové dokumenty
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, RangeMode.OddPages);

// Načtěte soubor PDF a rozdělte PDF podle možností rozdělení
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
}

Rozdělte soubor PDF na více jednostránkových souborů

Následující kroky popisují, jak můžeme rozdělit PDF a extrahovat stránky jako více jednostránkových souborů v C#:

  • Definujte formát výstupního souboru (souborů).
  • Definujte přesná čísla stránek pomocí SplitOptions.
  • Načtěte soubor PDF pomocí třídy Merger.
  • Rozdělte načtené PDF podle definovaných stránek pomocí metody Split().

Následující ukázka kódu ukazuje, jak rozdělit soubory PDF do více jednostránkových souborů.

/*
 * Rozdělit soubor PDF na jednostránkové soubory pomocí C#
 */
// Definujte formát výstupního souboru (souborů).
string filePathOut = "path/splitPDF_{0}.{1}";

// Definujte stránky, které chcete extrahovat jako jednostránkový dokument
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 });

// Načtěte soubor PDF a rozdělte PDF podle možností rozdělení
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
}

Souhrn změn kódu

Ve všech scénářích se mění způsob, jak definovat SplitOptions. Zde je souhrn změn v každém fragmentu kódu pro každý scénář. V rámci svého kódu můžete použít následující nastavení podle svých požadavků. Zde jsem použil soubor PDF s 10 stránkami.

  • Pro vícestránkové soubory - Interval použití: [1,2], [3,4,5], [6,7], [8,9,10].
new SplitOptions(outputFile,  new int[] { 3, 6, 8 }, SplitMode.Interval)
  • Extrahovat stránky v rozsahu: [3], [4], [5], [6]
new SplitOptions(outputFile, 3, 6);
  • Rozsah s filtrem: [3], [5], [7]
new SplitOptions(outputFile, 3, 8, (Integer)RangeMode.OddPages);
  • Jednotlivé stránky: [3], [4], [9]
new SplitOptions(outputFile, new int[] { 3, 4, 9 });

Získejte bezplatnou licenci API

Můžete získat bezplatnou dočasnou licenci, abyste mohli používat API bez omezení hodnocení.

Závěr

Na závěr jsme diskutovali o způsobech rozdělení souborů PDF pomocí C#. Nejprve rozdělíme soubor PDF na vícestránkové a jednostránkové dokumenty. Také jsme extrahovali stránky ze souborů PDF. Nejprve jsme extrahovali všechny stránky a poté sudé/liché stránky v daném rozsahu. Můžete si zkusit vytvořit svou vlastní aplikaci .NET pro rozdělení PDF pomocí GroupDocs.Merger API.

Chcete-li se dozvědět více o API, navštivte dokumentaci. V případě dotazů nás kontaktujte prostřednictvím fóra.

Viz také