Commit Graph
112 Commits
Author SHA1 Message Date
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
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
cxllxc ab122e19df feat: Add internationalization support and introduce a new PDF multi-tool. 2025-12-12 12:54:06 +00:00
abdullahalam123 a83d9b6604 Merge branch 'port-to-standalone-pages' 2025-12-11 19:35:28 +05:30
abdullahalam123 78dc6333f9 setup i18n and ported all tools to standalone pages 2025-12-11 19:34:14 +05:30
Sebastian Espei a25ec05e17 Merge remote-tracking branch 'origin/main' into pdf-to-image-direct-image 2025-12-06 00:52:30 +01:00
Sebastian Espei 3d59dea821 feat(pdf-to-webp): show processing in loader message 2025-12-06 00:26:34 +01:00
Sebastian Espei 35e7281bc3 feat(pdf-to-tiff): show processing in loader message 2025-12-06 00:26:29 +01:00
Sebastian Espei 1637ed6b44 feat(pdf-to-png): show processing in loader message 2025-12-06 00:26:22 +01:00
Sebastian Espei ac32e09fe9 feat(pdf-to-jpg): show processing in loader message 2025-12-06 00:26:14 +01:00
Sebastian Espei 650ff1fca5 feat(pdf-to-bmp): add yieldToUI 2025-12-06 00:25:46 +01:00
Sebastian Espei 09c554a3e6 feat(pdf-to-jpg): fix wrong indentation 2025-12-06 00:21:03 +01:00
Sebastian Espei 9602fef1e8 feat(pdf-to-bmp): add yieldToUI 2025-12-06 00:17:15 +01:00
Sebastian Espei cc926d0b07 feat(pdf-to-bmp): update single-page processing message 2025-12-06 00:14:06 +01:00
Pavel Akhrameev e831a477d2 Change image embedding from PNG to JPEG format
using PNG increased filesize from ~60 MB to ~112 MB. That's too much. May require some "quality" parameter adjustment.
2025-12-05 04:29:40 +04:00
abdullahalam123 b279c05281 feat: Add subdirectory hosting support and fix asset path resolution
- Update README with comprehensive subdirectory hosting instructions and BASE_URL configuration guide
- Convert absolute asset paths to relative paths in index.html for proper subdirectory deployment
- Update all worker script imports to use relative paths instead of absolute paths
- Fix favicon and image references to work correctly when hosted in nested directories
- Normalize whitespace and formatting across worker files for consistency
- Update vite.config.ts to properly handle BASE_URL configuration for subdirectory deployments
- Ensure all tool pages and logic files maintain compatibility with subdirectory hosting
- Enable BentoPDF to be deployed at any URL path (e.g., example.com/tools/bentopdf/) without breaking asset loading
2025-12-04 23:53:00 +05:30
abdullahalam123 19425d98f9 feat: Add JPG to PDF conversion tool with dedicated page and logic. 2025-12-04 21:21:34 +05:30
abdullahalam123 62d1b9ada2 feat: add new Edit PDF tool with dedicated page and logic, and update build configuration 2025-12-04 15:29:01 +05:30
abdullahalam123 9620084789 feat: Add dedicated compress PDF page and reimplement compression logic. 2025-12-04 14:32:37 +05:30
abdullahalam123 6676fe9f89 feat: Reimplement PDF splitting functionality on a new dedicated page. 2025-12-04 14:02:20 +05:30
abdullahalam123 fb3063324c feat: implement dedicated merge PDF tool page with new logic and UI structure 2025-12-04 12:26:57 +05:30
abdullahalam123 649aec046d feat(ocr,form-creator): Add comprehensive font support and TypeScript type definitions
- Add @pdf-lib/fontkit dependency for enhanced font rendering capabilities
- Create font-mappings.ts configuration with language-to-font-family mappings for 100+ languages
- Implement font-loader.ts utility for dynamic font loading from CDN sources
- Add TypeScript type definitions for form-creator, OCR, and general application types
- Create types/index.ts as centralized type exports
- Remove hidden-on-touch CSS class and update shortcuts button styling for better accessibility
- Update OCR text layer rendering to support multilingual font families
- Enhance form-creator with improved font handling for international text
- Update txt-to-pdf with font support for diverse character sets
- Migrate fileHandler to support new font loading workflow
- Update main.ts and ui.ts to integrate new type system and font utilities
- Update form-creator.html page with enhanced font configuration UI
2025-12-03 23:13:14 +05:30
Sebastian Espei d2769a02f5 feat(pdf-to-image): simplify get clean filename 2025-12-02 22:07:25 +01:00
Sebastian Espei 3fcf9757f7 feat(pdf-to-jpg): direct download resulting image and adjust filename 2025-12-02 21:31:19 +01:00
Sebastian Espei 59510899bb Merge remote-tracking branch 'origin/main' into pdf-to-image-direct-image 2025-12-02 21:17:20 +01:00
abdullahalam123 09436a689d feat(rotate,delete-pages): Add custom rotation angles and enhance page management UI
- Add TypeScript type definitions for merge and alternate-merge Web Workers
- Implement custom rotation angle input with increment/decrement controls for rotate tool
- Extend delete-pages tool to render page thumbnails for better UX
- Hide number input spin buttons across all number inputs via CSS
- Refactor rotateAll function to accept angle parameter instead of direction multiplier
- Update fileHandler to support delete-pages tool thumbnail rendering
- Improve type safety in alternate-merge logic with proper interface definitions
- Enhance rotate tool UI with custom angle input field and adjustment buttons
2025-12-01 14:54:46 +05:30
abdullahalam123 c5764e4172 feat(favicon,repair-pdf): Add favicon support and implement PDF repair tool
- Add favicon.ico to public directory for browser tab display
- Update favicon references across all HTML pages with proper link tags for SVG, PNG, and ICO formats
- Add Apple touch icon support for iOS devices
- Create new repair-pdf.ts logic module for PDF repair functionality
- Create new repair-pdf-page.ts utility module for page-level repair operations
- Add repair-pdf.html page with UI for PDF repair tool
- Register repair PDF tool in tools configuration and PDF tools registry
- Update UI rendering utilities to support new repair tool
- Improve favicon handling with multiple format fallbacks for cross-browser compatibility
- Standardize favicon paths to use absolute URLs for consistency
- Clean up whitespace and formatting in licensing.html for code consistency
2025-12-01 12:44:34 +05:30
Sebastian Espei 33ebcf4479 feat(pdf-to-webp): direct download resulting image and adjust filename 2025-12-01 00:56:14 +01:00
Sebastian Espei 30b16a6bf1 feat(pdf-to-tiff): direct download resulting image and adjust filename 2025-12-01 00:46:38 +01:00
Sebastian Espei b29395a011 feat(pdf-to-bmp): direct download resulting image and adjust filename 2025-11-30 23:57:04 +01:00
Sebastian Espei e5cd2e6ab5 feat(pdf-to-png): direct download resulting image and adjust filename 2025-11-30 23:45:27 +01:00
abdullahalam123 8651ca366f feat(merge): Migrate merge operations to Web Workers and reorganize tool categories
- Create merge.worker.js and alternate-merge.worker.js for offloading PDF merge operations to background threads
- Migrate merge and alternate-merge logic to use Web Worker architecture for improved performance
- Move flatten tool from singlePdfLoadTools to multiFileTools configuration
- Update merge and alternate-merge tool subtitles to indicate bookmark preservation
- Refactor alternate-merge.ts to use Web Worker instead of pdf-lib for interleaving operations
- Refactor merge.ts to use Web Worker for standard merge operations
- Update fileHandler.ts to recognize flatten as a multi-file tool requiring process button handling
- Simplify form-creator.ts and flatten.ts implementations with Web Worker integration
- Update UI state management to support Web Worker-based PDF processing
- Improve performance by moving computationally intensive PDF operations off the main thread
2025-11-28 20:49:49 +05:30
abdullahalam123 6e7563d0c2 fix(bookmark-pdf): Improve page reference resolution and simplify destination handling
- Refactor findPageIndex() to use multiple resolution strategies (direct ref comparison, object number matching, string representation, numeric values)
- Add resolvedPageRef parameter to findPageIndex() for more efficient page dictionary matching
- Improve named destination handling to properly extract 'D' entry from dictionary-wrapped destinations
- Remove unnecessary resolveRef() call on destination arrays to preserve array structure integrity
- Pass resolved page reference to findPageIndex() for better accuracy in page lookup
- Simplify footer markup across multiple pages (add-stamps, bookmark, form-creator, json-to-pdf, pdf-to-json, table-of-contents) by removing redundant background color and grid layout
- Enhance error handling and logging for page reference resolution diagnostics
2025-11-25 14:52:34 +05:30
abdullahalam123 e8c0e82d29 feat(form-creator): Simplify date field rendering and fix PDF date actions
- Refactor date field UI rendering to use inline HTML with calendar icon and format text
- Consolidate date format and keystroke action creation by removing unnecessary widget loop
- Attach Additional Actions (AA) directly to field dictionary instead of individual widgets
- Improve code clarity and reduce redundant DOM manipulation in date field initialization
- Ensure date formatting and keystroke validation work correctly at the field level in generated PDFs
2025-11-24 21:43:33 +05:30
abdullahalam123 95927cd899 squash: feat: Create fillable PDF forms 2025-11-24 21:16:23 +05:30
abdullahalam123 83aadb6d98 fix: enhance shortcut key detection for alt key combinations and update Discord invite link across all pages. 2025-11-21 19:32:08 +05:30