Itext DeviceGrey не совместим с setBackgroundColor в Java проекте - PullRequest
0 голосов
/ 13 апреля 2020

Я использую 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;

1 Ответ

1 голос
/ 13 апреля 2020

Я понял, что причиной моей проблемы было смешивание версий io, kernel и layout. Установите все их на 7.1.10, и это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...