pub fn minimal_pdf() -> Vec<u8> {
let offs = [9usize, 58, 115, 219]; let mut p = Vec::from(&b"%PDF-1.7\n"[..]);
p.extend_from_slice(b"1 0 obj\n<< /Type /Catalog /Pages 2 0 R >>\nendobj\n");
p.extend_from_slice(b"2 0 obj\n<< /Type /Pages /Kids [3 0 R] /Count 1 >>\nendobj\n");
p.extend_from_slice(b"3 0 obj\n<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Resources << >> /Contents 4 0 R >>\nendobj\n");
p.extend_from_slice(
b"4 0 obj\n<< /Length 36 >>\nstream\nBT /F1 24 Tf 72 720 Td (Hello) Tj ET\nendstream\nendobj\n",
);
assert_eq!(p.len(), 305, "xref must start at 305 — body length drifted");
p.extend_from_slice(b"xref\n0 5\n0000000000 65535 f \n");
for o in offs {
p.extend_from_slice(format!("{o:010} 00000 n \n").as_bytes());
}
p.extend_from_slice(b"trailer\n<< /Size 5 /Root 1 0 R >>\nstartxref\n305\n%%EOF\n");
p
}