Commit Graph

639 Commits

Author SHA1 Message Date
alam00000
b059ac6ada chore: migrate Docker Hub to bentopdfteam, add Podman/Quadlet support
- Migrate Docker Hub account from bentopdf to bentopdfteam
- Make GHCR the recommended container registry
- Add Podman and Podman Compose support
- Add Podman Quadlet (systemd) documentation
- Add Table of Contents to README
2026-01-26 13:34:50 +05:30
EmeraldPi
a6dcca0313 build(deps): bump embedpdf-snippet from 2.1.2 to 2.3.0 2026-01-26 04:25:23 +00:00
spwoodcock
eb9ff4a1a0 fix: bump chart to use GHCR, due to https://github.com/alam00000/bentopdf/issues/399 2026-01-25 21:17:51 +00:00
Stephan Paternotte
53a03599e4 Update i18n.ts
My attempt to resolve the PR conflict
2026-01-23 08:39:03 +01:00
github-actions[bot]
21b9b58610 @JaL-P has signed the CLA in alam00000/bentopdf#410 2026-01-20 21:00:50 +00:00
github-actions[bot]
bf6e212a2d @LoganK has signed the CLA in alam00000/bentopdf#405 2026-01-19 09:14:32 +00:00
Logan Kennelly
23e40f9ef9 fix(crop-pdf): Restore crop bounds when navigating
cropperjs ignores attempts to modify the data before ready. This change
migrates setup to a one-time 'ready' callback.

Steps:
1. Change the cropping bounds of page 1
2. Change to page 2
3. Change to page 1
4. Change to page 2
5. Download cropped PDF

Observed behavior:
* (3) shows the default (autocrop) bounds
* (5) results in a download without the set bounds

Expected behavior:
* (3) should restore the bounds already set
* (4) should not override the set bounds with the autocrop

Tested:
* Local builds using the docker dev config
2026-01-19 01:14:07 -08:00
alam00000
fb8c8c07ae chore: update licensing information and readme 2026-01-15 21:53:01 +05:30
spwoodcock
67b17138f0 docs: add docs for kubernetes deployment 2026-01-15 13:39:49 +00:00
spwoodcock
3f585e2676 build: downgrade to v1.15.3, as the latest available tagged image 2026-01-15 12:37:16 +00:00
github-actions[bot]
b9b98294b5 @spwoodcock has signed the CLA in alam00000/bentopdf#388 2026-01-15 11:54:02 +00:00
Stephan Paternotte
180befda84 Update tools.json
Additional translations: emailtopdf, fonttooutline + deskewpdf 
Fix indenting in line with latest EN sources
2026-01-15 10:05:11 +01:00
Stephan Paternotte
704ad60b26 Update common.json
Another in-between update
reformat indenting in line with latest EN sources
2026-01-15 10:03:03 +01:00
spwoodcock
359dd48b2a build: add helm chart for kubernetes deployment 2026-01-14 21:45:05 +00:00
github-actions[bot]
61390d97fe @sheing-google has signed the CLA in alam00000/bentopdf#386 2026-01-14 21:38:20 +00:00
sheing-google
b8dcf39772 feat: Add page number string reordering to Organize PDF tool
This commit introduces a new feature to the "Organize PDF" tool that allows users to reorder pages by providing a comma-separated string of page numbers.

An "Advanced Settings" section has been added to the UI, containing a text input for the page order and an "Apply Order" button. The implementation includes validation for the input and updates the page thumbnail grid accordingly.
2026-01-14 21:24:46 +00:00
Sheing
da115e97c2 Delete package-lock.json 2026-01-14 15:20:56 -06:00
sheing-google
5f49cac1b2 feat: Add page number string reordering to Organize PDF tool
This commit introduces a new feature to the "Organize PDF" tool that allows users to reorder pages by providing a comma-separated string of page numbers.

An "Advanced Settings" section has been added to the UI, containing a text input for the page order and an "Apply Order" button. The implementation includes validation for the input and updates the page thumbnail grid accordingly.
2026-01-14 21:15:30 +00:00
sheing-google
4a23dabd52 feat: Add page number string reordering to Organize PDF tool
This commit introduces a new feature to the "Organize PDF" tool that allows users to reorder pages by providing a comma-separated string of page numbers.

