PDFBox使用字体

在PDFBox中, 可能需要添加具有不同字体系列和大小的文本。 PDFBox规范指出” 在处理PDF文档时, 将始终提供标准的14种字体集” 。在PDFBox中, 这组14种字体在PDType1Font类中定义为常量。使用PDType1Font API从文件加载字体。 PDFBox支持以下字体-

Standard Font Discription
PDType1Font.TIMES_ROMAN 定期营业
PDType1Font.TIMES_BOLD Times bold
PDType1Font.TIMES_ITALIC Times italic
PDType1字体。TIMES_BOLD_ITALIC 时代粗体斜体
PDType1Font.HELVETICA Helvetica常规
PDType1Font.HELVETICA_BOLD Helvetica bold
PDType1Font.HELVETICA_OBLIQUE 斜体字
PDType1字体。HELVETICA_BOLD_OBLIQUE Helvetica粗体斜体
PDType1Font.COURIER Courier
PDType1Font.COURIER_BOLD Courier bold
PDType1Font.COURIER_OBLIQUE 斜体快递
PDType1Font.COURIER_BOLD_OBLIQUE 信使粗体斜体
PDType1Font.SYMBOL 符号集
PDType1Font.ZAPF_DINGBATS Dingbat字体
【PDFBox使用字体】我们可以使用Content Stream上可用的setFont API为文本配置字体。
PDPageContentStream contentStream = new PDPageContentStream(document, page); contentStream.setFont( PDType1Font.HELVETICA_BOLD, 28 );

例子
本示例创建一个新文档并打印文本” Hello World !!!” 。使用PDF基本字体之一。
import java.io.IOException; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPage; import org.apache.pdfbox.pdmodel.PDPageContentStream; import org.apache.pdfbox.pdmodel.font.PDFont; import org.apache.pdfbox.pdmodel.font.PDType1Font; public class WorkingWithFont { public static void main(String[] args)throws IOException { // Create a document and add a page to it PDDocument document = new PDDocument(); PDPage page = new PDPage(); document.addPage( page ); // Create a new font object selecting one of the PDF base fonts PDFont font = PDType1Font.HELVETICA_BOLD; // Start a new content stream which will "hold" the to be created contentPDPageContentStream contentStream = new PDPageContentStream(document, page); // Define a text content stream using the selected font, and print the textcontentStream.beginText(); contentStream.setFont( font, 28 ); contentStream.newLineAtOffset( 100, 700 ); contentStream.showText( "Hello World !!!!" ); contentStream.endText(); System.out.println("Text Content is added in the PDF Document."); //closed the content stream class.contentStream.close(); // Save the results and ensure that the document is properly closed.document.save( "Hello World.pdf"); document.close(); }}

输出
成功执行上述程序后, 打开显示以下输出的PDF文档。
PDFBox使用字体

文章图片

    推荐阅读