IRONSOFTWAREHOME
NARZĘDZIA PDF

Jak połączyć pliki PDF bez Adobe

Curtis Chau
Curtis Chau
Updated: 19 lipca 2026

Pliki PDF (Portable Document Format) są powszechnie używane do udostępniania i prezentowania dokumentów, a czasami może zaistnieć potrzeba podzielenia pliku PDF na wiele plików. Niezależnie od tego, czy chcesz wyodrębnić konkretne strony, podzielić duży dokument na mniejsze sekcje, czy też utworzyć osobne pliki dla każdego rozdziału, dzielenie plików PDF może być przydatne w różnych sytuacjach.

W tym artykułe dowiemy się, jak dzielić pliki PDF za pomocą języka C#. C# to wszechstronny i potężny język, a dostępnych jest kilka bibliotek, które sprawiają, że manipulowanie plikami PDF jest stosunkowo proste. Przyjrzymy się dwóm poniższym bibliotekom służącym do dzielenia plików PDF w języku C#.

  1. iText
  2. IronPDF

Jak rozdzielić PDF w C# za pomocą iText

  1. Najpierw zainstaluj bibliotekę iText.
  2. Utwórz obiekt PdfReader na podstawie pliku PDF.
  3. Użyj obiektu PdfDocument do pracy z zawartością pliku PDF.
  4. Oblicz liczbę stron dla każdego podzielonego pliku.
  5. Ustaw początkowe wartości zakresu stron.
  6. Użyj pętli, aby przetworzyć każdy podzielony plik.
  7. Utwórz nowy obiekt PdfDocument dla bieżącego pliku podzielonego.
  8. Skopiuj strony z oryginalnego dokumentu do nowego.
  9. Zaktualizuj wartości zakresu stron dla następnej iteracji.
  10. Zapisz gotowy plik PDF.
  11. Powtarzaj tę czynność, aż wszystkie pliki zostaną utworzone.
  12. Kontynuuj proces dla określonej liczby podzielonych plików.

IronPDF

Porównanie rozdzielania PDF w C# między iText a IronPDF: Rysunek 1 - Strona internetowa IronPDF

IronPDF to potężna biblioteka C# przeznaczona do pracy z plikami PDF. Oferuje funkcje tworzenia, modyfikowania i wyodrębniania treści z dokumentów PDF. Deweloperzy mogą generować PDF od podstaw, edytować istniejące PDF i łączyć lub rozdzielać je. Ponadto IronPDF doskonale radzi sobie z konwersją treści HTML do formatu PDF, co sprawia, że jest przydatny do generowania raportów lub dokumentacji. Dzięki obsłudze podpisów cyfrowych, funkcji bezpieczeństwa i wysokiej jakości wyników, IronPDF upraszcza zadania związane z plikami PDF w aplikacjach .NET.

iText

Porównanie rozdzielania PDF w C# między iText a IronPDF: Rysunek 2 - Strona internetowa iText

iText (iText) jest powszechnie używaną biblioteką do pracy z plikami PDF w ramach .NET. Zapewnia zaawansowane funkcje do programowego tworzenia, modyfikowania i wyodrębniania treści z dokumentów PDF. Deweloperzy mogą używać iText do dodawania tekstu, obrazów, tabel i innych elementów graficznych do PDF. Ponadto obsługuje tworzenie dokumentów, podpisy cyfrowe oraz zgodność ze standardami archiwizacji i dostępności. Początkowo biblioteka Java, iText została przeniesiona do .NET i ma aktywną społeczność deweloperów i użytkowników.

Instalacja biblioteki IronPDF

Aby zainstalować pakiet IronPDF NuGet za pomocą konsoli menedżera pakietów w Visual Studio, wykonaj następujące czynności:

  1. W programie Visual Studio przejdź do menu Narzędzia -> Menedżer pakietów NuGet -> Konsola menedżera pakietów.

  2. Użyj następującego polecenia, aby zainstalować pakiet IronPDF NuGet:

    PM > Install-Package IronPdf

