IRONSOFTWAREHOME

Łączenie plików PDF w jeden plik PDF za pomocą języka Python

Curtis Chau
Curtis Chau
Updated: 29 czerwca 2026

IronPDF for Python oferuje bezpośrednie rozwiązanie do łączenia wielu dokumentów PDF w jeden plik za pomocą metody PdfDocument.Merge(), obsługując zarówno łączenie dwóch plików, jak i operacje wsadowe na rzecz efektywnego łączenia licznych plików PDF.

PDF (Portable Document Format) jest standardem do udostępniania dokumentów, które muszą wyglądać identycznie na różnych platformach i w aplikacjach. Czy konsolidujesz raporty, łączysz zeskanowane dokumenty, czy składaczysz formularze wieloczęściowe, łączenie treści PDF z różnych źródeł jest powtarzającym się wymaganiem w przepływach pracy związanych z biznesem i przetwarzaniem danych.

IronPDF obsługuje tę operację w Pythonie jednym wywołaniem metody. Ten przewodnik obejmuje instalację, podstawowe łączenie dwóch plików oraz operacje grupowe do jednoczesnego łączenia wielu dokumentów.

Szybki start: Łączenie plików PDF w języku Python
#:path=/static-assets/pdf/content-code-examples/how-to/python-merge-pdf/quickstart.py
from ironpdf import *

renderer = ChromePdfRenderer()
pdf_a = renderer.RenderHtmlAsPdf("<p>Document A</p>")
pdf_b = renderer.RenderHtmlAsPdf("<p>Document B</p>")

merged = PdfDocument.Merge([pdf_a, pdf_b])
merged.SaveAs("merged.pdf")
Python

Jak zainstalować IronPDF for Python?

IronPDF jest dostępny jako pakiet Python przez pip. Wymaga Pythona 3.x i działa na Windows i Linux bez dodatkowych zależności systemowych dla standardowych operacji łączenia. Pakiet zawiera silnik renderujący oparty na Chrome, który obsługuje konwersję HTML na PDF wewnętrznie.

Zainstaluj bibliotekę IronPdf używając pip wraz z następującym poleceniem:

pip install ironpdf

Aby uzyskać szczegółowe instrukcje instalacji i pomóc w typowych problemach, takich jak "Module Not Defined" błędy lub problemy z uprawnieniami, odnieś się do oficjalnej dokumentacji.

Jakie deklaracje importowania są wymagane?

W swoim skrypcie Pythona uwzględnij następujące deklaracje importów, aby uzyskać dostęp do funkcji generowania i łączenia PDF IronPDF:

#:path=/static-assets/pdf/content-code-examples/how-to/python-merge-pdf/imports.py
from ironpdf import *

# Set your license key for production use
License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
Python

Dla aplikacji produkcyjnych, skonfiguruj swój klucz licencyjny, aby odblokować pełny zestaw funkcji IronPDF. Dostępny jest bezpłatny okres próbny - rozpocznij darmowy okres próbny, aby rozpocząć bez zakupu.

Jak połączyć dwa pliki PDF w języku Python?

Łączenie plików PDF w Pythonie obejmuje dwa kroki: tworzenie źródłowych dokumentów PDF, a następnie ich łączenie za pomocą PdfDocument.Merge(). Metoda akceptuje listę obiektów PdfDocument i tworzy nowy, połączony dokument w kolejności, w jakiej przedmioty pojawiają się na liście.

Poniżej znajduje się kompletny działający przykład:

#:path=/static-assets/pdf/content-code-examples/how-to/python-merge-pdf/merge-two-pdfs.py
from ironpdf import *

# HTML content for the first PDF
html_a = """<p> [PDF_A] </p>
            <p> [PDF_A] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_A] 2nd Page</p>"""

# HTML content for the second PDF
html_b = """<p> [PDF_B] </p>
            <p> [PDF_B] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_B] 2nd Page</p>"""

# Initialize renderer
renderer = ChromePdfRenderer()

# Convert each HTML string to a PDF document
pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)

