Java/PDF RTF/Chunk Text
Содержание
Chunk style: LINE_CAP_ROUND
<source lang="java">
import java.awt.Color; import java.io.FileOutputStream; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.pdf.PdfContentByte; import com.lowagie.text.pdf.PdfWriter; public class LINECAPROUNDPDF {
public static void main(String[] args) { Document document = new Document(); try { PdfWriter.getInstance(document, new FileOutputStream("LINECAPROUNDPDF.pdf")); document.open(); Chunk chunk; chunk = new Chunk("Multiple lines"); chunk.setUnderline(new Color(0xFF, 0x00, 0x00), 0.0f, 0.3f, 0.0f, 0.4f, PdfContentByte.LINE_CAP_ROUND); document.add(chunk); } catch (Exception ioe) { System.err.println(ioe.getMessage()); } document.close(); }
}
</source>
LINE_CAP_PROJECTING_SQUARE and LINE_CAP_BUTT
<source lang="java">
import java.awt.Color; import java.io.FileOutputStream; import java.io.IOException; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.FontFactory; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.PdfContentByte; import com.lowagie.text.pdf.PdfWriter; public class LINE_CAP_PROJECTING_SQUARE_and_LINE_CAP_BUTT {
public static void main(String[] args) { Document document = new Document(); try { PdfWriter.getInstance(document, new FileOutputStream("LINE_CAP_PROJECTING_SQUARE_and_LINE_CAP_BUTT.pdf")); document.open();
Chunk c = new Chunk("Multiple lines", FontFactory.getFont(FontFactory.HELVETICA, 24)); c.setUnderline(new Color(0x00, 0xFF, 0x00), 5.0f, 0.0f, 0.0f, -0.5f, PdfContentByte.LINE_CAP_PROJECTING_SQUARE); c.setUnderline(new Color(0x00, 0x00, 0xFF), 0.0f, 0.2f, 15.0f, 0.0f, PdfContentByte.LINE_CAP_BUTT); document.add(c); } catch (Exception ioe) { System.err.println(ioe.getMessage()); } document.close(); }
}
</source>
Multiple Lined Text
<source lang="java">
import java.awt.Color; import java.io.FileOutputStream; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.pdf.PdfContentByte; import com.lowagie.text.pdf.PdfWriter; public class MultipleLinedTextPDF {
public static void main(String[] args) { Document document = new Document(); try { PdfWriter.getInstance(document, new FileOutputStream("MultipleLinedTextPDF.pdf")); document.open(); Chunk chunk; chunk = new Chunk("Multiple lines"); chunk.setUnderline(new Color(0xFF, 0x00, 0x00), 0.0f, 0.3f, 0.0f, 0.4f, PdfContentByte.LINE_CAP_ROUND); chunk.setUnderline(new Color(0x00, 0xFF, 0x00), 3.0f, 0.0f, 0.0f, -0.5f, PdfContentByte.LINE_CAP_PROJECTING_SQUARE); chunk.setUnderline(new Color(0x00, 0x00, 0xFF), 0.0f, 0.2f, 15.0f, 0.0f, PdfContentByte.LINE_CAP_BUTT); document.add(chunk); } catch (Exception ioe) { System.err.println(ioe.getMessage()); } document.close(); }
}
</source>
Text Background
<source lang="java">
import java.awt.Color; import java.io.FileOutputStream; import java.io.IOException; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.FontFactory; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.PdfWriter; public class TextBackgroundPDF {
public static void main(String[] args) { Document document = new Document(); try { PdfWriter.getInstance(document,new FileOutputStream("TextBackgroundPDF.pdf")); document.open(); Chunk high = new Chunk("highlighted"); high.setBackground(new Color(0xFF, 0x00, 0x00)); Paragraph p = new Paragraph("The following chunk is "); p.add(high); document.add(p); } catch (Exception ioe) { System.err.println(ioe.getMessage()); } document.close(); }
}
</source>
Vertical Text
<source lang="java">
import java.io.FileOutputStream; import com.lowagie.text.Document; import com.lowagie.text.Image; import com.lowagie.text.PageSize; import com.lowagie.text.pdf.BaseFont; import com.lowagie.text.pdf.PdfPCell; import com.lowagie.text.pdf.PdfPTable; import com.lowagie.text.pdf.PdfTemplate; import com.lowagie.text.pdf.PdfWriter; public class VerticalTextPDF {
public static void main(String[] args) { Document document = new Document(PageSize.A4, 50, 50, 50, 50); try { PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("VerticalTextPDF.pdf")); document.open(); PdfTemplate template = writer.getDirectContent().createTemplate(20, 20); BaseFont bf = BaseFont.createFont("Helvetica", "winansi", false); 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); Image img = Image.getInstance(template); img.setRotationDegrees(90); PdfPTable table = new PdfPTable(1); table.addCell(new PdfPCell(img)); document.add(table); } catch (Exception de) { de.printStackTrace(); } document.close(); }
}
</source>