Spowoduje to pobranie i zainstalowanie pakietu IronPDF wraz z jego zależnościami w projekcie. Po zakończeniu instalacji możesz zacząć używać IronPDF w swoim projekcie C# do zadań związanych z plikami PDF.

Alternatywnie można zainstalować IronPDF za pomocą menedżera pakietów NuGet w Visual Studio lub dodać pakiet bezpośrednio do pliku projektu. Inną opcją jest pobranie pakietu z oficjalnej strony internetowej i ręczne dodanie go do projektu. Każda z tych metod zapewnia prosty sposób na zintegrowanie IronPDF z projektem C# w celu uzyskania funkcjonalności związanych z plikami PDF.

Instalacja biblioteki iText

Aby zainstalować iText za pomocą Package Manager Console w Visual Studio, możesz postępować zgodnie z tymi krokami:

  1. W programie Visual Studio przejdź do menu Narzędzia -> Menedżer pakietów NuGet -> Konsola menedżera pakietów.

  2. Użyj następującego polecenia, aby zainstalować pakiet NuGet iText:

    Install-Package itext7
    SHELL

To pobierze i zainstaluje pakiet iText wraz z jego zależnościami do twojego projektu. Po zakończeniu instalacji możesz zacząć używać iText w swoim projekcie C# do pracy z PDF.

Rozdziel PDF Dokumenty w C# za pomocą IronPDF

Za pomocą IronPDF możemy podzielić plik PDF na wiele plików PDF. Zapewnia to prosty sposób na osiągnięcie tego celu. Poniższy kod pobierze źródłowy plik PDF jako dane wejściowe i podzieli go na wiele plików PDF.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        string file = "input.pdf";
        // The folder to save the split PDFs
        string outputFolder = "output_split";
        int numberOfSplitFiles = 3; // Specify how many parts you want to split the PDF into
        // Call the SplitPdf method to split the PDF
        SplitPdfUsing IronPDF(file, outputFolder, numberOfSplitFiles);
    }

    static void SplitPdfUsing IronPDF(string inputPdfPath, string outputFolder, int numberOfSplitFiles)
    {
        // Load the input PDF
        PdfDocument sourceFile = PdfDocument.FromFile(inputPdfPath);
        
        // Initialize page range values
        int firstPage = 1;
        int lastPage = 2;
        int totalPageInOneFile = sourceFile.PageCount / numberOfSplitFiles;

        for (int i = 1; i <= numberOfSplitFiles; i++)
        {
            // Copy multiple pages into a new document
            PdfDocument newSplitPDF = sourceFile.CopyPages(firstPage, lastPage);

            // Generate the output file path
            string name = $@"{outputFolder}\SplitPDF_IronPDF_{i}.pdf";
            
            // Save the new split PDF
            newSplitPDF.SaveAs(name);

            // Update page range values for the next iteration
            firstPage = lastPage + 1;
            lastPage += totalPageInOneFile;
        }
    }
}
C#

Wyjaśnienie kodu

Celem tego kodu jest podzielenie danego pliku PDF na wiele mniejszych plików PDF przy użyciu biblioteki IronPDF. Metoda SplitPdfUsing IronPDF jest zdefiniowana, aby osiągnąć tę funkcjonalność.

Parametry metody

  1. inputPdfPath: Ciąg znaków reprezentujący ścieżkę do pliku PDF wejściowego (np. "input.pdf").
  2. outputFolder: Ciąg znaków reprezentujący folder wyjściowy, w którym zostaną zapisane pliki PDF po rozdzieleniu (np. "output_split").
  3. numberOfSplitFiles: Liczba wskazująca, na ile mniejszych plików PDF zostanie rozdzielony oryginalny PDF.

Proces podziału

