Documentation 1.1.0

Constructor Options

This page lists every new pdf2image(options) option with its default and normalization rule.

Signature

new pdf2image(options?: {
  file?: ArrayBuffer;
  filename?: string;
  scale?: number;
  type?: "png" | "jpg" | "webp";
})

The constructor only stores options; it reads no file and makes no network request.

Options

Option Type Default Normalization Description
file ArrayBuffer undefined None Raw PDF data; pdf.js transfers it during conversion, which invalidates it (see Conversion)
filename string "" trim(), then the first .pdf is removed Base name for the ZIP and images; accepts yyyy / MM / DD / hh / mm (see ZIP Download)
scale number 1.5 Falsy values (including 0) fall back to 1.5 pdf.js viewport scale; output pixels = page pt × scale
type string "jpg" Anything other than png / jpg / webp falls back to "jpg" Output format; "jpg" actually produces PNG (see Conversion)

Normalization Examples

<script>
  const size = src => new Promise(r => {
    const img = new Image();
    img.onload = () => r(img.width + "x" + img.height);
    img.src = src;
  });
  addEventListener("load", async () => {
    const options = [{}, { scale: 0 }, { type: "gif" }, { type: "PNG" }];
    for (const extra of options) {
      const buffer = await (await fetch("/assets/sample.pdf")).arrayBuffer();
      const [first] = await new pdf2image({ file: buffer, ...extra }).convert();
      console.log(JSON.stringify(extra), "->", first.slice(5, first.indexOf(";")), await size(first));
    }
  });
</script>
Live preview · @pardnchiu/pdf2image@1.1.2

type matching is case-sensitive, so "PNG" also falls back to "jpg".

中文