Přeskočit obsah

Příklady

Kompletní skripty k přizpůsobení. Všechny používají reálné API z předchozích stránek.

Sedlová brožura (nahrané)

Takový skript produkuje GUI recorder.

imposio.setUnits("mm");
var doc = imposio.open("/jobs/brochure.pdf");

doc.setImposition({
  sheet:  { preset: "Auto", portrait: true, width: 320, height: 450 },
  layout: { type: "Booklet", autoMode: "FitSheetToGrid",
            cols: 2, rows: 2, order: "Z", scale: "None", placedRotation: "Auto",
            gutterAuto: true, marginTop: 6, marginBottom: 6, marginLeft: 6, marginRight: 6 },
  source: { mode: "all" },
  cropMarks: { enabled: true, length: 4, weight: 0.088, sides: "firstpage" },
  booklet: { foldScheme: "4pp", bindingEdge: "left", duplexFlip: "short" },
  output: { profile: "rasterized", dpi: 600 }
});

var out = doc.generateImposition();
out.save("/jobs/brochure_booklet.pdf", { autoIndex: true });

Dávkové zpracování seznamu souborů

Engine nemá výpis složky, takže ho řiďte polem cest.

imposio.setUnits("mm");
var files = ["/jobs/a.pdf", "/jobs/b.pdf", "/jobs/c.pdf"];

for (var i = 0; i < files.length; i++) {
  var d = imposio.open(files[i]);
  if (!d || !d.isValid()) continue;

  d.setImposition({
    layout:    { type: "Booklet" },
    booklet:   { foldScheme: "4pp", bindingEdge: "left" },
    cropMarks: { enabled: true }
  });

  var out = d.generateImposition();
  out.save(files[i].replace(".pdf", "_imposed.pdf"), { autoIndex: true });
}

Arch vizitek N-up

imposio.setUnits("mm");
var d = imposio.open("/jobs/card.pdf");

d.setImposition({
  sheet:  { preset: "SRA3", portrait: false },
  layout: { type: "NUp", autoMode: "FitGridToSheet", scale: "None",
            gutterH: 3, gutterV: 3,
            marginTop: 10, marginBottom: 10, marginLeft: 10, marginRight: 10 },
  cropMarks: { enabled: true, sides: "both" }
});

d.generateImposition().save("/jobs/cards_sheet.pdf");

Rasterizace do CMYK a export TIFF

imposio.setUnits("mm");
var d = imposio.open("/jobs/flyer.pdf");

d.rasterizePages("all", { dpi: 300, cmyk: true, intent: "relative" });
d.exportImage("/jobs/out/", { format: "tiff", dpi: 300, box: "trim", multipageTiff: true });

Sestavení strany přes editační vrstvu

imposio.setUnits("mm");
var d = imposio.newDocument(210, 297);

d.addRect(0, 10, 10, 190, 277, { stroke: "#000000", fill: "none", widthPt: 0.5 });
d.addText(0, 20, 250, 170, 20, "PROOF", { fontSizePt: 24, align: "center", bold: true });

d.save("/jobs/proof.pdf");

Údržba stran

imposio.setUnits("mm");
var d = imposio.open("/jobs/scan.pdf");

d.rotatePages("odd", 90);
d.deletePages("1");
d.addBlankPage(-1, 210, 297);
d.setMetadata({ title: "Cleaned scan", author: "Imposio" });
d.save("/jobs/scan_clean.pdf", { autoIndex: true });

Vyplnění PDF formuláře

var d = imposio.open("/forms/application.pdf");

// Přehled polí
for (var f of d.formFields())
  console.log(f.name + " (" + f.type + ") = " + f.value);

// Vyplnění — text, checkbox, radio, choice
d.setFormFields({
  full_name: "Jane Smith",
  agree:     true,
  delivery:  "/express",
  country:   "Slovakia"
});

d.save("/forms/application_filled.pdf");