PDF Arranger is a free and open-source graphical application for manipulating PDF documents. It allows users to merge, split, rotate, crop, and rearrange pages of PDF files through an interactive interface. Written in Python using the GTK 3 toolkit, it serves as a frontend for the pikepdf library and is available for Linux, Windows, macOS, and FreeBSD.[2] PDF Arranger is a fork of the abandoned PDF-Shuffler project.[2][3]
| PDF Arranger | |
|---|---|
| Developers | Jérôme Robert, kbengs, community contributors |
| Release | 26 November 2018 |
| Stable release | |
| Written in | Python (PyGObject) |
| Operating system | Linux, Windows, macOS, FreeBSD |
| Type | PDF manipulation tool |
| License | GPL-3.0-or-later |
| Website | github |
| Repository | github |
History
editPDF-Shuffler
editPDF-Shuffler was created by Konstantinos Poulios in 2008 as a simple PyGTK utility for merging, splitting, and rearranging PDF documents.[4] It was hosted on GNU Savannah and SourceForge, and used Python 2, GTK 2, and the PyPDF library as its PDF backend. The last release of PDF-Shuffler, version 0.6.0, was published on 28 April 2012, after which the project became inactive.[5]
Fork and development
editIn 2018, Jérôme Robert forked PDF-Shuffler under the name PDF Arranger, describing it as "a humble attempt to make the project a bit more active".[2] The first release, version 1.0, appeared on 26 November 2018.[6][7] The fork modernised the codebase by porting it to Python 3 and GTK 3. Major Linux distributions subsequently replaced PDF-Shuffler with PDF Arranger in their repositories, including Debian,[8] Fedora,[9] and Arch Linux.[10] In Debian, the bug report for continued maintenance of the pdfshuffler package was closed as fixed in pdfarranger 1.1-1, while Fedora formally replaced the pdfshuffler package with pdfarranger.[8][9]
In January 2020, version 1.4.0 replaced the PyPDF2 backend with pikepdf, which provides Python bindings for the qpdf C++ library.[11][12]
In April 2020, version 1.5.0 introduced a redesigned user interface based on GNOME header bars[13][14] and the application became available on Flathub.[15]
Subsequent releases continued to expand functionality. Version 1.7.0[16] (January 2021) added features such as encrypted PDF support.[17] Version 1.8.0[18] (November 2021) introduced booklet generation.[19] Version 1.11.0[20] (June 2024) added preservation of PDF outlines and hyperlinks — a long-requested feature[21] — and the project published its first official user manual.[22] Version 1.13.0[23] (February 2026) added text search within PDF documents.[24]
Features
editPDF Arranger provides the following capabilities:[2][25][22]
- Merging multiple PDF files into a single document
- Splitting PDF documents by extracting selected pages
- Rearranging pages via drag-and-drop
- Rotating pages in 90-degree increments
- Cropping pages, including automatic white border removal
- Inserting blank pages
- Importing images (including JPEG, PNG, TIFF and other formats) via the img2pdf library[26]
- Editing PDF metadata (title, author, keywords, subject)
- Overlaying or underlaying pages with resizing[27]
- Exporting to PNG, JPEG, or rasterised PDF[28]
- Booklet generation and splitting
- Text search within PDF documents[24]
- Preservation of outlines and hyperlinks[21]
- Support for encrypted PDF files
- Undo/redo functionality
- Customisation of keyboard shortcuts by editing a configuration file
- Over 40 language translations
Technical architecture
editPDF Arranger is a lightweight graphical application in which the Python/GTK user interface serves as a frontend for the pikepdf library.[2] The project's installation instructions list PyGObject, GTK 3, Poppler-GLib components, and libhandy as system dependencies, reflecting its ties to the typical GNOME/GNU/Linux desktop application stack.[2]
Image file import is optional and requires the img2pdf utility, which converts images to PDF pages.[2][22] The application operates at the page level of PDF documents, performing operations such as merging, splitting, overlaying, and exporting to various output formats.[22]
Distribution and availability
editThe project is distributed as source code on GitHub, as a Flatpak package on Flathub,[29] and as packages for Linux and BSD systems; the project page also provides a Windows installer.[2] The official installation instructions describe separate dependency sets and installation commands for Debian-based distributions, Arch Linux, Fedora, and FreeBSD, as well as installation in a Python virtual environment.[2]
Distribution through Flathub increased the application's accessibility across the Linux ecosystem independently of individual distribution repositories.[29] The presence of PDF Arranger in the repositories of major Linux distributions — and its replacement of the older PDF-Shuffler — contributed to its wider adoption.[8][9][10]
Reception
editHow-To Geek included PDF Arranger as one of five recommended open-source alternatives to Adobe Acrobat, describing its capabilities for merging, splitting, and rearranging PDF pages.[30] It's FOSS placed the application on its list of recommended PDF editors for Linux, calling it a simple, open-source tool for reordering, merging, and splitting pages.[31] The same site also covered the release of version 1.7 as a notable update for PDF management on Linux.[32] Ghacks published a standalone review in November 2020, walking through the interface and workflows.[33] Linux Format magazine featured the application in its "Hotpicks" section in April 2021, reviewing version 1.7.0.[34] Neowin has tracked multiple release announcements since 2022.[35]
Linux Uprising covered the application's initial release in 2018[7] and its interface redesign in 2020.[15]
On AlternativeTo, the application has as of April 2026[update] a rating of 4.8 out of 5 based on 27 votes and 28 user reviews.[36] The application's Flathub page has recorded over 700,000 installations.[29] The GitHub repository has accumulated over 5,300 stars and attracted 95 contributors.[2]
See also
editReferences
edit- ↑ "Releases 1.14.0". 23 May 2026. Retrieved 24 May 2026.
- 1 2 3 4 5 6 7 8 9 10 "pdfarranger/pdfarranger: Small python-gtk application, which helps the user to merge or split PDF documents". GitHub. Retrieved 2026-03-01.
- ↑ Prakash, Abhishek. "Split, Merge, Rotate and Reorder PDF Files in Linux with PDFArranger". It's FOSS. Retrieved 2026-03-01.
- ↑ "PDF-Shuffler – Summary". GNU Savannah. Retrieved 2026-03-01.
- ↑ "PDF-Shuffler – Browse Files". SourceForge. Retrieved 2026-03-01.
- ↑ "Release 1.0 · pdfarranger/pdfarranger". GitHub. 2018-11-26. Retrieved 2026-03-01.
- 1 2 "PDFArranger: Merge, Split, Rotate, Crop Or Rearrange PDF Documents (PDF-Shuffler Fork)". Linux Uprising. 2018-12-13. Archived from the original on 2018-12-13. Retrieved 2026-03-01.
- 1 2 3 "Debian Bug #879034 – pdfshuffler: port to gir1.2-poppler-0.18". Debian Bug Tracking System. 2017-10-18. Archived from the original on 2026-03-01. Retrieved 2026-03-01.
- 1 2 3 "PR#1: Replace pdfshuffler – rpms/pdfarranger". Fedora Package Sources. 2019-09-25. Archived from the original on 2023-08-19. Retrieved 2026-03-01.
- 1 2 "What happened to community/pdfshuffler?". Arch Linux Forums. 2019-03-28. Retrieved 2026-03-01.
- ↑ "Remove pypdf2 · Issue #124 · pdfarranger/pdfarranger". GitHub. 2019-11-23. Retrieved 2026-03-01.
- ↑ "Release 1.4.0 · pdfarranger/pdfarranger". GitHub. 2020-01-26. Retrieved 2026-03-01.
- ↑ "New UI look & feel (header bar, symbolic icons) · Issue #87 · pdfarranger/pdfarranger". GitHub. 2019-06-25. Retrieved 2026-03-01.
- ↑ "Release 1.5.0 · pdfarranger/pdfarranger". GitHub. 2020-04-14. Retrieved 2026-03-01.
- 1 2 "PDF Manipulation Tool PDF-Arranger Gets New User Interface, Is Now Available On Flathub". Linux Uprising. 2020-04-16. Archived from the original on 2020-08-09. Retrieved 2026-03-01.
- ↑ "Release 1.7.0 · pdfarranger/pdfarranger". GitHub. 2021-01-24. Retrieved 2026-03-01.
- ↑ "Support import of encrypted PDF file · Issue #352 · pdfarranger/pdfarranger". GitHub. 2020-10-04. Retrieved 2026-03-01.
- ↑ "Release 1.8.0 · pdfarranger/pdfarranger". GitHub. 2021-11-13. Retrieved 2026-03-01.
- ↑ "Create a booklet from multiple pages · Issue #438 · pdfarranger/pdfarranger". GitHub. 2021-01-25. Retrieved 2026-03-01.
- ↑ "Release 1.11.0 · pdfarranger/pdfarranger". GitHub. 2024-06-20. Retrieved 2026-03-01.
- 1 2 "Preserve outlines and links when possible · Issue #462 · pdfarranger/pdfarranger". GitHub. 2021-03-14. Retrieved 2026-03-01.
- 1 2 3 4 "User Manual". GitHub. Retrieved 2026-03-01.
- ↑ "Release 1.13.0 · pdfarranger/pdfarranger". GitHub. 2026-02-01. Retrieved 2026-03-01.
- 1 2 "Add support for searching of text in PDF · Issue #1288 · pdfarranger/pdfarranger". GitHub. 2025-12-07. Retrieved 2026-03-01.
- ↑ "pdfarranger – Application for PDF Merging, Rearranging, Splitting, and Cropping". Ubuntu Manpages. Retrieved 2026-03-01.
- ↑ "Add support for image files · Pull Request #202 · pdfarranger/pdfarranger". GitHub. Retrieved 2026-03-01.
- ↑ "Add support for pasting a page as overlay & underlay · Pull Request #832 · pdfarranger/pdfarranger". GitHub. Retrieved 2026-03-01.
- ↑ "Support export to png, jpeg and rasterized pdf · Issue #1188 · pdfarranger/pdfarranger". GitHub. 2025-02-01. Retrieved 2026-03-01.
- 1 2 3 "Install PDF Arranger on Linux". Flathub. Retrieved 2026-04-12.
- ↑ Shukla, Gaurav (July 2025). "5 Open-Source Alternatives to Adobe Acrobat for Editing Your PDFs". How-To Geek. Retrieved 2026-04-12.
- ↑ Das, Ankush (2025-05-22). "Best PDF Editors for Linux to Edit the PDF Content and Extract Pages to Merge in Other PDF Files". It's FOSS. Retrieved 2026-03-09.
- ↑ V, Arish (2021-01-26). "PDF Arranger 1.7 Release Makes Managing PDF Documents on Linux Easier". It's FOSS. Retrieved 2026-03-09.
- ↑ Brinkmann, Martin (2020-11-05). "PDF Arranger: Split, merge, rotate pages in PDF documents". Ghacks. Retrieved 2026-04-12.
- ↑ "Pdfarranger". Linux Format (275). April 2021.
- ↑ Serea, Razvan (2026-02-01). "PDF Arranger 1.13.0". Neowin. Retrieved 2026-04-12.
- ↑ "PDF Arranger". AlternativeTo. Retrieved 2026-04-12.
External links
edit- Official website
- PDF Arranger on Flathub
- PDF Arranger on Mastodon (Fosstodon)