iText:如何将字符串添加到单元格
iText: how to add a String to a cell
大家好,我是一个绝对的初学者所以请放轻松,为什么这对我不起作用,我真的不明白为什么这不起作用,但我是初学者所以如果有人可以为我纠正这个, 我真的很感激。
我很惊讶它不起作用
import com.itextpdf.kernel.geom.PageSize;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Table;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
String path = "C:\Users\Kevin\OneDrive\Desktop\Generated PDFs\Table.pdf";
String logosrc = "C:\Users\Kevin\OneDrive\Desktop\Generated PDFs\Images\mainlogo.png";
PdfWriter pdfWriter = new PdfWriter(path);
PdfDocument pdfDocument = new PdfDocument(pdfWriter);
Document document = new Document(pdfDocument);
pdfDocument.setDefaultPageSize(PageSize.A4);
float col = 280f;
float columnWidth[] = {col, col};
Table table = new Table(columnWidth);
table.addCell(new Cell().add("INVOICE"));
我的错误信息:
java: no suitable method found for add(java.lang.String)
method com.itextpdf.layout.element.Cell.add(com.itextpdf.layout.element.IBlockElement) is not applicable
(argument mismatch; java.lang.String cannot be converted to com.itextpdf.layout.element.IBlockElement)
method com.itextpdf.layout.element.Cell.add(com.itextpdf.layout.element.Image) is not applicable
(argument mismatch; java.lang.String cannot be converted to com.itextpdf.layout.element.Image)
iText 7.0 有一个方法 add(String)
用于 Cell
。
对于 iText 7.1,documented in the API, a Cell
takes only a block element or an image for its add()
method. Block elements in iText 是段落、列表和 div 之类的东西。
您可以将 String
包裹在 Paragraph
中:
table.addCell(new Cell().add(new Paragraph("INVOICE")));
有关 7.0 和 7.1 之间的更多差异,查看 7.1 migration guide 可能会有用,其中还包括以下更改:
com.itextpdf.layout.element.Cell#add(java.lang.String)
has been removed, use a BlockElement
such as Paragraph
instead.
大家好,我是一个绝对的初学者所以请放轻松,为什么这对我不起作用,我真的不明白为什么这不起作用,但我是初学者所以如果有人可以为我纠正这个, 我真的很感激。 我很惊讶它不起作用
import com.itextpdf.kernel.geom.PageSize;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Table;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
String path = "C:\Users\Kevin\OneDrive\Desktop\Generated PDFs\Table.pdf";
String logosrc = "C:\Users\Kevin\OneDrive\Desktop\Generated PDFs\Images\mainlogo.png";
PdfWriter pdfWriter = new PdfWriter(path);
PdfDocument pdfDocument = new PdfDocument(pdfWriter);
Document document = new Document(pdfDocument);
pdfDocument.setDefaultPageSize(PageSize.A4);
float col = 280f;
float columnWidth[] = {col, col};
Table table = new Table(columnWidth);
table.addCell(new Cell().add("INVOICE"));
我的错误信息:
java: no suitable method found for add(java.lang.String)
method com.itextpdf.layout.element.Cell.add(com.itextpdf.layout.element.IBlockElement) is not applicable
(argument mismatch; java.lang.String cannot be converted to com.itextpdf.layout.element.IBlockElement)
method com.itextpdf.layout.element.Cell.add(com.itextpdf.layout.element.Image) is not applicable
(argument mismatch; java.lang.String cannot be converted to com.itextpdf.layout.element.Image)
iText 7.0 有一个方法 add(String)
用于 Cell
。
对于 iText 7.1,documented in the API, a Cell
takes only a block element or an image for its add()
method. Block elements in iText 是段落、列表和 div 之类的东西。
您可以将 String
包裹在 Paragraph
中:
table.addCell(new Cell().add(new Paragraph("INVOICE")));
有关 7.0 和 7.1 之间的更多差异,查看 7.1 migration guide 可能会有用,其中还包括以下更改:
com.itextpdf.layout.element.Cell#add(java.lang.String)
has been removed, use aBlockElement
such asParagraph
instead.