Java/PDF RTF/Template
Содержание
Creating Image from template
<source lang="java">
import java.io.FileOutputStream; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.Image; import com.lowagie.text.PageSize; import com.lowagie.text.Phrase; import com.lowagie.text.pdf.BaseFont; import com.lowagie.text.pdf.PdfTemplate; import com.lowagie.text.pdf.PdfWriter; public class TemplateImagesPDF {
public static void main(String[] args) { Document document = new Document(PageSize.A4, 50, 50, 50, 50); try { PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("TemplateImagesPDF.pdf")); document.open(); PdfTemplate template = writer.getDirectContent().createTemplate(20, 20); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); String text = "Vertical"; float size = 16; float width = bf.getWidthPoint(text, size); template.beginText(); template.setFontAndSize(bf, size); template.setTextMatrix(0, 2); template.showText(text); template.endText(); template.setWidth(width); template.setHeight(size + 2); Image img = Image.getInstance(template); img.setRotationDegrees(90); document.add(new Phrase(new Chunk(img, 0, 0))); document.close(); } catch (Exception de) { System.err.println(de.getMessage()); } }
}
</source>
Template Images Scale Height
<source lang="java">
import java.io.FileOutputStream; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.Image; import com.lowagie.text.PageSize; import com.lowagie.text.Paragraph; import com.lowagie.text.Phrase; import com.lowagie.text.pdf.BaseFont; import com.lowagie.text.pdf.PdfTemplate; import com.lowagie.text.pdf.PdfWriter; public class TemplateImagesScaleHeightPDF {
public static void main(String[] args) { Document document = new Document(PageSize.A4, 50, 50, 50, 50); try { PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("TemplateImagesScaleHeightPDF.pdf")); document.open(); PdfTemplate template = writer.getDirectContent().createTemplate(20, 20); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); String text = "Vertical"; float size = 16; float width = bf.getWidthPoint(text, size); template.beginText(); template.setFontAndSize(bf, size); template.setTextMatrix(0, 2); template.showText(text); template.endText(); template.setWidth(width); template.setHeight(size + 2); Image img = Image.getInstance(template); img.setRotationDegrees(90); Paragraph p1 = new Paragraph("This is a template "); p1.add(new Phrase(new Chunk(img, 0, 0))); p1.setLeading(img.scaledHeight() * 1.1f); document.add(p1); document.close(); } catch (Exception de) { System.err.println(de.getMessage()); } }
}
</source>
Templates Draw
<source lang="java">
import java.io.FileOutputStream; import com.lowagie.text.Document; import com.lowagie.text.pdf.PdfContentByte; import com.lowagie.text.pdf.PdfTemplate; import com.lowagie.text.pdf.PdfWriter; public class TemplatesDrawPDF {
public static void main(String[] args) { Document document = new Document(); try { PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("TemplatesDrawPDF.pdf")); document.open(); PdfContentByte cb = writer.getDirectContent(); PdfTemplate template = cb.createTemplate(500, 200); template.moveTo(0, 200); template.lineTo(500, 0); template.stroke(); template.circle(250f, 100f, 80f); template.stroke(); cb.addTemplate(template, 0, 0); document.newPage(); cb.addTemplate(template, 2, 0, 0, 2, -200, 400); } catch (Exception e) { System.err.println(e.getMessage()); } document.close(); }
}
</source>
Templates: Text
<source lang="java">
import java.io.FileOutputStream; import com.lowagie.text.Document; import com.lowagie.text.pdf.BaseFont; import com.lowagie.text.pdf.PdfContentByte; import com.lowagie.text.pdf.PdfTemplate; import com.lowagie.text.pdf.PdfWriter; public class TemplatesTextPDF {
public static void main(String[] args) { Document document = new Document(); try { PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("TemplatesTextPDF.pdf")); document.open(); PdfContentByte cb = writer.getDirectContent(); PdfTemplate template = cb.createTemplate(500, 200); template.beginText(); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED); template.setFontAndSize(bf, 12); template.setTextMatrix(10, 10); template.showText("10,10 (relative to the template!)"); template.endText(); cb.addTemplate(template, 0, 0); document.newPage(); cb.addTemplate(template, 0, 0); cb.addTemplate(template, 2, 0, 0, 2, -200, 400); } catch (Exception e) { System.err.println(e.getMessage()); } document.close(); }
}
</source>