itext7을 사용하여 테이블을 만듭니다.테이블 헤더의 테두리를 제거하십시오. itext7 pdf
일반 셀의 색상을 변경할 수 있습니다. 테두리를 머리글 셀의 Null로 어떻게 바꿀 수 있습니까?
"false"headerCell을 만들려면 체크를 추가 할 수 없습니다. 테이블이 다중 열일 수 있으므로 셀이 각 열 꼭대기에 있어야합니다.
이 false headerCell을 생성하면 첫 번째 셀이 생성됩니다.
내가 시도 :
//does not work.
table.setBorder(null);
//---------------------------does not work.
table.addHeaderCell("one: ").setBorder(Border.NO_BORDER);
table.addHeaderCell("two: ").setBorder(null).addStyle(normal);
table.addHeaderCell("three: ").setBorder(null).addStyle(normal);
최소 : (단지 설정 위치) 패키지 응용 프로그램;
import java.io.IOException;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
import com.itextpdf.io.font.FontConstants;
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.font.PdfFont;
import com.itextpdf.kernel.font.PdfFontFactory;
import com.itextpdf.kernel.geom.PageSize;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfDocumentInfo;
import com.itextpdf.kernel.pdf.PdfString;
import com.itextpdf.kernel.pdf.PdfViewerPreferences;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.ColumnDocumentRenderer;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.Style;
import com.itextpdf.layout.border.Border;
import com.itextpdf.layout.border.SolidBorder;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.element.Text;
import javafx.application.Application;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
exportRes();
}
public static void main(String[] args) {
launch(args);
}
public void exportRes() throws IOException{
PdfWriter writer = new PdfWriter(--location--);
PdfDocument pdf = new PdfDocument(writer);
pdf.getCatalog().setLang(new PdfString("en-US"));
pdf.getCatalog().setViewerPreferences(new PdfViewerPreferences().setDisplayDocTitle(true));
PdfDocumentInfo info = pdf.getDocumentInfo();
info.setTitle("List");
Document document = new Document(pdf,PageSize.A4);
PdfFont font = PdfFontFactory.createFont(FontConstants.HELVETICA);
Style normal = new Style();
normal.setFont(font).setFontSize((float) 7.5);
Style notesF = new Style();
notesF.setFont(font).setItalic().setFontSize((float) 7.5);
Style lastNameF = new Style();
lastNameF.setFont(font).setFontSize((float) 7.5).setBold();
Table table = new Table(new float[]{(float) 2,29,10});
table.setWidthPercent(100);
table.setFont(font);
//does not work.
table.setBorder(null);
//---------------------------does not work.
table.addHeaderCell("one: ").setBorder(Border.NO_BORDER);
table.addHeaderCell("two: ").setBorder(null).addStyle(normal);
table.addHeaderCell("three: ").setBorder(null).addStyle(normal);
Cell check = new Cell().add(new Paragraph(" ").addStyle(normal).setFixedLeading(0)).setBorder(new SolidBorder(Color.LIGHT_GRAY, (float) 0.5));
table.addCell(check);
Text lastName = new Text("Name ").setBold().addStyle(lastNameF);
Text address = new Text("address").addStyle(normal);
Cell name = new Cell().add(new Paragraph().add(lastName).add(address)).setBorder(new SolidBorder(Color.LIGHT_GRAY, (float) 0.5));
table.addCell(name);
Cell notes = new Cell().add("notes").addStyle(notesF).setBorder(new SolidBorder(Color.LIGHT_GRAY, (float) 0.5));
table.addCell(notes);
document.add(table);
document.close();
}
}