我正在尝试使用带有 itext 5 的飞碟来创建一个 pdf,其中包含文本以及一些占据页面整个上半部分的图像,包括页边距。使用宽度和高度的 css 属性,并通过使图像浮动,我可以让图像显示在页面顶部,但它仍然(当然)在页面的边缘内。当我试图规避这个时,说
margin-top: -1in;
图像不会移动到当前页面的边缘,而是移动到前一页。
如何使图像移动到页边距?
我正在尝试使用带有 itext 5 的飞碟来创建一个 pdf,其中包含文本以及一些占据页面整个上半部分的图像,包括页边距。使用宽度和高度的 css 属性,并通过使图像浮动,我可以让图像显示在页面顶部,但它仍然(当然)在页面的边缘内。当我试图规避这个时,说
margin-top: -1in;
图像不会移动到当前页面的边缘,而是移动到前一页。
如何使图像移动到页边距?
如果您的图像是在body
HTML 页面中定义的,我不知道有什么方法可以将它移到页边距。
但是,您可以将图像定义为页面的背景。
这将是这样的:
@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>
页眉将从页边空白开始并跨越页面的正文。由于只为第一页定义,不再重复。