n8n-nodes-doc-fill-handwritten-finalyy
Version:
Custom n8n node to fill PDF forms with handwritten.ttf font
52 lines • 1.7 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.fillForm = exports.isPDFDocument = void 0;
const isPDFDocument = (data) => data.mimeType === 'application/pdf';
exports.isPDFDocument = isPDFDocument;
const fillForm = (pdfForm, config, customFont) => {
switch (config.type) {
case 'textfield': {
const pdfTextField = pdfForm.getTextField(config.key);
fillFormTextField(pdfTextField, config, customFont);
break;
}
case 'checkbox': {
const pdfCheckBox = pdfForm.getCheckBox(config.key);
fillFormCheckbox(pdfCheckBox, config);
break;
}
case 'dropdown': {
const pdfDropdown = pdfForm.getDropdown(config.key);
fillFormDropdown(pdfDropdown, config);
break;
}
case 'radiogroup': {
const pdfRadioGroup = pdfForm.getRadioGroup(config.key);
fillFormRadioGroup(pdfRadioGroup, config);
break;
}
}
};
exports.fillForm = fillForm;
const fillFormTextField = (pdfTextField, config, customFont) => {
pdfTextField.setText(config.value);
if (customFont) {
pdfTextField.setFontSize(12);
pdfTextField.updateAppearances(customFont);
}
};
const fillFormCheckbox = (pdfCheckBox, config) => {
if (config.value === 'true') {
pdfCheckBox.check();
}
else {
pdfCheckBox.uncheck();
}
};
const fillFormDropdown = (pdfDropdown, config) => {
pdfDropdown.select(config.value);
};
const fillFormRadioGroup = (pdfRadioGroup, config) => {
pdfRadioGroup.select(config.value);
};
//# sourceMappingURL=DocFillUtils.js.map