如何在 pdf 中不显示页码 = 1? (HTML CSS)
Posted
技术标签:
【中文标题】如何在 pdf 中不显示页码 = 1? (HTML CSS)【英文标题】:How can I not display page number = 1 in pdf ? (hmtl css) 【发布时间】:2017-10-12 12:48:03 【问题描述】:我的代码 html 是这样的:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Print PDF</title>
<style type="text/css">
.footer position: fixed; left: 0px; right: 0px; height: 50px;text-align: center;
.footer .pagenum:before content: counter(page);
</style>
</head>
<body>
<h1>This is test</h1>
<table class="tg">
<tr>
<th class="tg-3wr7">kolom 1</th>
<th class="tg-3wr7">kolom 2</th>
<th class="tg-3wr7">kolom 3</th>
<th class="tg-3wr7">kolom 4</th>
<th class="tg-3wr7">kolom 5</th>
</tr>
@php ($row = 22)
@for($i=0;$i<$row;$i++)
<tr>
<td class="tg-rv4w">test 1</td>
<td class="tg-rv4w">test 1</td>
<td class="tg-rv4w">test 1</td>
<td class="tg-rv4w">test 1</td>
<td class="tg-rv4w">test 1</td>
</tr>
@endfor
</table>
<div class="footer">
<span class="pagenum"></span>
</div>
</body>
</html>
如果 $row = 22,它将只显示 1 个这样的页面:
如果$row = 202,会这样显示7页;
多页时,第一页不显示页码。
但是当只有一页时,第一页显示页码
我想要的是:
我想在只有一页的时候让页码消失
我该怎么做?
【问题讨论】:
向我们展示您导出到 pdf 的代码 【参考方案1】:更新关于changes 的 dompdf >= 0.7.0 版本
由于 dompdf_config.inc.php 文件已从此版本中删除(并且不再引用),所有 dompdf 选项都应在运行时设置。
FontMetrics 类现在被实例化而不是静态的。简化从早期版本的 dompdf 迁移嵌入式脚本 我们通过
$fontMetrics
变量。请更新您的嵌入式脚本。为了 例如,FontMetrics::get_font('helvetica')
现在是$fontMetrics->getFont('helvetica')
。~感谢Dennis Ameling's answer 获取更新信息。
通过查看dompdf_config.inc.php
文件。事实证明,DOMPDF_ENABLE_PHP
设置为false
,从而导致内联 php 脚本被忽略。我只是将dompdf_config.custom.inc.php
编辑为以下内容,一切都很好,并且可以使用view
中的后续代码。
在 dompdf/dompdf_config.custom.inc.php 中
<?php
define("DOMPDF_ENABLE_PHP", true);
在运行时
$dompdf->set_option("isPhpEnabled", true);
然后,在我的 html 文件中
<body>
<script type="text/php">
if ( isset($pdf) )
// OLD
// $font = Font_Metrics::get_font("helvetica", "bold");
// $pdf->page_text(72, 18, "PAGE_NUM of PAGE_COUNT", $font, 6, array(255,0,0));
// v.0.7.0 and greater
$x = 72;
$y = 18;
$text = "PAGE_NUM of PAGE_COUNT";
$font = $fontMetrics->get_font("helvetica", "bold");
$size = 6;
$color = array(255,0,0);
$word_space = 0.0; // default
$char_space = 0.0; // default
$angle = 0.0; // default
$pdf->page_text($x, $y, $text, $font, $size, $color, $word_space, $char_space, $angle);
</script>
<div>
如果你走这条路,别忘了重启 Apache
【讨论】:
以上是关于如何在 pdf 中不显示页码 = 1? (HTML CSS)的主要内容,如果未能解决你的问题,请参考以下文章
如何批量读取文件(PDF或Word)页数并自动显示在文件名称中?
从 html 转换的 pdf 中的页码 - pdfkit、python/django
如何使用 wkhtmltopdf 获取 html 生成的 pdf 中的页码