java - itext DeviceGrey 与 Java 项目中的 setBackgroundColor 不兼容
问题描述
我正在使用 iText 7,我正在尝试设置我的 pdf 表格的背景颜色。
Cell cell = new Cell(1, 3)
.add((IBlockElement) new Paragraph("This is a header"))
.setFont(f)
.setFontSize(13)
.setFontColor(DeviceGray.WHITE)
.setBackgroundColor(DeviceGray.BLACK)
.setTextAlignment(TextAlignment.CENTER);
但是 DeviceGray.WHITE 和 DeviceGray.BLACK 给出错误,指出它们不兼容。该消息说 setBackgroundColor(com.itextpdf.kernel.colors.color) 不能应用于 com.itextpdf.kernel.color.DeviceGray
我也有以下进口
import com.itextpdf.io.font.constants.StandardFonts;
import com.itextpdf.kernel.color.DeviceGray;
import com.itextpdf.kernel.font.PdfFont;
import com.itextpdf.kernel.font.PdfFontFactory;
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.IBlockElement;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.TextAlignment;
import com.itextpdf.layout.property.UnitValue;
解决方案
我意识到我的问题的原因是混合了 io、内核和布局的版本。将它们全部设置为 7.1.10 即可。
推荐阅读
- python - continue 语句在函数中是如何工作的?
- maven - 无法在 windows 中安装 maven:“'mvn' 未被识别为内部或外部命令可运行程序或批处理文件”
- javascript - 如何在一个提交按钮中处理两个服务调用
- android - 关于通过 Google Play 控制台发布代号一个应用程序的警告消息 Start To Roll Out Button disabled
- c# - .net 核心中的 IHttpClientFactory
- postgresql - PostgreSQL 11 中的表分区与自动分区创建?
- html - 密码与 Angular CLI 中的模式不匹配
- arcgis - 在哪里可以找到 ArcGIS 服务 url 以及如何创建?如何从服务器上传和查看内容
- spring-boot - jasypt-spring-boot-starter:密码不是 ascii
- vba - 如何检查重复名称,但避免自行激活