iText - ustawienie czcionki
W tym rozdziale zobaczymy, jak ustawić kolor i czcionkę w tekście w dokumencie PDF za pomocą biblioteki iText.
Ustawianie czcionki tekstu w pliku PDF
Możesz utworzyć pusty dokument PDF, tworząc wystąpienie Documentklasa. Podczas tworzenia instancji tej klasy musisz przekazać plikPdfDocument obiekt jako parametr jego konstruktora.
Aby dodać akapit do dokumentu, musisz utworzyć wystąpienie Paragraph i dodaj ten obiekt do dokumentu przy użyciu rozszerzenia add()metoda. Możesz ustawić kolor i czcionkę tekstu za pomocą tych metodsetFontColor() i setFont() odpowiednio.
Poniżej przedstawiono kroki, aby ustawić kolor i czcionkę w tekście w dokumencie PDF.
Krok 1: Tworzenie obiektu PdfWriter
Plik PdfWriterreprezentuje DocWriter dla pliku PDF. Ta klasa należy do pakietucom.itextpdf.kernel.pdf. Konstruktor tej klasy akceptuje ciąg znaków reprezentujący ścieżkę do pliku, w którym ma zostać utworzony plik PDF.
Utwórz wystąpienie klasy PdfWriter, przekazując wartość ciągu (reprezentującą ścieżkę, w której należy utworzyć plik PDF) do jej konstruktora, jak pokazano poniżej.
// Creating a PdfWriter
String dest = "C:/itextExamples/fonts.pdf";
PdfWriter writer = new PdfWriter(dest);
Gdy obiekt tego typu jest przekazywany do PdfDocument (klasy), każdy element dodany do tego dokumentu zostanie zapisany w określonym pliku.
Krok 2: Tworzenie dokumentu PdfDocument
Plik PdfDocumentclass to klasa reprezentująca dokument PDF w iText. Ta klasa należy do pakietucom.itextpdf.kernel.pdf. Aby utworzyć instancję tej klasy (w trybie pisania), musisz przekazać obiekt tej klasyPdfWriter do swojego konstruktora.
Utwórz wystąpienie klasy PdfDocument, przekazując obiekt PdfWriter do jej konstruktora, jak pokazano poniżej.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
Po utworzeniu obiektu PdfDocument można dodać różne elementy, takie jak strona, czcionka, załącznik do pliku i moduł obsługi zdarzeń, używając odpowiednich metod udostępnionych przez jego klasę.
Krok 3: Tworzenie klasy Document
Plik Document klasa pakietu com.itextpdf.layoutjest elementem głównym podczas tworzenia samowystarczalnego pliku PDF. Jeden z konstruktorów tej klasy akceptuje obiekt klasy PdfDocument.
Utwórz wystąpienie klasy Document, przekazując obiekt tej klasy PdfDocument utworzone w poprzednich krokach, jak pokazano poniżej.
// Creating a Document
Document document = new Document(pdfDoc);
Krok 4: Tworzenie tekstu
Utwórz tekst, tworząc wystąpienie Text klasa pakietu com.itextpdf.layout.element jak pokazano niżej.
// Creating text object
Text text = new Text("Tutorialspoint");
Krok 5: Ustawienie czcionki i koloru tekstu
Utwórz plik PdfFont obiekt za pomocą createFont() metoda zajęć PdfFontFactory pakietu com.itextpdf.kernel.font jak pokazano niżej
// Setting font of the text PdfFont
font = PdfFontFactory.createFont(FontConstants.HELVETICA_BOLD);
Teraz ustaw czcionkę na tekst za pomocą setFont() metoda Textklasę do tej metody. PrzekażPdfFont obiekt jako parametr, jak pokazano poniżej.
text1.setFont(font);
Aby ustawić kolor tekstu, wywołaj setFontColor() metoda klasy Text, jak pokazano poniżej.
// Setting font color
text.setFontColor(Color.GREEN);
Krok 6: Dodawanie tekstu do akapitu
Stwórz Paragraph class i dodaj powyższy utworzony tekst używając jego add() metoda, jak pokazano poniżej.
// Creating Paragraph
Paragraph paragraph = new Paragraph();
// Adding text to the paragraph
paragraph.add(text);
Krok 7: Dodawanie akapitu do dokumentu
Dodaj akapit do dokumentu, używając rozszerzenia add() metoda Document klasa, jak pokazano poniżej.
doc.add(paragraph1)
Krok 8: Zamknięcie dokumentu
Zamknij dokument za pomocą close() metoda Document klasa, jak pokazano poniżej.
// Closing the document
document.close();
Przykład
Poniższy program w języku Java pokazuje, jak ustawić kolor i czcionkę w tekście w pliku PDF za pomocą biblioteki iText. Tworzy dokument PDF o nazwiefonts.pdf, formatuje tekst i zapisuje go w ścieżce C:/itextExamples/
Zapisz ten kod w pliku o nazwie FormatingTheText.java.
import com.itextpdf.io.font.FontConstants;
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.font.PdfFontFactory;
import com.itextpdf.kernel.font.PdfFont;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Text;
public class FormatingTheText {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/fonts.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdf);
// Creating text object
Text text1 = new Text("Tutorialspoint");
// Setting font of the text
PdfFont font = PdfFontFactory.createFont(FontConstants.HELVETICA_BOLD);
text1.setFont(font);
// Setting font color
text1.setFontColor(Color.GREEN);
// Creating text object
Text text2 = new Text("Simply Easy Learning");
text2.setFont(PdfFontFactory.createFont(FontConstants.HELVETICA));
// Setting font color
text2.setFontColor(Color.BLUE);
// Creating Paragraph
Paragraph paragraph1 = new Paragraph();
// Adding text1 to the paragraph
paragraph1.add(text1);
paragraph1.add(text2);
// Adding paragraphs to the document
doc.add(paragraph1);
doc.close();
System.out.println("Text added to pdf ..");
}
}
Skompiluj i uruchom zapisany plik Java z wiersza polecenia, używając następujących poleceń -
javac FormatingTheText.java
java FormatingTheText
Po uruchomieniu powyższy program tworzy dokument PDF z następującym komunikatem.
Text added to pdf ..
Jeśli zweryfikujesz określoną ścieżkę, możesz znaleźć utworzony dokument PDF, jak pokazano poniżej.