&1', escapeshellarg($tempInput), escapeshellarg($tempOutput) ); exec($command, $cmdOutput, $returnCode); if (0 !== $returnCode || !file_exists($tempOutput)) { @unlink($tempInput); @unlink($tempOutput); return null; } $compressedContent = file_get_contents($tempOutput); $compressedSize = strlen($compressedContent); @unlink($tempInput); @unlink($tempOutput); // Only return compressed version if it's smaller if ($compressedSize >= $originalSize) { return null; } // Rebuild with data URI prefix $newBase64 = 'data:application/pdf;base64,'.base64_encode($compressedContent); return [ 'path' => $newBase64, 'size' => $compressedSize, 'originalSize' => $originalSize, 'saved' => $originalSize - $compressedSize, ]; } }