Wewnątrz metody SplitPdfUsing IronPDF:

  1. Tworzony jest obiekt PdfDocument o nazwie sourceFile poprzez załadowanie PDF z określonej ścieżki inputPdfPath.
  2. Inicjalizowane są dwie zmienne całkowite, firstPage i lastPage. Oto zakres stron do podziału.
  3. totalPageInOneFile jest obliczana poprzez podzielenie całkowitej liczby stron w źródłowym PDF na określoną numberOfSplitFiles.
  4. Pętla iteruje od 1 do numberOfSplitFiles:
  5. Tworzony jest nowy obiekt PdfDocument o nazwie newSplitPDF.
  6. Strony od firstPage do lastPage (włącznie) są kopiowane od sourceFile do newSplitPDF.
  7. Powstały mniejszy plik PDF jest zapisywany pod nazwą typu "SplitPDF_IronPDF_1.pdf" (dla pierwszego podziału) w określonym folderze wyjściowym.
  8. Wartości firstPage i lastPage są aktualizowane dla następnej iteracji.

Uwaga

Należy zastąpić "input.pdf" rzeczywistą ścieżką do pliku PDF, który ma służyć jako dane wejściowe. Należy upewnić się, że biblioteka IronPDF jest prawidłowo zainstalowana i odwołuje się do niej projekt.

Pliki wyjściowe są tworzone w następujących formatach:

Porównanie rozdzielania PDF w C# między iText a IronPDF: Rysunek 3 - Utworzone pliki wyjściowe

Rozdziel PDF w C# za pomocą iText

Teraz użyjemy iText, aby rozdzielić nasz dokument PDF na wiele plików PDF. Poniższy kod pobierze plik źródłowy jako dane wejściowe i podzieli ten dokument PDF na wiele mniejszych plików.

using System;
using iText.Kernel.Pdf;

class Program
{
    static void Main(string[] args)
    {
        string inputPath = "input.pdf";
        // Output PDF files path (prefix for the generated files)
        string outputPath = "output_split";
        int numberOfSplitFiles = 3; // Specify how many parts you want to split the PDF into
        // Call the SplitPdf method to split the PDF
        SplitPdfUsingiTextSharp(inputPath, outputPath, numberOfSplitFiles);
    }

    static void SplitPdfUsingiTextSharp(string inputPdfPath, string outputFolder, int numberOfSplitFiles)
    {
        using (PdfReader reader = new PdfReader(inputPdfPath))
        {
            using (PdfDocument doc = new PdfDocument(reader))
            {
                // Calculate the number of pages for each split file
                int totalPageInOneFile = doc.GetNumberOfPages() / numberOfSplitFiles;
                int firstPage = 1;
                int lastPage = totalPageInOneFile;

                for (int i = 1; i <= numberOfSplitFiles; i++)
                {
                    // Generate the output file path
                    string filename = $@"{outputFolder}\SplitPDF_iTextSharp_{i}.pdf";

                    // Create a new document and attach a writer for the specified output file
                    using (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(filename)))
                    {
                        // Copy pages from the original document to the new document
                        doc.CopyPagesTo(firstPage, lastPage, pdfDocument);
                    }

                    // Update page range values for the next iteration
                    firstPage = lastPage + 1;
                    lastPage += totalPageInOneFile;
                }
            }
        }
    }
}

Wyjaśnienie kodu

Ten kod pokazuje, jak rozdzielić duży plik PDF na mniejsze kawałki za pomocą iText. Każdy mniejszy dokument PDF będzie zawierał część oryginalnego dokumentu.

Rozdzielanie PDF za pomocą iText

  1. Główna funkcjonalność jest zawarta w metodzie SplitPdfUsingiTextSharp.
  2. Powyższa metoda przyjmuje trzy parametry: inputPdfPath, outputFolder i numberOfSplitFiles.

Korzystanie z PdfReader i PdfDocument

