Rotate PDF Pages in Linux
PSPDFKit Processor has been deprecated and replaced by Document Engine. To start using Document Engine, refer to the migration guide. With Document Engine, you’ll have access to robust new capabilities (read the blog for more information).
To rotate pages of a document, use PSPDFKit Processor’s /build
endpoint.
Before you get started, make sure Processor is up and running.
You can download and use either of the following sample documents for the examples in this guide:
You’ll be sending multipart POST requests with instructions to Processor’s /build
endpoint. To learn more about multipart requests, refer to our blog post on the topic, A Brief Tour of Multipart Requests.
Check out the API Reference to learn more about the /build
endpoint and all the actions you can perform on PDFs with PSPDFKit Processor.
Rotating Pages of a File on Disk
Send a multipart request to the /build
endpoint, attaching input files and the instructions
JSON:
The example below rotates the first two pages of an eight-page document 90 degrees clockwise. After rotating the first two pages, the result is merged with the remaining six pages of the document to get the final output PDF.
curl -X POST http://localhost:5000/api/build \ -F document=@/path/to/document.pdf \ -F instructions='{ "parts": [ { "file": "document", "pages": { "start": 0, "end": 1 }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] }, { "file": "document", "pages": { "start": 2, "end": 7 } } ] }' \ -o result.pdf
POST /process HTTP/1.1 Content-Type: multipart/form-data; boundary=customboundary --customboundary Content-Disposition: form-data; name="document"; filename="document.pdf" Content-Type: application/pdf <PDF data> --customboundary Content-Disposition: form-data; name="instructions" Content-Type: application/json { "parts": [ { "file": "document", "pages": { "start": 0, "end": 1 }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] }, { "file": "document", "pages": { "start": 2, "end": 7 } } ] } --customboundary--
Rotating Pages of a File from a URL
Send a multipart request to the /build
endpoint, attaching a URL pointing to an input file and the instructions
JSON.
The following example rotates all the pages of the document at the URL 90 degrees clockwise:
curl -X POST http://localhost:5000/api/build \ -F instructions='{ "parts": [ { "file": { "url": "https://pspdfkit.com/downloads/examples/paper.pdf" }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] } ] }' \ -o result.pdf
POST /process HTTP/1.1 Content-Type: multipart/form-data; boundary=customboundary --customboundary Content-Disposition: form-data; name="instructions" Content-Type: application/json { "parts": [ { "file": { "url": "https://pspdfkit.com/downloads/examples/paper.pdf" }, "actions": [ { "type": "rotate", "rotateBy": 90 } ] } ] } --customboundary--