An "Advanced Settings" section has been added to the UI, containing a text input for the page order and an "Apply Order" button. The implementation includes validation for the input and updates the page thumbnail grid accordingly.
2026-01-14 21:11:11 +00:00
alam00000
8f628e2b5a ci(docker): refactor build workflow to separate platform builds and merge manifests 2026-01-14 22:38:56 +05:30
alam00000
7787e1d9ac chore(docker,docs): improve npm reliability and update feature documentation
- Configure npm fetch retries and timeouts in Dockerfile to handle network issues during dependency installation
- Set fetch-retries to 5, fetch-retry-mintimeout to 60s, fetch-retry-maxtimeout to 300s, and fetch-timeout to 600s
- Update README.md feature descriptions for improved clarity and accuracy
- Add bookmark preservation notes to Merge PDFs and Alternate & Mix Pages tools
- Add new features: Rotate by Custom Degrees, PDF Booklet, PDF Form Filler, Deskew PDF, and Font to Outline
- Enhance PDF Editor description with specific capabilities (annotate, highlight, redact, comment, shapes, images, search)
- Reorganize feature table entries for better logical grouping
- Remove duplicate "Fill Forms" entry in favor of new PDF Form Filler tool
2026-01-14 22:20:41 +05:30
alam00000
21c928365a Release v1.16.0 2026-01-14 22:09:26 +05:30
alam00000
531e1ad1c6 add comprehensive .htaccess configuration for production deployment
- Update Apache documentation with complete .htaccess examples for both root and subdirectory deployments
- Include configuration examples for subpath deployments (e.g., /pdf/)
2026-01-14 22:05:16 +05:30
alam00000
abf7ae8a00 feat(i18n): add static pre-rendering for multi-language support
- Add `generate-i18n-pages.mjs` script to pre-render localized HTML files at build time
- Add `generate-sitemap.mjs` script to generate language-aware sitemap.xml
- Create `navbar-simple.html` and `footer-simple.html` partials for simple mode
- Update all 80+ tool pages with language routing support
- Expand supported languages to 12: en, de, es, fr, it, pt, tr, vi, id, zh, zh-TW
- Update i18n.ts with new language names and support configuration
- Implement languageRouterPlugin in vite.config.ts for dev server routing
- Update nginx.conf for production static file serving from language directories
- Update TRANSLATION.md with new architecture documentation and language addition guide
- Fix relative paths in 404.html for static deployment compatibility
- Update package.json with new build scripts and dependencies
- Improves SEO through static pre-rendering and proper sitemap generation
2026-01-14 21:04:56 +05:30
alam00000
90346d7ea9 feat: Simple Mode language routing and translation improvements
## Simple Mode Enhancements
- Add `simple-index.html` as dedicated homepage for Simple Mode
- Hide marketing sections (FAQ, How It Works, Related Tools) on tool pages
- Add simplified navbar and footer for tool pages in Simple Mode
- Configure vite preview server to handle language-prefixed URLs

## Language Routing
- Add middleware to rewrite language-prefixed URLs (e.g., /de/merge-pdf.html)
- Support all languages: en, de, es, fr, id, it, pt, tr, vi, zh, zh-TW
- Create .htaccess with internal rewrites for Apache/Hostinger hosting

## Translation Updates
- Add missing translations for digitalSignPdf, validateSignaturePdf,
  emailToPdf, fontToOutline, deskewPdf to es, pt, tr, zh-TW
- Add Digital Signature and Validate Signature to homepage translation keys
- Fix language regex patterns to include all supported languages
- Fix typo in encrypt-pdf.html
2026-01-14 02:31:44 +05:30
Alam
59584813e4 Merge pull request #348 from raulgcode/add-spanish-translation
(Feature): Add spanish translation and update documentation with missing steps
2026-01-13 22:45:55 +05:30
Alam
7eeae0bda5 Merge branch 'main' into add-spanish-translation 2026-01-13 22:45:05 +05:30
alam00000
4db4c6c719 fix(vite): add @/types path alias to resolve.alias for build compatibility 2026-01-13 17:19:07 +05:30
alam00000
b57c9a8575 fix: made bookmark pdf type safe 2026-01-13 16:59:25 +05:30
alam00000
446b399be2 refactor: extract navbar and footer into reusable handlebars partials
- Replace duplicated navbar markup across all HTML pages with {{> navbar }} partial
- Replace duplicated footer markup across all HTML pages with {{> footer }} partial
- Add TypeScript type definitions for vite-plugin-handlebars integration
- Update vite.config.ts to support handlebars partial compilation
- Update tsconfig.json to include handlebars type definitions
- Update nginx.conf for proper static file serving with partials
- Update translation files for de, pt, tr, vi, and zh-TW locales
- Reduce code duplication and improve maintainability across 13+ HTML pages
- Ensure consistent navbar and footer behavior across the entire application
2026-01-13 15:13:57 +05:30
alam00000
d9045efcb0 fix: static deployment for github pages 2026-01-13 13:33:23 +05:30
abdullahalam123
dfd56c12d5 refactor: extract navbar and footer into reusable partials
- Extract navbar component from index.html into src/partials/navbar.html
- Extract footer component from index.html into src/partials/footer.html
- Add update-partials.js script to automate partial injection into page templates
- Update all 80+ page templates to use injected navbar and footer partials
- Update vite.config.ts to support partial file processing
- Update package.json and package-lock.json with build script changes
- Sync all translation files (de, en, fr, id, it, pt, tr, vi, zh, zh-TW) with latest keys
- Improves maintainability by centralizing navbar and footer updates across all pages
2026-01-12 22:11:01 +05:30
abdullahalam123
8337c8b45b Merge branch 'fix/pdf-form-creator-bug' 2026-01-12 14:16:05 +05:30
Alam
e46f612d4e Merge pull request #379 from NightFeather0615/i18n/zh-TW
feat(i18n): Add Traditional Chinese (`zh-TW`) language support
2026-01-12 13:58:50 +05:30
NightFeather
bc3de197c8 Add missing i18n guide for zh and zh-TW 2026-01-12 16:10:38 +08:00
abdullahalam123
cf61212515 feat(form-creator): add custom date formats, fix duplicate field bug, improve sticky UX
Bug Fixes:
- Fix duplicate field appearing when removing all options from dropdown/list and dragging
- Fix selected tool button ring being clipped by removing overflow-hidden from Fields toolbar

