Подтвердить что ты не робот

Как установить фоновый цвет ячейки таблицы с помощью iText?

Хотя, конечно, можно использовать BaseColor, по умолчанию он предлагает очень ограниченный выбор.

Интересно, как добавить свой собственный цвет в документ?

...
        PdfPTable table = new PdfPTable(3);

        PdfPCell cell = new PdfPCell(new Phrase("some clever text"));
        cell.setBackgroundColor(BaseColor.GREEN);
        table.addCell(cell);
...
4b9b3361

Ответ 1

Множество опций.

BaseColor color = new BaseColor(red, green, blue); // or red, green, blue, alpha
CYMKColor cmyk = new CMYKColor(cyan, yellow, magenta, black); // no alpha
GrayColor gray = new GrayColor(someFloatBetweenZeroAndOneInclusive); // no alpha

Там также цвета шаблонов и цвета затенения, но они намного менее просты.

Ответ 2

Проводка, в надежде, что кто-то другой найдет этот ответ полезным.

Кажется, можно создать новый BaseColor из WebColor как:

BaseColor myColor = WebColors.GetRGBColor("#A00000");

Которая затем может быть добавлена ​​в качестве фона как:

cell.setBackgroundColor(myColor);

Ответ 3

Попробуйте следующее:
cell.setBackgroundColor(new BaseColor(226, 226, 226));
или:
cell.setBackgroundColor(WebColors.getRGBColor("#E2E2E2")); устаревший

Ответ 4

Еще одно решение:

public static String mColor = "#aa8cc5";
int aa = Integer.parseInt(mColor,16); // base 16
int colorArr = Color.rgb(Color.red(aa),Color.green(aa),Color.blue(aa));
cell1.setBackgroundColor(new BaseColor(colorArr));