title: How to resize a PdfPTable to fit the page?
body: <p>I am generating a document, like in the following code, except ofcourse the contents of the table, which are varying. What I need to do is make sure that this table never exceeds one page in size, regardless of the amount of content in the cells. Is there a way to do it ?</p>
  
  <p><pre>import com.itextpdf.text.Phrase;
  import com.itextpdf.text.Document;
  import com.itextpdf.text.DocumentException;
  import com.itextpdf.text.PageSize;
  import com.itextpdf.text.pdf.PdfPCell;
  import com.itextpdf.text.pdf.PdfPTable;
  import java.awt.Desktop;
  import java.io.File;
  import java.io.FileNotFoundException;
  import java.io.FileOutputStream;
  import java.io.IOException;</p>
  
  <p>public void createTemplate() throws DocumentException, FileNotFoundException, IOException{
          String TARGET = System.getProperty("user.home")+"\temp.pdf";<br>
          Document document = new Document(PageSize.A4);
          PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(TARGET));
          document.open();</p>
  
  <code>    PdfPTable table = new PdfPTable(7);         
  
      for (int i = 0; i &lt; 105; i++) {
          Phrase p = new Phrase("some text");
          PdfPCell cell = new PdfPCell();
          cell.addElement(p);
          table.addCell(cell);            
      }
  
      table.setTotalWidth(PageSize.A4.getWidth()-10);
      table.setLockedWidth(true);
      PdfContentByte canvas = writer.getDirectContent();
      PdfTemplate template = canvas.createTemplate(table.getTotalWidth(),table.getTotalHeight());
      table.writeSelectedRows(0, -1, 0, PageSize.A4.getHeight(), template);
      Image img = Image.getInstance(template);
      img.scaleToFit(PageSize.A4.getWidth(), PageSize.A4.getHeight());
      img.setAbsolutePosition(0, PageSize.A4.getHeight());
      document.add(img);
      document.close();
  
      Desktop desktop = Desktop.getDesktop();
      File file = new File(TARGET);
      desktop.open(file);    }
  </code></pre>
  
  <p></p>
  
  <p>Edit: @Bruno Lowagie. The hint with the template wrapped in an image sounds just right to me, and I changed the code according, but all I get now is an empty PDF. Am I doing something wrong, or is this the wrong approach alltogether?</p>