gpt4 book ai didi

php - 在 wkhtmltopdf 中混合页面方向

转载 作者:IT王子 更新时间:2023-10-29 00:04:04 24 4
gpt4 key购买 nike

我正在使用 wkhtmltopdf 从单个 HTML 文件生成 PDF,使用 page-break-before: always 将其格式化为单独的页面。例如:

<div class="cover">
Cover Page
</div>
<div class="page">
Page 1
</div>
<div class="page">
Page 2
</div>

使用 CSS:

.page {
page-break-before: always;
}

现在,我编写了 wkhtmltopdf 命令,用于在 letter 大小的页面上以纵向打印 PDF。我需要其中一个页面为横向,其余页面为纵向(以便在屏幕上查看 PDF 时,所有内容都将正确定向)。

有没有办法在单个 PDF 中混合方向?

如果这不可能,是否可以使用 wkhtmltopdf 合并多个 PDF? (我看到了不同 pdfmerge 软件的其他建议。)如有必要,我可以将我的 HTML 源文件拆分为每个页面的多个文件。

最佳答案

如果将来有人正在寻找这个答案,我会用我的解决方案来完成这个。由于缺乏答案,我想确实没有办法使用 wkhtmltopdf 创建具有多个页面方向的 PDF。

  1. 我实现的第一个解决方案是使用一个 HTML 文件创建单个 PDF 并使用以下 CSS 旋转横向页面的内容:

    width: 1275px; 
    height: 1650px;

    -webkit-transform: translateY(1650px) rotate(270deg); /* Chrome, Safari 3.1+ */
    -moz-transform: translateY(1650px) rotate(270deg); /* Firefox 3.5+ */
    -o-transform: translateY(1650px) rotate(270deg); /* Opera 10.5-12.0 */
    -ms-transform: translateY(1650px) rotate(270deg); /* IE 9 */
    transform: translateY(1650px) rotate(270deg); /* IE 10+, Firefox 16.0+, Opera 12.1+ */
    filter: progid:DXImageTransform.Microsoft.Matrix(M11=6.123031769111886e-17, M12=1, M21=-1, M22=6.123031769111886e-17, SizingMethod='auto expand'); /* IE 6-7 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=6.123031769111886e-17, M12=1, M21=-1, M22=6.123031769111886e-17, SizingMethod='auto expand')"; /* IE 8 */

    -webkit-transform-origin: 0% 0%;
    -moz-transform-origin: 0% 0%;
    -o-transform-origin: 0% 0%;
    -ms-transform-origin: 0% 0%;
    transform-origin: 0% 0%;

    (要编写类似的兼容 CSS3 转换,请访问这个很棒的网站来计算所有 IE 矩阵值:http://www.useragentman.com/IETransformsTranslator/)

    如果您的用户只在 PDF 生成后打印它,这将是一个不错的解决方案。由于我的用户需要在屏幕上查看 PDF,因此他们必须使用 PDF 查看软件旋转页面是不切实际的。

  2. 因此,我的第二个解决方案是将每个页面创建为独立于单个 HTML 文件的单独 PDF,然后我使用 Ghostscript将它们合并到一个文件中。这工作得很好,但只是增加了一些额外的处理时间来创建所有文件并合并它们。就我而言,PDF 不会经常下载,而且页数很少,因此额外的时间不会造成太大的负担。

关于php - 在 wkhtmltopdf 中混合页面方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12983785/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com