PdfTextFormField的垂直对齐是否可能?

时间:2018-01-13 21:14:24

标签: itext7

目前我正在用iText编写几个评估程序。

我在表单字段的垂直对齐方面存在问题。

有人知道垂直对齐是否可行以及如何进行?

我想将垂直对齐设置为“bottom”而不是标准值“middle”。

PdfTextFormField with standard alignment "middle"

import java.awt.Desktop;
import java.io.File;
import java.io.IOException;

import com.itextpdf.forms.PdfAcroForm;
import com.itextpdf.forms.fields.PdfFormField;
import com.itextpdf.forms.fields.PdfTextFormField;
import com.itextpdf.kernel.colors.ColorConstants;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;

public class problem4 {
    public static void main(String[] args) throws IOException {
        String fnPdf = "results/problem4.pdf";
        PdfWriter writer = new PdfWriter(fnPdf);
        PdfDocument pdf = new PdfDocument(writer);
        PdfPage page = pdf.addNewPage();
        PdfAcroForm form = PdfAcroForm.getAcroForm(pdf, true);
        PdfTextFormField field = PdfFormField.createText(pdf, new Rectangle(40, 200, 150, 50), "fName", "Dirk");
        field.setColor(ColorConstants.BLUE);
        field.setFontSize(10);
        field.setJustification(PdfFormField.ALIGN_CENTER);
        // missing vertical alignment bottom
        field.setBorderColor(ColorConstants.BLUE);
        field.setBorderWidth(2);
        form.addField(field, page);
        Document document = new Document(pdf);
        document.close();
        pdf.close();
        Desktop.getDesktop().open(new File(fnPdf));
    }
}

0 个答案:

没有答案