2017-10-23 1 views
1

Folgende ist mein Code, um die PDF von Java zu generieren itextitextpdf Hintergrund ist nur bis zu dem Text verfügbar

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(); 
    } 

} 

mit folgenden wird die PDF erzeugt, kann jemand mir wie helfen die Breite des setzen Hintergrund unabhängig von der Textbreite?

Antwort

2

Was ich tun würde, ist die Chunk in einem PdfTable mit 100% Breite wie folgt umfassen:

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(); 

Ausgang:

enter image description here

+1

Dank @MaVRoSCy, es hat mir sehr geholfen und was ich wollte . – SAR

Verwandte Themen