Date Format Enhancements:
- Add all 30 Adobe Acrobat-compatible date formats
- Add ISO 8601 formats (yyyy-mm-dd, yyyy-mm, yyyy)
- Add European dot-separated formats (dd.mm.yyyy, dd.mm.yy)
- Add date-time formats with 12h/24h time support
- Add Custom format option with input field
- Add live date format example preview

UI/UX Improvements:
- Make Properties sidebar sticky on large screens
- Make Page Management toolbar sticky below navbar
- Make Fields toolbar sticky below Page Management toolbar
- Increase Fields toolbar padding for better spacing
- Fix browser note text alignment in date properties
2026-01-12 13:30:54 +05:30
NightFeather
5e9ac1c492 Merge branch 'main' into i18n/zh-TW 2026-01-12 15:55:44 +08:00
Alam
2910a3f72d Merge pull request #282 from alexandreforeis/feat-pt-br
feat(i18n): add Portuguese (Brazil) translation
2026-01-12 12:46:20 +05:30
Alam
50f62a815c Merge pull request #380 from gianlucaalfa/main
fix-italian-translation
2026-01-12 12:43:58 +05:30
Alam
ac8ea1311d Merge pull request #260 from StanislasMzx/add-french-translation
feat(i18n): Add French (Français) language support
2026-01-12 12:43:11 +05:30
Stanislas MEZUREUX
ec830880e7 chore(i18n): add new translation keys 2026-01-12 00:02:28 +01:00
Stanislas MEZUREUX
584acc68d0 feat(i18n): Add French (Français) language support 2026-01-11 23:38:39 +01:00
github-actions[bot]
41970ec330 @gianlucaalfa has signed the CLA in alam00000/bentopdf#380 2026-01-11 10:30:57 +00:00
gianlucaalfa
d7fce5987d fix-italian-translation 2026-01-11 11:19:27 +01:00
github-actions[bot]
3137b0e2c4 @NightFeather0615 has signed the CLA in alam00000/bentopdf#379 2026-01-10 19:30:32 +00:00
NightFeather
1ac0f751e8 Add Traditional Chinese (zh-TW) localization 2026-01-11 03:19:45 +08:00
Alam
01f5aca5aa Merge pull request #363 from alam00000/dependabot/npm_and_yarn/jspdf-4.0.0
build(deps): bump jspdf from 3.0.4 to 4.0.0
2026-01-10 14:49:47 +05:30
abdullahalam123
c5799954dc fix(ocr): improve text layer alignment with width-based font sizing
- Create new hocr-transform.ts utility for parsing hOCR output
- Add line-aware text processing with baseline and rotation support
- Implement width-based font size calculation to match word bounding boxes
- Fix text selection not covering full characters issue
- Add proper type definitions for OcrLine, OcrPage, WordTransform
- Support RTL languages and CJK word break handling
2026-01-10 13:09:52 +05:30
abdullahalam123
1f7238d0b5 feat: add Deskew PDF and Font to Outline tools with improved issue templates
New Features:
- Add Deskew PDF tool for straightening scanned/skewed PDF pages
- Add Font to Outline tool for converting text to vector paths
- Add translations for new tools in all supported locales (de, en, id, it, tr, vi, zh)

Improvements:
- Migrate GitHub issue templates from markdown to YAML forms
  - Separate templates for bug reports, feature requests, and questions
  - Add config.yml for issue template chooser
- Update sitemap.xml with new tool pages
- Update ghostscript loader and helper utilities
2026-01-09 20:53:36 +05:30
Connor Smith
1fc962082a Fix: restore embedpdf workflow, external xlsx reference 2026-01-09 04:09:27 +00:00