我想使用iTextpdf 7创建pdf文档,但是我不想使用任何默认页面大小。
我想设置纸张尺寸的宽度和高度,但是当我尝试使用Rectangle()
类进行设置时,它显示错误并且无法创建任何内容。我以前从未使用过该库,也不知道如何做得好。
这是我编写的代码的示例:
String url_file= "C:\\Users\\Mike89\\Documents\\PDFJava\\pdfFiles\\SALES\\SALEINVOICE"+id+".pdf";
PdfWriter writer = new PdfWriter(url_file);
PdfDocument pdf = new PdfDocument(writer);
Rectangle pagesize = new Rectangle(148, 350);
Document document = new Document(pdf, pagesize);
document.setMargins(2, 2, 2, 2);
Table table1 = new Table(UnitValue.createPercentArray(1)).useAllAvailableWidth().setBorder(Border.NO_BORDER);
Cell cell1;
cell1 = new Cell();
cell1.add(new Paragraph("COMPANY NAME").setTextAlignment(TextAlignment.CENTER).setFontSize(5).setBold()).setBorder(Border.NO_BORDER);
cell1.add(new Paragraph("DOCUMENT ID").setTextAlignment(TextAlignment.CENTER).setFontSize(5)).setBorder(Border.NO_BORDER);
cell1.add(new Paragraph("COMPANY ADDRESS").setTextAlignment(TextAlignment.CENTER).setFontSize(5)).setBorder(Border.NO_BORDER);
cell1.add(new Paragraph("TELEPHONE").setTextAlignment(TextAlignment.CENTER).setFontSize(5)).setBorder(Border.NO_BORDER);
table1.addCell(cell1);
document.add(table1);
document.close();
netbeans向我显示的错误:
incompatible types: Rectangle cannot be converted to PageSize
我不想使用PageSize.A8或A9或A10或类似的东西。我只想创建自己的页面大小,但无法弄清楚代码有什么问题。我该怎么解决?
Rectangle和PageSize是不同的类型,尽管PageSize扩展了Rectangle,但是Document构造函数期望使用PageSize。
请替换此
Rectangle pagesize = new Rectangle(148, 350);
Document document = new Document(pdf, pagesize);
带有此:
PageSize pagesize = new PageSize(148, 350);
Document document = new Document(pdf, pagesize);