OfficeIMO optimization works on PDF structure and streams without rasterizing pages. Text remains text, and the operation does not deliberately trade fidelity for a smaller scan image.
Optimize from .NET
using OfficeIMO.Pdf;
PdfDocument source = PdfDocument.Open("report.pdf");
PdfOptimizationActionResult result =
source.Optimization.Apply(PdfOptimizationProfile.Web);
File.WriteAllBytes("report.optimized.pdf", result.Bytes);
Console.WriteLine($"Saved bytes: {result.SavedBytes}");
Console.WriteLine($"Returned original: {result.ReturnedOriginal}");
If the optimized candidate is not smaller, the result can retain the original bytes rather than making the file larger merely to claim success. The action report records requested profile, candidate and returned sizes, applied actions, skipped opportunities, and linearization state.
Compression boundaries
This is not scan downsampling, JPEG recompression, or page rasterization. Those policies can remove selectable text, accessibility information, vector quality, and signature meaning. OfficeIMO keeps that lossy workflow separate until it has explicit quality controls and evidence.