locally hosted web application that allows you to perform various operations on PDF files
Go to file
Anthony Stirling 6d5dbd9729
Fixes and others (#83)
Features
-------------
Custom application name via APP_NAME docker env
(These next 3 are done with OCRMyPDF)
Extra features to OCR for scanned page cleanup (tilt/noise fixing)
Adding OCR ability to read and output to text file
Added Dedicated PDF/A conversion page 

Bug fixes
--------------
Fix concurrent calls on Libre and OCRMyPDF
jbig fix for compressions
Fix for compression metadata issues due to forced conversions to PDF/A


Other
--------
Removal of UK US language and just using "English" due to extra development time
Still issue with concurrent files for PDF to image... will fix later sorry
2023-04-01 21:02:54 +01:00
.github Metadata editting and local only JS and pdf to image change and format pages (#44) 2023-02-11 14:27:15 +00:00
docs Metadata editting and local only JS and pdf to image change and format pages (#44) 2023-02-11 14:27:15 +00:00
gradle/wrapper Add files via upload 2023-01-27 18:23:40 +00:00
images readme (#82) 2023-03-28 14:59:40 +01:00
src/main Fixes and others (#83) 2023-04-01 21:02:54 +01:00
.gitattributes Update .gitattributes 2023-02-26 21:49:29 +00:00
.gitignore Combined changes that wouldn't merge 2023-02-07 23:14:03 +03:00
build.gradle Fixes and others (#83) 2023-04-01 21:02:54 +01:00
Dockerfile Fixes and others (#83) 2023-04-01 21:02:54 +01:00
gradlew Add files via upload 2023-01-27 18:23:40 +00:00
gradlew.bat Add files via upload 2023-01-27 18:23:40 +00:00
HowToAddNewLanguage.md Update HowToAddNewLanguage.md 2023-02-05 21:40:25 +00:00
HowToUseOCR.md Lots of changes (#70) 2023-03-20 21:55:11 +00:00
Jenkinsfile Add files via upload 2023-01-28 10:00:32 +00:00
LICENSE Initial commit 2023-01-27 18:22:43 +00:00
README.md readme (#82) 2023-03-28 14:59:40 +01:00
settings.gradle Add files via upload 2023-01-27 18:23:40 +00:00


Stirling-PDF

Docker Pulls Discord Docker Image Version (tag latest semver) GitHub Repo stars Paypal Donate

This is a locally hosted web application that allows you to perform various operations on PDF files, such as splitting and adding images.

Started off as a 100% ChatGPT made application, slowly moving away from that as more features are added

I will support and fix/add things to this if there is a demand Discord

stirling-home

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. (WIP)
  • Rotating PDFs in 90 degree increments.
  • Compressing PDFs to decrease their filesize. (Using OCRMyPDF)
  • Add and remove passwords
  • Set PDF Permissions
  • Add watermark(s)
  • Convert Any common file to PDF (using LibreOffice)
  • Extract images from PDF
  • OCR on PDF (Using OCRMyPDF)
  • Edit metadata
  • Dark mode support.
  • Custom download options (see here for example)
  • Parallel file processing and downloads

Technologies used

  • Spring Boot + Thymeleaf
  • PDFBox
  • LibreOffice for advanced conversions
  • OcrMyPdf
  • HTML, CSS, JavaScript
  • Docker

How to use

Locally

Prerequisites

  • Java 17 or later
  • Gradle 7.0 or later
  1. Clone or download the repository.
  2. Build the project using Gradle by running ./gradlew build
  3. Start the application by running ./gradlew bootRun or by calling the build jar in build/libs with java -jar jarName.jar

Docker

https://hub.docker.com/r/frooodle/s-pdf

Docker Run

docker run -p 8080:8080 frooodle/s-pdf

Docker Compose

version: '3.3'
services:
    s-pdf:
        ports:
            - '8080:8080'
        image: frooodle/s-pdf

Enable OCR/Compression feature

Please view https://github.com/Frooodle/Stirling-PDF/blob/main/HowToUseOCR.md

Want to add your own language?

If you want to add your own language to Stirling-PDF please refer https://github.com/Frooodle/Stirling-PDF/blob/main/HowToAddNewLanguage.md

And please create a PR to merge it back in so others can use it!

Also please note as i add new features i will google translate existing languages so that they dont lose support. This could mean that new features need grammer corrections as added.

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.