Java/PDF RTF/Chunk Text

Материал из Java эксперт
Перейти к: навигация, поиск

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>