【问题标题】:Script to take existing PDF file, clone to double 1/2 page format on output PDF获取现有 PDF 文件的脚本,在输出 PDF 上克隆为双 1/2 页格式
【发布时间】:2016-04-18 13:45:55
【问题描述】:

已编辑:如果有任何混淆,底部的图像是左侧的纵向布局,右侧的横向布局。这意味着,左侧的 pdf 内容将被并排克隆成横向格式。

我目前使用的资源是FPDF、DOMPDF,并且即将将TCPDF合并到这个项目中,用PHP编码。

我需要知道是否可以使用这些资源中的任何一个或任何其他资源来获取现有的 PDF 文件并将其克隆到恰好占据输出 PDF 的 2 个半页的位置。最关键的部分是不应该有边界/边距。

有没有人可以完美地做到这一点的脚本?

这是一个图像表示:

【问题讨论】:

  • 请正确解释您要做什么!如何将结果的左半部分设置为红色,将右半部分设置为蓝色,并显示它们各自在原始图像中的来源以及它们是否被旋转。您是在谈论多页 PDF 吗?您需要什么操作系统和脚本语言?
  • @Marksetchell 我刚刚编辑了我的问题,但是在这里回答,PHP。我的意思是图像右侧的内容(纵向样式 A4 页面)被克隆到单个页面的两侧,横向布局,以前的内容现在彼此并排。我将更改图像,使其更清晰..
  • @Marksetchell 我刚刚编辑了它
  • 所以原始页面的右侧被克隆并在两页上并排打印两次。原始页面的左侧在哪里结束?
  • 你的数学也没有加起来。 A4 为 2480 x 3508 像素,分辨率为 300 dpi。并且信纸大小将是 2550x3300,这将无法容纳没有边框的 A4 的一半!

标签: php pdf tcpdf fpdf dompdf


【解决方案1】:

查看FDPI(基于 FPDF)。 simple demo 显示将 PDF 导入页面的一部分。

我没有使用它,但是根据那个演示,您应该能够使用以下内容做您想做的事情:

<?php
require_once('fpdf.php');
require_once('fpdi.php');

// initiate FPDI
$pdf = new FPDI('L');
// add a page
$pdf->AddPage();
// set the source file
$pdf->setSourceFile("PdfDocument.pdf");
// import page 1
$tplIdx = $pdf->importPage(1);
// use the imported page and place it at point 10,10 with a width of 150 mm
$pdf->useTemplate($tplIdx, 10, 10, 150);
// use the imported page and place it at point 400,10 with a width of 150 mm
$pdf->useTemplate($tplIdx, 400, 10, 150);

$pdf->Output();

(注意:这是完全未经测试的,并且在定位为 PT 时宽度以 mm 为单位这一事实充其量只是一个粗略的估计。)

【讨论】:

  • 对“点”的了解非常好...肯定这是constructor中定义的单位中的位置。
猜你喜欢
  • 1970-01-01
  • 2018-02-27
  • 1970-01-01
  • 1970-01-01
  • 2020-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-21
相关资源
最近更新 更多