Commit Graph

146 Commits

Author SHA1 Message Date
alam00000
bfe4e5b663 feat: make Docker container port configurable via PORT env var
fix: preserve original filename when downloading processed files
2026-04-05 13:44:16 +05:30
alam00000
4efab56e48 fix: handle multi-channel TIFF formats and add compression options
Add PDF quality selector (high/medium/low) with JPEG compression.
2026-04-04 13:09:22 +05:30
alam00000
ecfa571215 feat: add PDF overlay and underlay functionality 2026-04-01 18:11:36 +05:30
alam00000
9d0b68e18c Refactor and enhance type safety across various modules
- Updated function parameters and return types in `page-preview.ts`, `pdf-decrypt.ts`, and `pymupdf-loader.ts` for improved type safety.
- Introduced type definitions for `CpdfInstance`, `PyMuPDFInstance`, and other related types to ensure better type checking.
- Enhanced error handling in `sanitize.ts` by creating a utility function for error messages.
- Removed unnecessary type assertions and improved type inference in `editor.ts`, `serialization.ts`, and `tools.test.ts`.
- Added type definitions for markdown-it plugins to improve compatibility and type safety.
- Enforced stricter TypeScript settings by enabling `noImplicitAny` in `tsconfig.json`.
- Cleaned up test files by refining type assertions and ensuring consistency in type usage.
2026-03-31 17:59:49 +05:30
alam00000
a617279c2d feat: add support for disabling specific features in the PDF Editor 2026-03-29 23:02:58 +05:30
alam00000
245b48464b feat: add error handling for flattening PDF forms and annotations 2026-03-29 20:29:46 +05:30
alam00000
9a7cf1636b feat: add support for disabling specific tools in self-hosting
- Introduced build-time and runtime options to disable tools for compliance or security.
- Updated documentation to include instructions for disabling tools in Docker and Kubernetes setups.
- Added translations for disabled tool messages in multiple languages.
- Implemented logic to filter out disabled tools from the toolbox and shortcuts in the application.
- Created utility functions to manage disabled tools configuration.
2026-03-28 23:45:17 +05:30
Alam
59ebb4d358 Merge pull request #604 from lukasstorck/main
fix: in bookmarks editor focus cancel- or ok-button for opened confirm and alert modals
2026-03-28 21:17:33 +05:30
Alam
a90f74c719 Merge pull request #576 from InstaZDLL/feat/timestamp-pdf
feat: add Timestamp PDF tool with RFC 3161 support
2026-03-27 11:03:57 +05:30
alam00000
bd44108296 feat: add PDF password prompt and centralized pdf-lib loader with auto-repair 2026-03-26 14:42:48 +05:30
alam00000
9278774b8a - Refactor PDF loading across workflow nodes to use loadPdfDocument utility
- Replaced direct calls to PDFDocument.load with loadPdfDocument in multiple nodes to standardize PDF loading process.
2026-03-26 13:40:21 +05:30
alam00000
9d362b1cf8 feat: enable loading of encrypted PDFs by adding ignoreEncryption option 2026-03-26 12:55:50 +05:30
alam00000
1dbf907eeb Add password prompt functionality and tests while uploading encrypted PDF 2026-03-26 12:11:12 +05:30
alam00000
f88f872162 feat: implement filename deduplication utility and integrate across multiple file conversion modules 2026-03-24 20:36:56 +05:30
Lukas
3f5298d1e7 fix: use HTMLElement type for previous active elment 2026-03-24 13:25:30 +01:00
Lukas
a5c853891f fix: focus cancel or ok button on confirm and alert modals
when opening the modal:
- remember previously focused element
- set focused element to the ok or cancel button

