我正在使用一个php类,mpdf,它非常好地生成PDF.我正在尝试让文件在渲染时自动打印(即打开打印对话框).我已经使用下面的代码扩展了核心功能,将javascript添加到pdf中.pdf已渲染但没有自动打印.任何帮助都会很棒.谢谢!
require('mpdf.php');
class PDF_JavaScript extends mPDF {
var $javascript;
var $n_js;
function IncludeJS($script) {
$this->javascript=$script;
}
function _putjavascript() {
$this->_newobj();
$this->n_js=$this->n;
$this->_out('<<');
$this->_out('/Names [(EmbeddedJS) '.($this->n+1).' 0 R]');
$this->_out('>>');
$this->_out('endobj');
$this->_newobj();
$this->_out('<<');
$this->_out('/S /JavaScript');
$this->_out('/JS '.$this->_textstring($this->javascript));
$this->_out('>>');
$this->_out('endobj');
}
function _putresources() {
parent::_putresources();
if (!empty($this->javascript)) {
$this->_putjavascript();
}
}
function _putcatalog() {
parent::_putcatalog();
if (!empty($this->javascript)) {
$this->_out('/Names <</JavaScript '.($this->n_js).' 0 R>>');
}
}
}
class PDF_AutoPrint extends PDF_Javascript {
function AutoPrint($dialog=false) { //Embed some JavaScript to show the print dialog or …Run Code Online (Sandbox Code Playgroud) 我尝试将使用mPDF插件的pdf与最新版本合并,但在使用pdf版本1.3但未完成1.5时,PDF合并工作时出现错误
我试过下面的代码
<?php
$mihir='<html>
<body>
Generate PDFs with merge
</body>
</html>';
require_once("MPDF/mpdf.php");
$mpdf=new mPDF();
$mpdf->SetDisplayMode('fullpage');
$mpdf->list_indent_first_level = 0;
$mpdf->WriteHTML($mihir);
$mpdf->AddPage();
$mpdf->SetImportUse();
$pagecount = $mpdf->SetSourceFile("order_form_instructions_energy_supply.pdf");
$tplId = $mpdf->ImportPage($pagecount);
$mpdf->UseTemplate($tplId);
$mpdf->Output('test.pdf','D');
?>
Run Code Online (Sandbox Code Playgroud)
我收到了这个错误
mPDF error: Unable to find xref table - Maybe a Problem with auto_detect_line_endings
提前致谢
我正在使用PHP MPDF来创建PDF文件.在页脚我可以使用打印当前页码
{PAGENO}
Run Code Online (Sandbox Code Playgroud)
但是如何获取PDF文件中的总页数?所以在页脚中我可以打印如下:
Page (Current Page) of (Total number of pages)
Page 1 of 6
Run Code Online (Sandbox Code Playgroud) 我mpdf在PHP中使用库来从HTML创建pdf文件.我需要在landscape模式下设置页面模式.
这是我正在使用的代码:
$mpdf=new mPDF('c');
$mpdf->WriteHTML($html);
$mpdf->Output();
exit;
Run Code Online (Sandbox Code Playgroud)
但是,这是在portrait模式下设置页面模式.任何想法,如何在mpdf中设置横向模式?
使用mPDF将html打印到pdf我在html中设置的字体大小在创建pdf时没有正确设置.在我的HTML中我有
<table width="100%" border="0" cellpadding="0" cellspacing="0" style="font-family:myriadpro, Verdana, sans-serif; color:#111111;">
<tr>
<td align="left" style="vertical-align:top; padding:5px; font-size: 12pt;">
etc.
Run Code Online (Sandbox Code Playgroud)
但是,mPDF会在PDF中将字体大小缩放到9pt.如果我使用24pt它会缩放到18pt.我检查并尝试更改mPDF中的配置和显示首选项(NoPrintScaling),但这些都不起作用.
有没有人知道如何摆脱这种缩放?我不想将字体大小设置得更大以补偿mPDF行为,因为这会破坏我的html视图.
有没有办法在移动浏览器中显示使用mpdf内联生成的pdf?
我浏览了mpdf文档并尝试了目标选项mpdf->output('filename.pdf','I').除了IE之外,它在桌面上的每个浏览器上运行良好,并且在Firefox,Chrome等移动浏览器中不起作用.它开始自动下载,而不是在桌面和所有移动浏览器中在IE中显示内联.
无论如何要处理这个?
我刚刚在我的项目中使用了mPDF,现在仍然坚持这个问题.首先让我描述一下我的PDF结构:
所以问题是:
下面是代码用于包含页眉和页脚
$mpdf->SetHeader('{DATE j-m-Y}|{PAGENO}/2|My document');
$mpdf->SetFooter('{PAGENO}'); /* defines footer for Odd and Even Pages - placed at Outer margin */
$mpdf->SetFooter(array(
'L' => array(
'content' => 'Text to go on the left',
'font-family' => 'sans-serif',
'font-style' => 'B', /* blank, B, I, or BI */
'font-size' => '10', /* in pts */
),
'C' => array(
'content' => '- {PAGENO} -',
'font-family' => 'serif',
'font-style' => 'BI',
'font-size' => '18', /* gives …Run Code Online (Sandbox Code Playgroud) 我需要从HTML输入生成PDF文件:
<div style="width: 14cm; height: 21cm; position: relative">
<img src="bg-image.jpg" style="width: 100%; height: 100%; position: absolute; left: 0; top: 0">
<img src="image.jpg" style="width: 100px; height: 100px; position: absolute; left: 5cm; top: 5cm">
</div>
Run Code Online (Sandbox Code Playgroud)
其中第一个图像是背景,第二个图像是用户输入(较小的照片).
问题是当我尝试使用mPDF库生成PDF文件时,图像不会显示在一个页面上,但是一个图像在第一页上,第二个图像在第二页上.所以我认为绝对定位不起作用,我不知道如何解决它.我不能将第一张图像用作背景图像,因为它的自然尺寸小于它必须填充的背景区域.
你能给我一些建议吗?怎么了?
我有一个简单的表单,我想使用PHP在pdf中编辑它.但pdf正在创建表单,但我不能编辑和提交它,任何原因或我不能使用PHP编辑PDF?
我的代码是
<?php
define('_MPDF_PATH','/');
include("mpdf.php");
$html = '
<form action="test.php">
<input type="text" id="name" value="name" />
<input type="reset" name="reset" value="Reset" />
<input type="submit" name="submit" value="Submit" />
</form>';
$mpdf=new mPDF('c');
$mpdf->default_lineheight_correction = 1.2;
// LOAD a stylesheet
$stylesheet = file_get_contents('mpdfstyletables.css');
$mpdf->WriteHTML($stylesheet,1); // The parameter 1 tells that this is css/style only and no body/html/text
$mpdf->SetColumns(2,'J');
$mpdf->WriteHTML($html);
$mpdf->Output('test.pdf','D');//
exit;
?>
Run Code Online (Sandbox Code Playgroud)
我在这里看到了其他类似的问题,但我无法解决我的问题.我的问题是:标题在所有页面中都正常工作,但页脚仅在最后一页显示.
<?
$mpdf = new mPDF( '', // mode - default ''
'', // format - A4, for example, default ''
0, // font size - default 0
'', // default font family
15, // margin_left
15, // margin right
58, // margin top
60, // margin bottom
6, // margin header
0, // margin footer
'L' ); // L - landscape, P - portrait
$mpdf->SetDisplayMode('fullpage');
$cabecalho = '<div>header</div>';
$paragrafo = '<div>body</div>';
$stylesheet = "table{
width: 100%;
text-align:center;
border: 2px …Run Code Online (Sandbox Code Playgroud)