Public
Like
Jpegconversionfrtb
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Viewing readonly version of main branch: v66View latest version
A robust web application that allows users to upload JPEG and HEIF images and convert them to HTML using advanced OCR (Optical Character Recognition) with mathematical formula preservation. Now with enhanced HEIF support and improved error handling.
- Enhanced HEIF Support: Robust handling of HEIF/HEIC files with automatic conversion to JPEG
- Drag and Drop Interface: Easy file upload with visual feedback for JPEG and HEIF formats
- Multiple File Upload: Process up to 60 files simultaneously with batch processing
- Advanced OCR: Text recognition using Tesseract.js with mathematical formula detection
- Mathematical Formula Recognition: Specialized detection and preservation of mathematical expressions
- LaTeX Math Rendering: Mathematical formulas preserved using MathJax in HTML output
- Real-time Progress Tracking: Detailed progress monitoring for each file including conversion status
- Error Recovery: Comprehensive error handling with detailed error messages
- HTML Output Generation: Clean, styled HTML with mathematical notation properly rendered
- Improved Library Loading: Better handling of heic2any library initialization
- Enhanced File Detection: More robust HEIF file format detection using both MIME types and file extensions
- Higher Quality Conversion: Optimized JPEG conversion settings for better OCR accuracy
- Better Error Handling: Detailed error messages for conversion failures
- Progress Tracking: Real-time status updates during HEIF conversion process
- Enhanced Character Recognition: Expanded character whitelist for better mathematical symbol detection
- Improved Engine Configuration: Optimized Tesseract.js settings for mathematical content
- Better Progress Reporting: More granular progress updates during OCR processing
- Library Availability Checks: Robust checking for library availability before processing
- HEIF File Indicators: Clear badges showing which files were converted from HEIF
- Enhanced Statistics: Detailed processing summary including conversion counts
- Better Visual Design: Improved styling with file type indicators and processing notes
- Conversion Tracking: Clear indication of which files underwent HEIF conversion
├── backend/
│ └── index.ts # Enhanced API server with robust HEIF support and improved error handling
├── frontend/
│ ├── index.html # Updated HTML template with improved library loading
│ ├── index.tsx # Enhanced React application with better HEIF processing
│ └── style.css # Custom styles with math formula styling
└── README.md
- Automatic Format Detection: Robust detection of HEIF/HEIC files using both MIME types and file extensions
- Improved Library Loading: Better handling of heic2any library with retry mechanisms
- High-Quality Conversion: Optimized JPEG conversion settings (95% quality) for better OCR accuracy
- Conversion Progress Tracking: Real-time status updates during HEIF to JPEG conversion
- Error Recovery: Graceful handling of conversion failures with detailed error messages
- Preview Generation: Automatic preview generation for HEIF files after conversion
- Enhanced Pattern Detection: Improved detection of mathematical expressions and symbols
- Extended Symbol Support: Support for Greek letters, mathematical operators, and special symbols
- LaTeX-Style Preservation: Mathematical formulas preserved in LaTeX format for HTML output
- MathJax Integration: Proper mathematical display using MathJax rendering engine
- Formula Counting: Automatic counting and display of detected mathematical formulas
- Enhanced Tesseract Configuration: Optimized settings for mathematical content recognition
- Extended Character Whitelist: Comprehensive character set including mathematical symbols
- Progress Monitoring: Detailed progress tracking with percentage completion
- Error Handling: Comprehensive error handling with specific error messages
- Library Availability Checks: Robust checking for required libraries before processing
- Batch Processing: Efficient processing of multiple files with individual status tracking
- Visit the Application: Navigate to the application URL
- Upload Files: Drag and drop JPEG/HEIF files or click to select files
- Multiple File Support: Upload up to 60 files simultaneously
- Format Support: Both JPEG and HEIF formats are fully supported
- Automatic Detection: Files are automatically validated and categorized
- Start Processing: Click "Start OCR & Math Processing" to begin
- HEIF Conversion: HEIF files are automatically converted to JPEG
- Progress Tracking: Monitor real-time progress for each file
- Error Handling: Any processing errors are clearly displayed
- Monitor Progress: Watch detailed progress updates for each file
- Conversion Phase: HEIF files show conversion progress
- OCR Phase: Text extraction progress with percentage completion
- Formula Detection: Mathematical formula detection and counting
- Download Results: Click "Download HTML with Math" to get formatted HTML
- Enhanced Output: HTML includes file type indicators and processing notes
- Mathematical Formulas: All detected formulas rendered with MathJax
- Processing Summary: Detailed statistics about the conversion process
- Conversion Failures: If HEIF conversion fails, check file integrity and try re-uploading
- Library Loading: The application automatically retries library loading up to 50 times
- Browser Compatibility: Ensure your browser supports modern JavaScript features
- Low Confidence: Poor image quality may result in low OCR confidence scores
- Mathematical Formulas: Complex formulas may require manual review in the output
- Large Files: Very large images may take longer to process
- Batch Size: For best performance, process files in batches of 10-20
- Image Quality: Higher quality images produce better OCR results
- File Size: Compress large images before upload for faster processing
- Backend: Hono.js for API routes
- Frontend: React with TypeScript
- OCR: Tesseract.js for general text recognition
- Math OCR: Specialized mathematical formula recognition
- Math Rendering: MathJax for LaTeX formula display in HTML
- Image Processing: HEIC to JPEG conversion support
- Styling: TailwindCSS