# Merge the two documents into one
merged = PdfDocument.Merge([pdfdoc_a, pdfdoc_b])

# Save the merged result to disk
merged.SaveAs("Merged.pdf")
Python

Dlaczego warto używać RenderHtmlAsPdf do generowania plików PDF?

Przykład powyżej używa dwóch ciągów HTML, każdy reprezentujący dwustronicowy dokument. RenderHtmlAsPdf konwertuje każdy string w obiekt PdfDocument za pomocą silnika renderującego IronPDF bazującego na Chrome, co daje dokładne rezultaty z zawartością HTML, CSS i JavaScript. Podejście to jest dobrze dopasowane do generowania raportów lub dokumentów napędzanych danymi z szablonów webowych. Dla bardziej złożonych scenariuszy renderowania zobacz tutorial HTML na PDF.

Porady: Możesz także załadować istniejące pliki PDF z dysku za pomocą PdfDocument.FromFile("path/to/file.pdf") i przekazać je bezpośrednio do metody Merge. Jest to przydatne podczas łączenia wcześniej istniejących raportów lub zewnętrznie generowanych dokumentów.

Jak działa metoda Merge?

PdfDocument.Merge przyjmuje listę obiektów PdfDocument w Pythonie jako jeden argument. Łączy dokumenty w kolejności listy, umieszczając wszystkie strony z pierwszego dokumentu przed wszystkimi stronami z drugiego, i tak dalej. Wynikiem jest nowy PdfDocument, który można dalej modyfikować lub zapisać. Liczba stron, zakładki i osadzona zawartość z każdego dokumentu źródłowego są wszystkie zachowane w wyjściowym wyniku.

Metoda akceptuje dowolną kombinację dokumentów przedstawionych i załadowanych z pliku na tej samej liście. Oznacza to, że można połączyć świeżo wygenerowane wyjście HTML z istniejącymi plikami PDF z dysku w jednym wywołaniu, co jest przydatne, gdy jedna część raportu jest generowana dynamicznie, a inna część to statyczny szablon.

Jak zapisać scalony plik PDF?

Przekaż pożądaną ścieżkę wyjściową do SaveAs, aby zapisać połączony dokument na dysk:

#:path=/static-assets/pdf/content-code-examples/how-to/python-merge-pdf/save-merged.py
# Save the merged document
merged.SaveAs("Merged.pdf")

# Optionally compress images before saving to reduce file size
merged.CompressImages(90)
merged.SaveAs("Merged_Compressed.pdf")
Python

Po zapisaniu można zastosować dodatkowe przetwarzanie końcowe, takie jak kompresja PDF, aby zmniejszyć rozmiar pliku dużych scalonych dokumentów.

Wynik IronPDF przedstawiający scalony 4-stronicowy plik PDF z panelem miniatur potwierdzającym pomyślne scalenie dwóch dokumentów

Wynik scalonego pliku PDF pokazujący strony z obu dokumentów źródłowych

Jak połączyć więcej niż dwa pliki PDF w Pythonie?

Scalanie wsadowe w IronPDF odbywa się według tego samego wzorca co scalanie dwóch dokumentów. Jedyna różnica polega na tym, że więcej obiektów PdfDocument jest dodawanych do listy przed wywołaniem PdfDocument.Merge. Metoda skalująca umożliwia obsługę dziesiątek lub setek dokumentów w jednym działaniu.

To jest to samo API, niezależnie od tego, czy scala się 2 czy 200 dokumentów. Dla scenariuszy o dużej objętości, takich jak agregacja raportów nocnych czy potoki montażu dokumentów, IronPDF wspiera także równoległe generowanie PDF w celu przyspieszenia fazy renderowania przed scaleniem.

Proces obejmuje dwa kroki:

  • Utwórz listę w Pythonie zawierającą obiekty PdfDocument do połączenia
  • Przekaż listę jako argument do PdfDocument.Merge

Jak połączyć wiele plików PDF za pomocą listy?

