List of usage examples for com.lowagie.text.pdf PdfStamper partialFormFlattening
public boolean partialFormFlattening(String name)
name
to the list of fields that will be flattened on close, all the other fields will remain. From source file:com.ikon.util.PDFUtils.java
License:Open Source License
/** * Fill PDF form//ww w . j av a 2 s . c o m */ @SuppressWarnings("rawtypes") public static void fillForm(InputStream input, Map<String, Object> values, OutputStream output) throws FileNotFoundException, DocumentException, TemplateException, IOException { log.debug("fillForm({}, {}, {})", new Object[] { input, values, output }); PdfReader reader = new PdfReader(input); PdfStamper stamper = new PdfStamper(reader, output); AcroFields fields = stamper.getAcroFields(); PRAcroForm form = reader.getAcroForm(); boolean formFlattening = false; if (form != null) { for (Iterator it = form.getFields().iterator(); it.hasNext();) { PRAcroForm.FieldInformation field = (PRAcroForm.FieldInformation) it.next(); String fieldValue = fields.getField(field.getName()); log.debug("Field: {}, Value: '{}'", field.getName(), fieldValue); if (fieldValue != null && !fieldValue.isEmpty()) { // if (values.containsKey(field.getName())) { String result = TemplateUtils.replace("PDF_FILL_FORM", fieldValue, values); log.debug("Field '{}' set to '{}' (by expression)", field.getName(), result); fields.setField(field.getName(), result); stamper.partialFormFlattening(field.getName()); formFlattening = true; //} else { //log.warn("Field '{}' (expression ignored because not included in map)", field.getName()); //} } else { Object value = values.get(field.getName()); if (value != null) { log.debug("Field '{}' set to '{}' (by field name)", field.getName(), value); fields.setField(field.getName(), value.toString()); stamper.partialFormFlattening(field.getName()); formFlattening = true; } else { log.warn("Field '{}' (value ignored because not included in map)", field.getName()); } } } } stamper.setFormFlattening(formFlattening); stamper.close(); reader.close(); }
From source file:com.openkm.util.PDFUtils.java
License:Open Source License
/** * Fill PDF form//w w w.ja va 2 s . c om */ @SuppressWarnings("rawtypes") public static void fillForm(InputStream input, Map<String, Object> values, OutputStream output) throws FileNotFoundException, DocumentException, TemplateException, IOException { log.debug("fillForm({}, {}, {})", new Object[] { input, values, output }); PdfReader reader = new PdfReader(input); PdfStamper stamper = new PdfStamper(reader, output); AcroFields fields = stamper.getAcroFields(); PRAcroForm form = reader.getAcroForm(); boolean formFlattening = false; if (form != null) { for (Iterator it = form.getFields().iterator(); it.hasNext();) { PRAcroForm.FieldInformation field = (PRAcroForm.FieldInformation) it.next(); String fieldValue = fields.getField(field.getName()); log.debug("Field: {}, Value: '{}'", field.getName(), fieldValue); if (fieldValue != null && !fieldValue.isEmpty()) { // if (values.containsKey(field.getName())) { String result = TemplateUtils.replace("PDF_FILL_FORM", fieldValue, values); log.debug("Field '{}' set to '{}' (by expression)", field.getName(), result); fields.setFieldProperty(field.getName(), "textfont", getBaseFont(), null); fields.setField(field.getName(), result); stamper.partialFormFlattening(field.getName()); formFlattening = true; // } else { // log.warn("Field '{}' (expression ignored because not included in map)", field.getName()); // } } else { Object value = values.get(field.getName()); if (value != null) { log.debug("Field '{}' set to '{}' (by field name)", field.getName(), value); fields.setFieldProperty(field.getName(), "textfont", getBaseFont(), null); fields.setField(field.getName(), value.toString()); stamper.partialFormFlattening(field.getName()); formFlattening = true; } else { log.warn("Field '{}' (value ignored because not included in map)", field.getName()); } } } } stamper.setFormFlattening(formFlattening); stamper.close(); reader.close(); }
From source file:org.openelis.bean.WorksheetPrintReportBean.java
License:Open Source License
private void flattenFilledFields(PdfStamper stamper, AcroFields form, int formCapacity, int pageNumber) { int i;// www . j a v a2 s .c o m for (i = 1; i <= formCapacity; i++) { stamper.partialFormFlattening("current_date_time_page" + pageNumber); stamper.partialFormFlattening("username_page" + pageNumber); stamper.partialFormFlattening("worksheet_id_" + i + "_page" + pageNumber); stamper.partialFormFlattening("created_date_" + i + "_page" + pageNumber); form.setFieldProperty("position_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("well_label_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("accession_number_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("qc_link_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("collection_date_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("received_date_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("patient_last_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("patient_first_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("provider_last_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("provider_first_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("env_location_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("env_description_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("organization_name_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("bill_to_name_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("type_of_sample_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("source_of_sample_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("source_other_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("container_reference_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("test_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("method_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("sample_qaevent_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("analysis_qaevent_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("sample_note_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("analysis_note_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("qc_name_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("qc_lot_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("qc_usable_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("qc_expiration_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("qc_expected_value_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("reagent_media_name_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("reagent_media_lot_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); form.setFieldProperty("reagent_media_expiration_" + i + "_page" + pageNumber, "setfflags", PdfFormField.FF_READ_ONLY, null); } }
From source file:questions.forms.RemoveXfa.java
@SuppressWarnings("unchecked") public static void main(String[] args) { try {//from w w w. ja v a 2s . c om PdfReader reader = new PdfReader(RESOURCE); PdfDictionary root = reader.getCatalog(); PdfDictionary acroform = root.getAsDict(PdfName.ACROFORM); acroform.remove(PdfName.XFA); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(RESULT)); AcroFields form = stamper.getAcroFields(); Map<String, Item> fields = form.getFields(); for (String field : fields.keySet()) { System.out.println(field); form.setField(field, "value"); } stamper.partialFormFlattening("topmostSubform[0].Page1[0].SN_NUMBER[0]"); stamper.setFormFlattening(true); stamper.close(); } catch (IOException e) { e.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } }