首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iTextpdf背景只设置为可用文本。

iTextpdf背景只设置为可用文本。
EN

Stack Overflow用户
提问于 2017-10-23 09:08:47
回答 1查看 330关注 0票数 1

下面是我使用iText从Java生成PDF的代码:

代码语言:javascript
复制
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import com.itextpdf.text.BaseColor;
import com.itextpdf.text.Chunk;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.Font.FontFamily;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
 
 
 
public class ChunkBackground {
 
    public static final String DEST = "C:\\test.pdf";
 
    public static void main(String[] args) throws IOException,
            DocumentException {
        File file = new File(DEST);
        file.getParentFile().mkdirs();
        new ChunkBackground().createPdf(DEST);
    }
 
    public void createPdf(String dest) throws IOException, DocumentException {
        Document document = new Document();
        PdfWriter.getInstance(document, new FileOutputStream(dest));
        document.open();
        
        Font f = new Font(FontFamily.HELVETICA, 8.5f, Font.BOLD, BaseColor.WHITE);
        Chunk c = new Chunk("FOR EMPLOYMENT WITH XXXX YYYY XXXXX", f);
        
        c.setBackground(BaseColor.BLACK);
        Paragraph p = new Paragraph();
        p.add(c);
 
        document.add(p);
        document.close();
    }
     
}

以下是生成的PDF:

如何设置背景的宽度而不考虑文本的宽度?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-23 09:35:14

我要做的是将块包含在一个100%宽度的PdfTable中,如下所示:

代码语言:javascript
复制
    Font f = new Font(FontFamily.HELVETICA, 8.5f, Font.BOLD, BaseColor.WHITE);
    Chunk c = new Chunk("FOR EMPLOYMENT WITH XXXX YYYY XXXXX", f);

    PdfPTable table = new PdfPTable(1);
    PdfPCell cell = new PdfPCell(new Phrase(c));

    cell.setBackgroundColor(BaseColor.BLACK);
    table.addCell(cell);
    table.setWidthPercentage(100);

    document.add(table);
    document.close();

输出:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46885617

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档