How FileFit processes your files

FileFit runs its image and PDF tools in your browser. This page describes the implemented engines and their practical limits; it does not promise lossless results or a universal file-size target.

Image compression and resizing

JPG, PNG, WebP, HEIC, and browser-decodable AVIF inputs are checked by file signature. Image headers and decoded dimensions are checked against the workload limit. A worker uses createImageBitmap and OffscreenCanvas; HEIC decoding uses libheif through heic-to.

The engine searches a bounded set of quality values and, when dimensions are not fixed, smaller pixel sizes. PNG skips the lossy quality search. The selected output is decoded again and its actual MIME type, dimensions, and bytes are checked. An over-limit result remains visibly marked as a failure against that constraint.

JPG does not preserve transparency; PNG and WebP can preserve it. Re-encoding removes metadata and does not guarantee full ICC color fidelity. If an eligible original is returned unchanged because it is smaller, its metadata is unchanged. Animated or multi-image sources are not exported as complete sequences.

PDF operations

pdf-lib handles page copying, extraction, image embedding, proportional page resizing, and serialization. PDF.js renders pages to JPG using local worker, font, and codec assets. PDF-to-JPG deliberately rasterizes pages; the PDF reducer does not.

The reducer attempts an object-stream rewrite only. It does not downsample arbitrary scanned images or promise advanced QPDF/Ghostscript-equivalent compression. The original is returned if the rewrite is larger. Document-feature warnings and signature/encryption checks apply before editing.

Workload and compatibility limits

OperationCurrent limit
File input40 MB per file
Batch20 files; 80 MB combined input
Images32 megapixels; output sides up to 12,000 pixels
PDF manipulation200 pages
PDF page rendering30 selected pages; 16 megapixels per page
Individual-page PDF extraction30 outputs per run
Worker processing90-second job timeout

Current module-worker and OffscreenCanvas support is required. Automated testing covers Chromium desktop and a mobile viewport, not every physical browser/device or malformed-file variant. Use smaller batches on low-memory devices.

Privacy and review

No file content is uploaded. Hosting still delivers website assets and may keep normal request logs. Do not treat automatic checks as proof of readability or preservation of every document feature. Preview the result and keep the original.

Read the privacy policy · Browse practical guides · tc98onmazir@gmail.com