Kod poniżej łączy cztery dokumenty wyświetlane w HTML w jednym wywołaniu:

#:path=/static-assets/pdf/content-code-examples/how-to/python-merge-pdf/merge-multiple-pdfs.py
from ironpdf import *

# HTML content for each document
html_a = """<p> [PDF_A] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_A] 2nd Page</p>"""

html_b = """<p> [PDF_B] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_B] 2nd Page</p>"""

html_c = """<p> [PDF_C] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_C] 2nd Page</p>"""

html_d = """<p> [PDF_D] Content Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_D] Summary Page</p>"""

renderer = ChromePdfRenderer()

# Render all four documents
pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
pdfdoc_c = renderer.RenderHtmlAsPdf(html_c)
pdfdoc_d = renderer.RenderHtmlAsPdf(html_d)

# Collect into a list and merge
pdfs = [pdfdoc_a, pdfdoc_b, pdfdoc_c, pdfdoc_d]
pdf = PdfDocument.Merge(pdfs)

# Save the combined document
pdf.SaveAs("merged_multiple.pdf")
Python

Lista przekazana do Merge określa kolejność stron w finalnym dokumencie. Przemieszczanie elementów na liście zmienia kolejność wyjściową bez dodatkowego kodu. Jeśli potrzebujesz posortować dokumenty przed łączeniem – na przykład, według daty lub numeru raportu – sortuj listę Pythona najpierw, a następnie przekaż ją do Merge.

Jak połączyć istniejące pliki PDF z dysku?

Podczas łączenia istniejących plików PDF zamiast świeżo renderowanych, załaduj każdy plik za pomocą PdfDocument.FromFile przed łączeniem. To typowy wzorzec przy pracy z plikami produkowanymi przez inne systemy - skanowane dokumenty, eksporty z raportów firm trzecich lub PDF generowane przez różne narzędzia. IronPDF odczytuje plik do pamięci jako obiekt PdfDocument, który można następnie łączyć, modyfikować lub kontrolować przed ostatecznym zapisem.

#:path=/static-assets/pdf/content-code-examples/how-to/python-merge-pdf/merge-existing-pdfs.py
from ironpdf import *

# Load existing PDF files from disk
existing_pdf1 = PdfDocument.FromFile("report1.pdf")
existing_pdf2 = PdfDocument.FromFile("report2.pdf")
existing_pdf3 = PdfDocument.FromFile("report3.pdf")

# Merge all loaded documents
merged_existing = PdfDocument.Merge([existing_pdf1, existing_pdf2, existing_pdf3])

# Save the combined result
merged_existing.SaveAs("merged_reports.pdf")
Python
Zwróć uwagę: IronPDF zachowuje czcionki, obrazy, adnotacje i układy stron z plików źródłowych podczas łączenia. Dokumenty z osadzonymi polami formularzy lub podpisami cyfrowymi można również scalić, chociaż interaktywne pola formularzy w wyjściu mogą wymagać ponownego spłaszczenia w zależności od przypadku użycia.
Wynik IronPDF przedstawiający scalony wielostronicowy plik PDF z panelem nawigacji miniatur wyświetlającym strony z czterech dokumentów źródłowych

Wynik łączenia wielu dokumentów pokazujący strony ze wszystkich czterech źródłowych plików PDF

Jakie są kolejne kroki przy łączeniu plików PDF w Pythonie?

Ten przewodnik zależał od dwóch głównych wzorców łączenia PDF za pomocą IronPDF: renderowanie zawartości HTML na dokumenty PDF i ich łączenie za pomocą PdfDocument.Merge, oraz ładowanie istniejących plików z dysku do wsadowego łączenia. Oba podejścia korzystają z tego samego API i skaluje się od prostych scalania dwóch plików do dużych partii dokumentów.

IronPDF wspiera dodatkowe operacje po łączeniu, takie jak dodawanie nagłówków i stopek, stosowanie znaków wodnych dla marki, wydobywanie tekstu z połączonego dokumentu i wypełnianie formularzy PDF programowo.

