2

我正在尝试使用带有 itext 5 的飞碟来创建一个 pdf,其中包含文本以及一些占据页面整个上半部分的图像,包括页边距。使用宽度和高度的 css 属性,并通过使图像浮动,我可以让图像显示在页面顶部,但它仍然(当然)在页面的边缘内。当我试图规避这个时,说

margin-top: -1in;

图像不会移动到当前页面的边缘,而是移动到前一页。

如何使图像移动到页边距?

4

1 回答 1

2

如果您的图像是在bodyHTML 页面中定义的,我不知道有什么方法可以将它移到页边距。

但是,您可以将图像定义为页面的背景。

这将是这样的:

@page {
    size: A4;
    margin: 20mm; 
    background-image:url('http://xxx/your-image.png');
    background-repeat:no-repeat
}

在这种情况下,徽标位于页面的左上角,从页边距开始。

请注意,即使使用该no-repeat选项,图像也会在 PDF 文档的每一页上重复。


如果您只需要在第一页上显示图像,我会建议另一种方法:为第一页定义一个特定的标题。

例如像这样:

<html>
<head>
<style>
   @page {
       size: A4;
       margin: 25mm; 
   }
   /* Display header only on first page */
   @page :first {
       @top-center {content: element(header);}
   }    
   #header {
       position: running(header);
       height:25mm;
       margin-left:-25mm;
   }
</style>
</head>
<body>
    <div id="header">
       <img src="http://xxx/your-image.png" />
    </div>
</body>
</html>

页眉将从页边空白开始并跨越页面的正文。由于只为第一页定义,不再重复。

于 2013-04-22T15:57:01.427 回答