// Position stamp: bottom-right, 72 pts from edges var x = pageWidth - 100; var y = 72; var width = 80; var height = 30;
// Save CSV file var fname = doc.path.replace(".pdf", "_formdata.csv"); var outfile = util.printd("yyyy-mm-dd", new Date()) + "_data.csv"; try var stream = util.streamFromString(output); var dest = "/c/temp/" + outfile; // adjust path as needed var out = util.writeToFile(stream, dest); if (out) app.alert("Data saved to " + dest); else app.alert("Save failed. Check folder permissions."); catch(e) app.alert("Error: " + e.message); pdf xchange editor javascript example
// Extract form data to CSV var doc = this; var fields = doc.getFieldNames(); var output = "Field Name, Value\n"; for (var i = 0; i < fields.length; i++) var f = doc.getField(fields[i]); var val = f.value; // Handle arrays (e.g., checkboxes, list boxes) if (Array.isArray(val)) val = val.join("; "); output += """ + fields[i] + "","" + val + ""\n"; // Position stamp: bottom-right, 72 pts from edges
rect = [x, y, x + width, y + height];
// Add rubber stamp annotation var stamp = doc.addAnnot( type: "Stamp", page: i, rect: rect, name: "Approved", // built-in stamp name appearance: "Approved", // stamp appearance text: "APPROVED", rotation: 0, opacity: 0.9 ); // Position stamp: bottom-right