2023-02-05 22:12:03 +01:00
|
|
|
<p align="center"><img src="https://raw.githubusercontent.com/Frooodle/Stirling-PDF/main/docs/stirling.png" width="80" ><br><h1 align="center">Stirling-PDF</h1>
|
|
|
|
</p>
|
2023-02-04 16:06:27 +01:00
|
|
|
|
2023-01-27 19:23:40 +01:00
|
|
|
|
|
|
|
This is a locally hosted web application that allows you to perform various operations on PDF files, such as splitting and adding images.
|
2023-01-30 22:46:38 +01:00
|
|
|
|
2023-01-30 22:46:28 +01:00
|
|
|
Started off as a 100% ChatGPT made application, slowly moving away from that as more features are added
|
2023-01-27 21:39:20 +01:00
|
|
|
|
2023-01-27 22:02:42 +01:00
|
|
|
I will support and fix/add things to this if there is a demand [Discord](https://discord.gg/Cn8pWhQRxZ)
|
2023-01-27 19:23:40 +01:00
|
|
|
|
2023-01-30 21:50:47 +01:00
|
|
|
|
|
|
|
![stirling-home](images/stirling-home.png)
|
|
|
|
|
|
|
|
|
2023-01-27 19:23:40 +01:00
|
|
|
## Features
|
|
|
|
|
|
|
|
- Split PDFs into multiple files at specified page numbers or extract all pages as individual files.
|
|
|
|
- Merge multiple PDFs together into a single resultant file
|
|
|
|
- Convert PDFs to and from images
|
|
|
|
- Reorganize PDF pages into different orders.
|
|
|
|
- Add images to PDFs at specified locations.
|
2023-01-30 22:39:17 +01:00
|
|
|
- Rotating PDFs in 90 degree increments.
|
|
|
|
- Compressing PDFs to decrease their filesize.
|
2023-02-03 21:26:35 +01:00
|
|
|
- Add and remove passwords
|
|
|
|
- Set PDF Permissions
|
|
|
|
- Add watermark(s)
|
2023-01-27 19:23:40 +01:00
|
|
|
- Dark mode support.
|
|
|
|
|
|
|
|
## Technologies used
|
|
|
|
- Spring Boot + Thymeleaf
|
|
|
|
- PDFBox
|
2023-01-30 22:27:17 +01:00
|
|
|
- e-iceblue spire.pdf.free (for PDF compression untill i find a nicer way)
|
2023-01-27 19:23:40 +01:00
|
|
|
- HTML, CSS, JavaScript
|
|
|
|
- Docker
|
|
|
|
|
|
|
|
## How to use
|
|
|
|
|
2023-02-05 22:12:03 +01:00
|
|
|
### Locally
|
2023-01-27 19:23:40 +01:00
|
|
|
|
|
|
|
Prerequisites
|
|
|
|
- Java 17 or later
|
2023-01-30 22:27:17 +01:00
|
|
|
- Gradle 7.0 or later
|
2023-01-27 19:23:40 +01:00
|
|
|
|
|
|
|
1. Clone or download the repository.
|
|
|
|
2. Build the project using Gradle by running `./gradlew build`
|
2023-01-30 22:27:17 +01:00
|
|
|
3. Start the application by running `./gradlew bootRun` or by calling the build jar in build/libs with java -jar jarName.jar
|
2023-01-27 19:23:40 +01:00
|
|
|
|
|
|
|
|
|
|
|
### Docker
|
2023-01-27 20:10:24 +01:00
|
|
|
https://hub.docker.com/r/frooodle/s-pdf
|
|
|
|
|
2023-01-30 22:27:17 +01:00
|
|
|
Docker Run
|
|
|
|
```
|
2023-01-27 19:23:40 +01:00
|
|
|
docker run -p 8080:8080 frooodle/s-pdf
|
2023-01-30 22:27:17 +01:00
|
|
|
```
|
|
|
|
Docker Compose
|
|
|
|
```
|
|
|
|
version: '3.3'
|
|
|
|
services:
|
|
|
|
s-pdf:
|
|
|
|
ports:
|
|
|
|
- '8080:8080'
|
|
|
|
image: frooodle/s-pdf
|
|
|
|
```
|
2023-01-27 19:23:40 +01:00
|
|
|
|
|
|
|
## How to View
|
|
|
|
1. Open a web browser and navigate to `http://localhost:8080/`
|
|
|
|
2. Use the application by following the instructions on the website.
|
|
|
|
|
|
|
|
## Note
|
2023-01-27 19:33:08 +01:00
|
|
|
The application is currently not thread-safe
|