Wewnątrz metody SplitPdfUsingiTextSharp:

  1. Obiekt PdfReader o nazwie reader jest tworzony przez załadowanie PDF ze wskazanej inputPdfPath.
  2. Inicjalizowany jest obiekt PdfDocument o nazwie doc za pomocą reader.
  3. Całkowita liczba stron w źródłowym PDF jest dzielona przez numberOfSplitFiles, aby określić, ile stron powinien zawierać każdy mniejszy PDF.

Proces podziału

Pętla iteruje od 1 do numberOfSplitFiles:

  1. Tworzony jest nowy mniejszy plik PDF z nazwą taką jak "SplitPDF_iText_1.pdf" (dla pierwszego rozdzielenia) w określonym folderze wyjściowym.
  2. Wewnątrz tego nowego dokumentu PDF (pdfDocument), strony są kopiowane z oryginalnego doc:
  3. firstPage do lastPage (włącznie) są kopiowane.
  4. Zapisano plik PDF o mniejszym rozmiarze.
  5. Wartości firstPage i lastPage są aktualizowane dla następnej iteracji.

Uwaga

Upewnij się, że biblioteka iText jest prawidłowo zainstalowana i odwołana w twoim projekcie. Zastąp "input.pdf" rzeczywistą ścieżką do pliku PDF, który chcesz przetworzyć.

Porównanie rozdzielania PDF w C# między iText a IronPDF: Rysunek 4 - Utworzone pliki wyjściowe

Porównanie

Aby porównać dwie metody rozdzielania za pomocą iText i IronPDF, oceńmy je na podstawie kilku czynników:

  1. Łatwość użytkowania:
    • iText: Metoda iText polega na utworzeniu PdfReader, PdfDocument i PdfWriter. Oblicza zakres stron i kopiuje je do nowego dokumentu. To podejście wymaga zrozumienia API iText.
    • IronPDF: Metoda IronPDF polega na utworzeniu obiektu PdfDocument na podstawie pliku źródłowego, skopiowaniu stron i zapisaniu ich w nowym pliku. Posiada bardziej przejrzysty interfejs API.
  2. Czytelność kodu:
    • iText: Kod obejmuje więcej kroków, co sprawia, że jest nieco dłuższy i potencjalnie bardziej skomplikowany do przeczytania.
    • IronPDF: Kod jest zwięzły i bardziej czytelny dzięki mniejszej liczbie kroków i wywołań metod.
  3. Wydajność:
    • iText: Wydajność może być narażona na spadek z powodu powtarzającego się tworzenia i usuwania instancji PdfDocument.
    • IronPDF: Metoda ta wymaga mniej kroków i zapewnia lepszą wydajność dzięki wydajnemu kopiowaniu stron.
  4. Wykorzystanie pamięci:
    • iText: Tworzenie wielu instancji PdfDocument zwiększy zużycie pamięci.
    • IronPDF: Metoda ta jest bardziej wydajna pod względem pamięci dzięki uproszczonemu podejściu.

Wnioski

Podsumowując, zarówno iText, jak i IronPDF oferują solidne rozwiązania do rozdzielania plików PDF w C#, każde z własnym zestawem zalet. IronPDF wyróżnia się prostotą, czytelnością i potencjalnie lepszą wydajnością dzięki bardziej bezpośredniemu podejściu.

Programiści poszukujący równowagi między wszechstronnością a łatwością użytkowania mogą uznać IronPDF za atrakcyjny wybór. Ponadto IronPDF oferuje bezpłatną wersję próbną. Ostatecznie wybór między iText a IronPDF zależy od indywidualnych wymagań projektu i preferowanego stylu rozwoju.

Zwróć uwagę: iText jest zarejestrowanym znakiem towarowym jego właściciela. Ta strona nie jest powiązana, wspierana ani sponsorowana przez iText. Wszystkie nazwy produktów, logo i marki są własnością ich odpowiednich właścicieli. Porównania mają charakter wyłącznie informacyjny i odzwierciedlają informacje dostępne publicznie w momencie pisania.
Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta