-1

XMLWorker 5.5.3 と itextpdf 5.5.3 を使用して、html を pdf に変換しています。私のhtmlには、画像を含むセルを含むテーブルが含まれています。つまり、私のコードの一部:

ここに画像の説明を入力

私の問題は、一部のセルがパディング> 0を追加するため、画像を含むtdが本来よりも大きくなることです。パディングとマージンがないように画像のスタイルを定義する方法はありますか? Itextpdf の css デモを見ていますが、解決策が見つかりません。ヘルプ/トリック/アイデアが役立ちます。ありがとうタミ

4

1 に答える 1

0

私は解決策を見つけました:テーブルを作成するときに、列幅を定義します:

 PdfPTable table = new PdfPTable(vColWidth.length);
 table.setWidthPercentage(100);
 table.setWidths(vColWidth);

私が定義するImageオブジェクトを作成するとき:

RegularImg = Image.getInstance(imgsrc); 
RegularImg.setSpacingAfter(0);
RegularImg.setSpacingBefore(0);

td を定義するとき:

cell = new PdfPCell(RegularImg);
if(colSpan!="") 
    cell.setColspan(Integer.parseInt(colSpan));
if(rowSpan!= "") 
    cell.setRowspan(Integer.parseInt(rowSpan));
if(cellHight!="") 
    cell.setFixedHeight(Float.parseFloat(cellHight));

table.addCell(cell);

テーブルがそれほど大きくないか、 colSpan 、 rowSpan で複雑でない場合、このソリューションは問題なく機能します。複雑なケースでは、テーブルを使用せずに、写真のテーブルを Canvas として変換することをお勧めします。各画像をドキュメント内の特定の場所に配置するだけです。(パフォーマンスははるかに高速です。

于 2014-11-12T05:15:54.747 に答える