use of com.itextpdf.layout.hyphenation.HyphenationConfig in project i7js-highlevel by itext.
the class JekyllHydeV6 method createPdf.
public void createPdf(String dest) throws IOException {
// Initialize PDF document
PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
// Initialize document
Document document = new Document(pdf, PageSize.A4);
// Set column parameters
float offSet = 27;
float gutter = 18;
float columnWidth = (PageSize.A4.getWidth() - offSet * 2) / 3 - gutter;
float columnHeight = PageSize.A4.getHeight() - offSet * 2;
// Define column areas
Rectangle[] columns = { new Rectangle(offSet + gutter * 0.5f, offSet, columnWidth, columnHeight), new Rectangle(offSet + columnWidth + gutter * 1.5f, offSet, columnWidth, columnHeight), new Rectangle(offSet + columnWidth * 2 + gutter * 2.5f, offSet, columnWidth, columnHeight) };
document.setRenderer(new ColumnDocumentRenderer(document, columns));
PdfFont font = PdfFontFactory.createFont(StandardFonts.TIMES_ROMAN);
PdfFont bold = PdfFontFactory.createFont(StandardFonts.HELVETICA_BOLD);
document.setTextAlignment(TextAlignment.JUSTIFIED).setHyphenation(new HyphenationConfig("en", "uk", 3, 3));
BufferedReader br = new BufferedReader(new FileReader(SRC));
boolean chapter = false;
Div div = new Div();
AreaBreak areaBreak = new AreaBreak(AreaBreakType.NEXT_AREA);
String line;
while ((line = br.readLine()) != null) {
div = new Div().setFont(font).setFontSize(11).setMarginBottom(18);
div.add(new Paragraph(line).setFont(bold).setFontSize(12).setMarginBottom(0));
while ((line = br.readLine()) != null) {
div.add(new Paragraph(line).setMarginBottom(0).setFirstLineIndent(36));
if (line.isEmpty()) {
document.add(div);
if (chapter) {
document.add(areaBreak);
}
div = new Div();
chapter = true;
break;
}
}
}
document.add(div);
// Close document
document.close();
}
use of com.itextpdf.layout.hyphenation.HyphenationConfig in project i7js-highlevel by itext.
the class CanvasLayoutMethods method createPdf.
public void createPdf(String dest) throws IOException {
// Initialize PDF document
PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
PdfPage page = pdf.addNewPage();
PdfCanvas pdfCanvas = new PdfCanvas(page);
Rectangle rectangle = new Rectangle(36, 36, 523, 770);
Canvas canvas = new Canvas(pdfCanvas, rectangle);
Paragraph p;
p = new Paragraph("Testing layout methods");
canvas.add(p);
canvas.setTextAlignment(TextAlignment.CENTER);
p = new Paragraph("Testing layout methods");
canvas.add(p);
p = new Paragraph();
for (int i = 0; i < 6; i++) p.add("singing supercalifragilisticexpialidocious ");
canvas.add(p);
canvas.setHyphenation(new HyphenationConfig("en", "uk", 3, 3));
canvas.add(p);
canvas.setTextAlignment(TextAlignment.JUSTIFIED);
canvas.add(p);
canvas.setHyphenation(null);
canvas.setSplitCharacters(new ISplitCharacters() {
public boolean isSplitCharacter(GlyphLine text, int glyphPos) {
if (!text.get(glyphPos).hasValidUnicode()) {
return false;
}
int charCode = text.get(glyphPos).getUnicode();
return (charCode < ' ' || charCode == 'i');
}
});
canvas.add(p);
canvas.setSplitCharacters(new DefaultSplitCharacters());
canvas.setTextAlignment(TextAlignment.LEFT);
canvas.add(p);
canvas.setWordSpacing(10);
canvas.add(p);
canvas.setCharacterSpacing(5);
canvas.add(p);
// Close document
pdf.close();
}
use of com.itextpdf.layout.hyphenation.HyphenationConfig in project i7js-highlevel by itext.
the class DocumentLayoutMethods method createPdf.
public void createPdf(String dest) throws IOException {
// Initialize PDF document
PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
// Initialize document
Document document = new Document(pdf);
Paragraph p;
p = new Paragraph("Testing layout methods");
document.add(p);
document.setTextAlignment(TextAlignment.CENTER);
p = new Paragraph("Testing layout methods");
document.add(p);
p = new Paragraph();
for (int i = 0; i < 6; i++) p.add("singing supercalifragilisticexpialidocious ");
document.add(p);
document.setHyphenation(new HyphenationConfig("en", "uk", 3, 3));
document.add(p);
document.setTextAlignment(TextAlignment.JUSTIFIED);
document.add(p);
document.setHyphenation(null);
document.setSplitCharacters(new ISplitCharacters() {
public boolean isSplitCharacter(GlyphLine text, int glyphPos) {
if (!text.get(glyphPos).hasValidUnicode()) {
return false;
}
int charCode = text.get(glyphPos).getUnicode();
return (charCode < ' ' || charCode == 'i');
}
});
document.add(p);
document.setSplitCharacters(new DefaultSplitCharacters());
document.setTextAlignment(TextAlignment.LEFT);
document.add(p);
document.setWordSpacing(10);
document.add(p);
document.setCharacterSpacing(5);
document.add(p);
// Close document
document.close();
}
use of com.itextpdf.layout.hyphenation.HyphenationConfig in project i7js-highlevel by itext.
the class JekyllHydeV7 method createPdf.
public void createPdf(String dest) throws IOException {
// Initialize PDF document
PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
// Initialize document
Document document = new Document(pdf, PageSize.A4);
// Set column parameters
float offSet = 27;
float gutter = 18;
float columnWidth = (PageSize.A4.getWidth() - offSet * 2) / 3 - gutter;
float columnHeight = PageSize.A4.getHeight() - offSet * 2;
// Define column areas
Rectangle[] columns = { new Rectangle(offSet + gutter * 0.5f, offSet, columnWidth, columnHeight), new Rectangle(offSet + columnWidth + gutter * 1.5f, offSet, columnWidth, columnHeight), new Rectangle(offSet + columnWidth * 2 + gutter * 2.5f, offSet, columnWidth, columnHeight) };
document.setRenderer(new ColumnDocumentRenderer(document, columns));
PdfFont font = PdfFontFactory.createFont(StandardFonts.TIMES_ROMAN);
PdfFont bold = PdfFontFactory.createFont(StandardFonts.HELVETICA_BOLD);
document.setTextAlignment(TextAlignment.JUSTIFIED).setHyphenation(new HyphenationConfig("en", "uk", 3, 3));
BufferedReader br = new BufferedReader(new FileReader(SRC));
boolean chapter = false;
Div div = new Div();
AreaBreak areaBreak = new AreaBreak(AreaBreakType.NEXT_PAGE);
String line;
while ((line = br.readLine()) != null) {
div = new Div().setFont(font).setFontSize(11).setMarginBottom(18);
div.add(new Paragraph(line).setFont(bold).setFontSize(12).setMarginBottom(0));
while ((line = br.readLine()) != null) {
div.add(new Paragraph(line).setMarginBottom(0).setFirstLineIndent(36));
if (line.isEmpty()) {
document.add(div);
if (chapter) {
document.add(areaBreak);
}
div = new Div();
chapter = true;
break;
}
}
}
document.add(div);
// Close document
document.close();
}
use of com.itextpdf.layout.hyphenation.HyphenationConfig in project i7js-highlevel by itext.
the class C06E10_TOC_OutlinesNames method createPdf.
public void createPdf(String dest) throws IOException {
// Initialize PDF document
PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
pdf.getCatalog().setPageMode(PdfName.UseOutlines);
// Initialize document
Document document = new Document(pdf);
PdfFont font = PdfFontFactory.createFont(StandardFonts.TIMES_ROMAN);
PdfFont bold = PdfFontFactory.createFont(StandardFonts.HELVETICA_BOLD);
document.setTextAlignment(TextAlignment.JUSTIFIED).setHyphenation(new HyphenationConfig("en", "uk", 3, 3)).setFont(font).setFontSize(11);
BufferedReader br = new BufferedReader(new FileReader(SRC));
String name, line;
Paragraph p;
boolean title = true;
int counter = 0;
PdfOutline outline = null;
while ((line = br.readLine()) != null) {
p = new Paragraph(line);
p.setKeepTogether(true);
if (title) {
name = String.format("title%02d", counter++);
outline = createOutline(outline, pdf, line, name);
p.setFont(bold).setFontSize(12).setKeepWithNext(true).setDestination(name);
title = false;
document.add(p);
} else {
p.setFirstLineIndent(36);
if (line.isEmpty()) {
p.setMarginBottom(12);
title = true;
} else {
p.setMarginBottom(0);
}
document.add(p);
}
}
// Close document
document.close();
}
Aggregations