when closing the modal:
- restore the focus to the previously focused element
2026-03-24 12:52:57 +01:00
alam00000
e3216dddc5 feat: add PDF to CBZ conversion tool with metadata support
- Updated main.ts to include 'PDF to CBZ' in the tools list.
- Added new types for CBZ options and comic metadata in pdf-to-cbz-type.ts.
- Implemented comic-info utility functions for generating ComicInfo.xml and metadata OPF files.
- Created pdf-to-cbz.html page with UI for PDF to CBZ conversion, including options for image format, quality, and metadata.
- Updated vite.config.ts to route to the new PDF to CBZ page.
2026-03-24 14:55:51 +05:30
alam00000
3ca19af354 feat: add TIFF conversion options and integrate wasm-vips for image processing
- Updated README.md to include new dependencies: wasm-vips, pixelmatch, diff, and microdiff.
- Added wasm-vips to package.json and package-lock.json for advanced TIFF encoding.
- Enhanced localization files with new options for DPI, compression, color mode, and multi-page TIFF saving.
- Implemented UI changes in pdf-to-tiff.html to allow users to select DPI, compression type, color mode, and multi-page options.
- Refactored pdf-to-tiff-page.ts to utilize wasm-vips for TIFF encoding, replacing previous UTIF implementation.
- Introduced TiffOptions interface in pdf-to-tiff-type.ts for better type management.
- Updated Vite configuration to exclude wasm-vips from dependency optimization.
2026-03-24 13:24:50 +05:30
Alam
b732ee7925 Merge pull request #565 from Skillkiller/translate-pdf-to-image
Implement missing i18n translations for PDF-to-Image modules
2026-03-24 11:55:11 +05:30
Sebastian Espei
6d19c5f2e4 Revert formatting churn in signing pages 2026-03-24 01:56:53 +01:00
Lukas
252ebf962d feat: add page up/down hotkeys for quick bookmark input 2026-03-22 13:05:48 +01:00
alam00000
37b5956bd5 feat: add option to opt out of embedding full fonts in OCR settings 2026-03-21 16:39:51 +05:30
alam00000
8bf52b9ef1 feat: implement annotation flattening functionality and add tests 2026-03-17 22:46:13 +05:30
alam00000
6c0e9c7232 feat: enhance PDF comparison with overlay options and filters 2026-03-16 21:47:35 +05:30
alam00000
477839f106 feat: add "Add Page Labels" tool to the application
- Introduced a new tool for adding page labels to PDF documents, allowing users to apply Roman numerals, prefixes, and custom numbering ranges.
- Created a new HTML page for the tool with a user-friendly interface for file upload and label rule configuration.
- Implemented logic for handling file uploads, processing PDF files, and applying page labels based on user-defined rules.
- Added necessary types and utility functions for managing page label styles and normalization of start values.
- Updated main application configuration to include the new tool in the navigation.
- Added tests for page label utilities to ensure correct functionality.
2026-03-16 14:34:27 +05:30
alam00000
31f43b557f feat: add transparent background option for form fields 2026-03-15 19:52:48 +05:30
alam00000
47c1be6df1 refactor pdf decrypt 2026-03-15 14:29:30 +05:30
InstalZDLL
70f0834fc0 fix: address CodeRabbit review feedback
- Handle Headers instance in TSA request detection (not just plain objects)
- Wrap timestampPdf with createCorsAwareFetch for OCSP/cert chain requests
- Pass 'success' type to showAlert on successful timestamp
- Add TSA URL context to timestamp error messages with cause
- Remove redundant Uint8Array wrapping in TimestampNode
2026-03-15 00:46:47 +01:00
InstalZDLL
dfd0ebcfc5 feat: add Timestamp PDF tool with RFC 3161 support
Add document timestamping to the Secure PDF section using RFC 3161
protocol. Users can select from preset TSA servers (DigiCert, Sectigo,
SSL.com, Entrust, FreeTSA) or enter a custom TSA URL. No personal
certificate is required — only a cryptographic hash is sent to the server.

Key changes:
- Timestamp PDF page with TSA server selector, FAQ and SEO structured data
- timestampPdf() function with CORS proxy URL resolution
- TimestampNode for the workflow engine
- Tool entry in Secure PDF category + homepage i18n
- Built-in CORS proxy middleware for dev/preview
- Translations for all 16 languages