Biblioteka obsługuje Python 3.x na Windows i Linux. Aby dowiedzieć się więcej o operacjach PDF w Pythonie, zapoznaj się z dzieleniem PDF, konwersją PDF na obrazy i drukowaniem PDF. Aby uzyskać pełną listę przykładów kodu Pythona, odwiedź stronę z przykładami IronPDF dla Pythona.

Rozpocznij darmowy okres próbny, aby przetestować łączenie plików PDF w swoim środowisku lub zobacz opcje licencjonowania do wdrożeń produkcyjnych.

Gotowy, aby sprawdzić, co jeszcze możesz zrobić? Sprawdź stronę tutoriali Python dla IronPDF tutaj: tutoriale IronPDF dla Pythona

Pobierz oprogramowanie.

Często Zadawane Pytania

Jak połączyć wiele plików PDF w jeden za pomocą języka Python?

Zainstaluj IronPDF za pomocą pip install ironpdf, następnie wywołaj PdfDocument.Merge() z listą Pythona obiektów PdfDocument. Metoda zwraca nowy scalony dokument, który zapisujesz za SaveAs.

Czy mogę scalać istniejące pliki PDF z dysku zamiast renderowanych?

Tak. Użyj PdfDocument.FromFile('ścieżka/do/pliku.pdf'), aby załadować każdy istniejący PDF, a następnie przekaż załadowane obiekty do PdfDocument.Merge(). Możesz mieszać dokumenty załadowane z plików i świeżo renderowane w tej samej liście.

Czy PdfDocument.Merge zachowuje formatowanie i czcionki dokumentu?

Tak. IronPDF zachowuje czcionki, obrazy, adnotacje i układy stron z wszystkich dokumentów źródłowych podczas scalania. Pierwotny wygląd każdego dokumentu źródłowego jest zachowany w końcowym scalonym PDF-ie.

Jak kontrolować kolejność stron w scalonym PDF-ie?

Kolejność stron w wyniku odpowiada kolejności obiektów PdfDocument na liście Pythona przekazanej do Merge. Zmieniając elementy listy przed wywołaniem Merge, kontrolujesz sekwencję.

Czy mogę skompresować scalony PDF, aby zmniejszyć rozmiar pliku?

Tak. Po scaleniu, wywołaj CompressImages(quality) na scalonym PdfDocument przed wywołaniem SaveAs. Wartość jakości 90 zapewnia dobrą równowagę między kompresją a wizualną wiernością.

Czy IronPDF dla Pythona działa na różnych platformach?

Tak. IronPDF dla Pythona obsługuje Python 3.x na Windows i Linux. To samo API PdfDocument.Merge() działa na obu platformach bez zmian konfiguracyjnych.

Czy mogę dodać metadane do scalonego dokumentu PDF?

Tak. Po scaleniu, ustaw właściwości metadanych jak pdf.MetaData.Author i pdf.MetaData.Title na scalonym PdfDocument przed zapisaniem.

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

Gotowy, aby rozpocząć?

Wersja:2026.6właśnie wydany

Odbierz swój BEZPŁATNY

30-dniowy klucz próbny natychmiast.

bullet_checkedNie wymaga karty kredytowej ani tworzenia konta
test_punktorówTestuj w produkcji
bez znaków wodnych
kalendarz_punktorów30 dni w pełni
funkcjonalny produkt
wsparcie_punktorów24/5 wsparcie techniczne
w trakcie okresu próbnego
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Pobierz moduł Python do PDF
Zainstaluj za pomocą pip

Wersja: 2026.6

  1. Download and install Python 3.7+.
  2. Install pip from pypi.org if it isn't installed already.
  3. Wykonaj powyższe polecenie w terminalu.
Moduł Python PDF
Pobierz Moduł

Wersja: 2026.6

Pobierz teraz

Ręcznie zainstaluj w swoim projekcie

  1. Pobierz pakiet
  2. Uruchom to polecenie z terminala
    pip install ironpdf-2026.6-py37-none-win_amd64.whi

Licencje od 749 USD

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