Java/PDF RTF/Chunk Text
Содержание
Chunk style: LINE_CAP_ROUND
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();
}
}
LINE_CAP_PROJECTING_SQUARE and LINE_CAP_BUTT
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();
}
}
Multiple Lined Text
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();
}
}
Text Background
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();
}
}
Vertical Text
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();
}
}