Tested with DigiCert, Sectigo and Entrust TSA servers. Timestamps are
verifiable in Adobe Acrobat (ETSI.RFC3161 SubFilter).
2026-03-15 00:30:53 +01:00
alam00000
77da6d7a7d feat: integrate Tesseract.js with improved language availability and font handling
- Refactored OCR page recognition to utilize a configured Tesseract worker.
- Added functions to manage font URLs and asset filenames based on language.
- Implemented language availability checks and error handling for unsupported languages.
- Enhanced PDF workflow to display available OCR languages and handle user selections.
- Introduced utility functions for resolving Tesseract asset configurations.
- Added tests for OCR functionality, font loading, and Tesseract runtime behavior.
- Updated global types to include environment variables for Tesseract and font configurations.
2026-03-14 15:50:30 +05:30
alam00000
e117ab93bd fix: form creator bug and added tests 2026-03-12 18:37:35 +05:30
YuF-9468
6b7eeea51a fix(form-creator): improve checkbox/radio resize constraints and cursors 2026-03-12 11:56:35 +08:00
Sebastian Espei
2ede256de2 Add localization for loading page count in various PDF processing pages 2026-03-10 20:13:13 +01:00
Sebastian Espei
571ce07af6 Add localization for PDF to BMP and PDF to TIFF conversion alerts and loader messages 2026-03-10 19:55:21 +01:00
Sebastian Espei
8d26378611 Add localization for PDF to WebP conversion alerts and loader messages 2026-03-10 19:52:38 +01:00
Sebastian Espei
37d95e249d Add localization for PDF to PNG conversion alerts and loader messages 2026-03-10 19:18:39 +01:00
Sebastian Espei
01c4d3bd7c Add localization for PDF to JPG conversion alerts and loader messages 2026-03-10 19:17:17 +01:00
Sebastian Espei
d5244649a3 Update imports according to the translation guidelines 2026-03-10 18:40:47 +01:00
Sebastian Espei
667385ee1c Add localization to fileDisplayArea 2026-03-10 18:24:31 +01:00
alam00000
5232102ac0 feat: enhance PDF comparison with new change types and zoom functionality
- Added support for 'moved' and 'style-changed' change types in PDF comparison.
- Implemented category filters for changes, allowing users to filter by text, images, headers, annotations, formatting, and background.
- Introduced zoom functionality with buttons for zooming in, out, and resetting to default.
- Updated UI to reflect new change types and categories, including visual indicators for moved and style-changed items.
- Enhanced summary display to include counts for moved and style-changed changes.
- Refactored rendering logic to accommodate zoom levels and improve performance.
- Added tests for new change detection features and category assignments.
2026-03-10 13:51:23 +05:30
alam00000
d2a1450bc0 refactor: remove HTML report export and implement PDF export options in PDF comparison tool
- Deleted the exportCompareHtmlReport function and its related imports.
- Introduced a dropdown menu for exporting comparison results as PDFs with multiple modes (split, alternating, left, right).
- Updated the comparison logic to utilize caching for page models and comparison results.
- Refactored rendering functions to improve code organization and maintainability.
- Enhanced UI elements for better user experience during PDF export.
2026-03-09 23:27:40 +05:30
Sebastian Espei
92d5e40ac3 Add direct image download to pdf-to-bmp 2026-03-09 17:04:28 +01:00
Sebastian Espei
7c09768109 Add direct image download to pdf-to-tiff 2026-03-09 17:04:28 +01:00
Sebastian Espei
3748463d38 Add direct image download to pdf-to-webp 2026-03-09 17:04:28 +01:00
Sebastian Espei
65f99f0646 Add direct image download to pdf-to-png 2026-03-09 17:04:27 +01:00
Sebastian Espei
22ff7f435c Add direct image download to pdf-to-jpg 2026-03-09 17:04:27 +01:00
Sebastian Espei
e474d11730 Reset branch to main 2026-03-09 17:02:30 +01:00
Sebastian Espei
68343a4c9a Merge remote-tracking branch 'origin/main' into pdf-to-image-direct-image 2025-12-19 02:08:06 +01:00
Connor Smith
71aac226ed Fix edit-pdf-page.ts and revert fileHandler.ts 2025-12-15 17:11:38 -05:00
abdullahalam123
1fe05ec59f ci: Improve Docker build workflow and update dependencies
- Add release type detection to distinguish between version tags and edge builds
- Implement separate Docker build steps for release and edge builds with appropriate tags
- Add edge and SHA-based image tags for main branch builds
- Update nginx configuration to support Vietnamese (vi) language routing
- Simplify nginx location block to handle static files and fallback to index.html
- Remove javascript-obfuscator and ts-migrate from dependencies
- Update README with simplified self-hosting instructions using npx http-server
- Consolidate multiple server setup examples into single recommended approach
- Update build preview command to use npm run preview instead of npx serve
- Improve localization files for German, English, Vietnamese, and Chinese
- Update worker files and TypeScript logic files for improved functionality
- Enhance PDF tool pages with better structure and internationalization support
2025-12-13 20:57:32 +05:30