List of usage examples for com.lowagie.text.pdf PdfStructureElement PdfStructureElement
public PdfStructureElement(PdfStructureTreeRoot parent, PdfName structureType)
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
/** * *//*from www . j a va 2 s. c o m*/ protected void init(PdfContentByte pdfContentByte) { this.pdfContentByte = pdfContentByte; if (isTagged) { PdfStructureTreeRoot root = pdfWriter.getStructureTreeRoot(); allTag = new PdfStructureElement(root, new PdfName("All")); root.mapRole(new PdfName("All"), new PdfName("Sect")); if (pdfWriter.getPDFXConformance() == PdfWriter.PDFA1A) { root.mapRole(new PdfName("Anchor"), PdfName.NONSTRUCT); root.mapRole(PdfName.TEXT, PdfName.SPAN); root.mapRole(PdfName.IMAGE, PdfName.FIGURE); } else { root.mapRole(new PdfName("Anchor"), PdfName.TEXT); } if (language != null) { allTag.put(PdfName.LANG, new PdfString(language)); } tagStack = new Stack<PdfStructureElement>(); tagStack.push(allTag); } }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void startPageAnchor() { if (isTagged) { PdfStructureElement textTag = new PdfStructureElement(allTag, new PdfName("Anchor")); pdfContentByte.beginMarkedContentSequence(textTag); }/*from ww w. j a v a2 s . com*/ }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void startImage(JRPrintImage printImage) { if (isTagged) { PdfStructureElement imageTag = new PdfStructureElement(allTag, PdfName.IMAGE); pdfContentByte.beginMarkedContentSequence(imageTag); if (printImage.getHyperlinkTooltip() != null) { imageTag.put(PdfName.ALT, new PdfString(printImage.getHyperlinkTooltip())); }/* w w w . j av a 2 s . co m*/ } }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void startText() { if (isTagged) { // PdfStructureElement parentTag = tableCellTag == null ? (tableHeaderTag == null ? allTag : tableHeaderTag): tableCellTag; // PdfStructureElement textTag = new PdfStructureElement(parentTag, PdfName.TEXT); PdfStructureElement textTag = new PdfStructureElement(tagStack.peek(), PdfName.TEXT); pdfContentByte.beginMarkedContentSequence(textTag); }/*w ww.ja v a 2s. c om*/ }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void createStartTags(JRPrintElement element) { if (element.hasProperties()) { String prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TABLE); if (prop != null && (TAG_START.equals(prop) || TAG_FULL.equals(prop))) { createTableStartTag();//www.ja v a 2s . co m } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TR); if (prop != null && (TAG_START.equals(prop) || TAG_FULL.equals(prop))) { createTrStartTag(); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TH); if (prop != null && (TAG_START.equals(prop) || TAG_FULL.equals(prop))) { createThStartTag(element); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TD); if (prop != null && (TAG_START.equals(prop) || TAG_FULL.equals(prop))) { createTdStartTag(element); } prop = element.getPropertiesMap().getProperty(JRCellContents.PROPERTY_TYPE); if (prop != null && (JRCellContents.TYPE_CROSSTAB_HEADER.equals(prop) || JRCellContents.TYPE_COLUMN_HEADER.equals(prop) || JRCellContents.TYPE_ROW_HEADER.equals(prop))) { createThStartTag(element); } if (prop != null && (JRCellContents.TYPE_DATA.equals(prop))) { createTdStartTag(element); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_H1); if (prop != null && (TAG_START.equals(prop) || TAG_FULL.equals(prop))) { PdfStructureElement headingTag = new PdfStructureElement(tagStack.peek(), new PdfName("H1")); pdfContentByte.beginMarkedContentSequence(headingTag); headingTag.put(PdfName.K, new PdfArray()); tagStack.push(headingTag); isTagEmpty = true; } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_H2); if (prop != null && (TAG_START.equals(prop) || TAG_FULL.equals(prop))) { PdfStructureElement headingTag = new PdfStructureElement(tagStack.peek(), new PdfName("H2")); pdfContentByte.beginMarkedContentSequence(headingTag); headingTag.put(PdfName.K, new PdfArray()); tagStack.push(headingTag); isTagEmpty = true; } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_H3); if (prop != null && (TAG_START.equals(prop) || TAG_FULL.equals(prop))) { PdfStructureElement headingTag = new PdfStructureElement(tagStack.peek(), new PdfName("H3")); pdfContentByte.beginMarkedContentSequence(headingTag); headingTag.put(PdfName.K, new PdfArray()); tagStack.push(headingTag); isTagEmpty = true; } } }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void createTableStartTag() { PdfStructureElement tableTag = new PdfStructureElement(allTag, new PdfName("Table")); pdfContentByte.beginMarkedContentSequence(tableTag); tableTag.put(PdfName.K, new PdfArray()); tagStack.push(tableTag);//ww w.j a v a2s. co m }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void createTrStartTag() { PdfStructureElement tableRowTag = new PdfStructureElement(tagStack.peek(), new PdfName("TR")); pdfContentByte.beginMarkedContentSequence(tableRowTag); tableRowTag.put(PdfName.K, new PdfArray()); tagStack.push(tableRowTag);//from w w w .j a v a2s .c om }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void createThStartTag(JRPrintElement element) { PdfStructureElement tableHeaderTag = new PdfStructureElement(tagStack.peek(), new PdfName("TH")); pdfContentByte.beginMarkedContentSequence(tableHeaderTag); tableHeaderTag.put(PdfName.K, new PdfArray()); tagStack.push(tableHeaderTag);/*from w ww .ja va 2 s . c o m*/ isTagEmpty = true; createSpanTags(element, tableHeaderTag); }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void createTdStartTag(JRPrintElement element) { PdfStructureElement tableCellTag = new PdfStructureElement(tagStack.peek(), new PdfName("TD")); pdfContentByte.beginMarkedContentSequence(tableCellTag); tableCellTag.put(PdfName.K, new PdfArray()); tagStack.push(tableCellTag);/* w ww . j a v a 2s . c o m*/ isTagEmpty = true; createSpanTags(element, tableCellTag); }
From source file:net.sf.jasperreports.engine.export.JRPdfExporterTagHelper.java
License:Open Source License
protected void createEndTags(JRPrintElement element)// throws DocumentException, IOException, JRException { if (element.hasProperties()) { String prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TABLE); if (prop != null && (TAG_END.equals(prop) || TAG_FULL.equals(prop))) { pdfContentByte.endMarkedContentSequence(); tagStack.pop();// www .j av a2 s.co m } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TR); if (prop != null && (TAG_END.equals(prop) || TAG_FULL.equals(prop))) { pdfContentByte.endMarkedContentSequence(); tagStack.pop(); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TH); if (prop != null && (TAG_END.equals(prop) || TAG_FULL.equals(prop))) { pdfContentByte.endMarkedContentSequence(); if (isTagEmpty) { pdfContentByte .beginMarkedContentSequence(new PdfStructureElement(tagStack.peek(), PdfName.SPAN)); pdfContentByte.endMarkedContentSequence(); } tagStack.pop(); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_TD); if (prop != null && (TAG_END.equals(prop) || TAG_FULL.equals(prop))) { pdfContentByte.endMarkedContentSequence(); if (isTagEmpty) { pdfContentByte .beginMarkedContentSequence(new PdfStructureElement(tagStack.peek(), PdfName.SPAN)); pdfContentByte.endMarkedContentSequence(); } tagStack.pop(); } prop = element.getPropertiesMap().getProperty(JRCellContents.PROPERTY_TYPE); if (prop != null && (JRCellContents.TYPE_CROSSTAB_HEADER.equals(prop) || JRCellContents.TYPE_COLUMN_HEADER.equals(prop) || JRCellContents.TYPE_ROW_HEADER.equals(prop) || JRCellContents.TYPE_DATA.equals(prop))) { pdfContentByte.endMarkedContentSequence(); if (isTagEmpty) { pdfContentByte .beginMarkedContentSequence(new PdfStructureElement(tagStack.peek(), PdfName.SPAN)); pdfContentByte.endMarkedContentSequence(); } tagStack.pop(); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_H1); if (prop != null && (TAG_END.equals(prop) || TAG_FULL.equals(prop))) { pdfContentByte.endMarkedContentSequence(); if (isTagEmpty) { pdfContentByte .beginMarkedContentSequence(new PdfStructureElement(tagStack.peek(), PdfName.SPAN)); pdfContentByte.endMarkedContentSequence(); } tagStack.pop(); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_H2); if (prop != null && (TAG_END.equals(prop) || TAG_FULL.equals(prop))) { pdfContentByte.endMarkedContentSequence(); if (isTagEmpty) { pdfContentByte .beginMarkedContentSequence(new PdfStructureElement(tagStack.peek(), PdfName.SPAN)); pdfContentByte.endMarkedContentSequence(); } tagStack.pop(); } prop = element.getPropertiesMap().getProperty(PROPERTY_TAG_H3); if (prop != null && (TAG_END.equals(prop) || TAG_FULL.equals(prop))) { pdfContentByte.endMarkedContentSequence(); if (isTagEmpty) { pdfContentByte .beginMarkedContentSequence(new PdfStructureElement(tagStack.peek(), PdfName.SPAN)); pdfContentByte.endMarkedContentSequence(); } tagStack.pop(); } } }