标签: dompdf

使用创建日期生成文件名

我正在使用dompdf创建PDF文件并将其邮寄到我的邮件中,同时在服务器上保存.txt版本.保存文件正常工作,但是我在使用唯一名称保存文件时遇到了一些麻烦.在这种情况下,我想要像date-time.txt(06-09-2012_11:43.txt)

甚至更好,如果它可以从文本字段"refnr"的名称作为名称.

<label for="refnr"><b>Referensnummer:</b></label>
<input type="text" name="refnr" id="refnr" class="input" />
Run Code Online (Sandbox Code Playgroud)

代码如下所示:

$html = '/html.php';
$filename = $dir.'/Admin/files/"date here".txt';
$dompdf = new DOMPDF(); 
$dompdf->load_html($html); 
$dompdf->set_paper('a4', 'portrait');
$dompdf->render(); 
file_put_contents($filename, $dompdf->output()); 
Run Code Online (Sandbox Code Playgroud)

我试图玩,$name='myfile_'.date('m-d-Y_hia)';但无法做到这一点,它只是每次在该行上给出一个错误.所以现在我在这里寻求聪明人的指导:)

php filenames datetime dompdf

13
推荐指数
1
解决办法
4万
查看次数

dompdf特殊字符

我有成功的HTML到pdf转换,但不是特殊字符.

下面只是我想要显示的一个特殊字符,它显示在我的Mac上的浏览器中,当我把它放在一个html文档中时.(但不在我的窗户盒子上)

<?php
require_once("../dompdf_config.inc.php");
$html = '&#8364;';
$dompdf = new DOMPDF(); $html = iconv('UTF-8','Windows-1250',$html);
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("contract.pdf");
exit(0);
?>
Run Code Online (Sandbox Code Playgroud)

我一直得到一个"?" (pdf)提交pdf时的问号.我知道在特殊字符方面记录了很多问题,但是我想我会尝试使用我实际使用的代码.

如果DomPdf不是推荐的html-to-pdf转换工具,我会接受任何其他建议!

dompdf

12
推荐指数
5
解决办法
3万
查看次数

file_put_contents:无法打开流,没有这样的文件或目录

我正在尝试使用dompdf将表单保存到易于阅读的.pdf文件中,我的处理脚本如下所示.我收到了错误Warning: file_put_contents(/files/grantapps/NAME0.pdf) [function.file-put-contents]: failed to open stream: No such file or directory in /home/username/public_html/subdir/apps/dompdf/filename.php on line 39.(第39行是我完整脚本中的最后一行.)我不知道如何解决这个问题.

allow_url_fopen是的,我已经尝试了各种文件路径,包括完整的目录(/home/username/public_html/subdir/files/grantapps/)和下面代码中的内容,但没有任何效果.

require_once("dompdf_config.inc.php");
date_default_timezone_set('America/Detroit');

$html = 'code and whatnot is here';

$name = str_replace(" ", "", $_POST['form2name']);
$i = 0;
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
while(file_exists("files/grantapps/" . $name . $i . ".pdf")) {
    $i++;
}
file_put_contents("files/grantapps/" . $name . $i . ".pdf", $dompdf->output());
Run Code Online (Sandbox Code Playgroud)

php dompdf

12
推荐指数
2
解决办法
9万
查看次数

DOMPDF不适用于外部css文件

我正在使用Zend Framework和DOMPDF库.当我用内联css测试它时,一切都很完美.但是当我试图将css代码移动到外部文件时,规则并未应用于html页面.

这是我的代码.

  1. 控制器动作的代码,生成pdf

require_once( "DOMPDF/dompdf_config.inc.php");

    $this->_helper->layout->disableLayout();

    $html = $this->view->render('index/dom.phtml');

    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->render();

    $pdfContent =   $dompdf->output();

    file_put_contents('sample.pdf', $pdfContent);

    die("test");
Run Code Online (Sandbox Code Playgroud)

2.相应视图的代码(index/dom.phtml)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <link type="text/css" href="/themes/css/pdf.css" rel="stylesheet"   media="screen"/>

</head>
<body>
    <div>Tamara testing</div>
    <table border="1">
        <tr>
            <th>Column 1</th>
            <th>Column 2</th>
        </tr>
        <tr>
            <td>Value 1</td>
            <td>Value 2</td>
        </tr>
    </table>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

3.和我的CSS文件:

div {color: red;}
Run Code Online (Sandbox Code Playgroud)

如何使其工作?

更新:

为了使它工作,我改变了以下的事情:

1.在控制器的操作中添加外部文件的基本路径

$dompdf->set_base_path(APPLICATION_PATH."/../public/themes/css/");
Run Code Online (Sandbox Code Playgroud)

2.在视图中更改链接标记的href属性.使其相对于步骤1中设置的基本路径.

<link type="text/css" href="pdf.css" rel="stylesheet" />
Run Code Online (Sandbox Code Playgroud)

css zend-framework dompdf

12
推荐指数
2
解决办法
3万
查看次数

DOMPDF - 将创建的PDF附加到电子邮件中

通过DOMPDF将PDF附加到电子邮件的最简单方法是什么?

我正在使用的脚本的末尾(部分内容)如下:

$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();    
//below to save the pdf file - not needed if emailing pdf
file_put_contents('/home/ststrave/public_html/pdf/STS_Brochure.pdf', $dompdf->output());
//below to open pdf in browser - required
$dompdf->stream("STS_Brochure_".rand(10,1000).".pdf", array("Attachment" => false));
jexit();
Run Code Online (Sandbox Code Playgroud)

只是为了澄清 - 这是在Joomla中使用的.

使用标准PHP邮件功能欣赏最简单/最快捷的方式.

干杯;-)

php pdf email joomla dompdf

11
推荐指数
2
解决办法
2万
查看次数

dompdf图像溢出问题

我有一个PDF生成问题,目前我的系统使用dompdf将HTML转换为PDF,这一切都运行正常.但是,如果用户插入的图像大于A4页面,则PDF会严重损坏,并且大图像下方的所有内容都会聚集在一起或根本不显示.

这里有两个PDF来显示问题的一个例子

这个很好

https://dl.dropbox.com/u/65878041/OK.pdf

这个你可以看到第一张图像大于A4页面时所有内容都被搞砸了,当它应该与前一张相同时.

https://dl.dropbox.com/u/65878041/Issue.pdf

我理想的做法是将图像分成几部分,并根据需要跨越多个页面.就像在这个LaTeX解决方案中完成的一样.有没有可能用dompdf这样做?或者用于HTML到PDF的任何其他PHP库?

我自己调查了一下,显然如果它比A4页面大,我可以剪掉一张图片.但问题在于需要知道手头上是否有文字或类似内容的方法,所以它并不那么简单.

谢谢大家.任何见解都将非常感激.

php pdf pdf-generation image-processing dompdf

11
推荐指数
1
解决办法
3309
查看次数

如何使用dompdf创建多个页面

我在使用多维数组及其值时遇到了一些麻烦.

我正在寻找的是,从我的查询中我在数组中搜索教师的名字.之后我想用dompdf创建一个pdf.问题在于循环.我无法创建一个适合我想要它工作的循环.我的示例查询是

    $q11 = "select id from teachers order by teacher ";
    $r11 = mysql_query($q11) or die(mysql_error());
    while($rows11 = mysql_fetch_array($r11)){
        $teacher = $rows11['id'];
        $dompdf->"It will start working";
    }
Run Code Online (Sandbox Code Playgroud)

现在我知道,这段代码令人困惑,但我想要的是,它应该为每个教师在一个单独的pdf文件中创建dompdf.就像查询一样,它应该获取教师,并且对于每个教师,它应该创建一个dompdf页面.目前,它根据我的查询搜索的最后一个值只生成一个页面.

请帮忙.这有点紧急.

php mysql arrays dompdf

11
推荐指数
2
解决办法
2万
查看次数

调试iconv_strlen错误 - PHP 5.5

我正在尝试使用Laravel和DomPDF将文档导出为PDF.这适用于我的Mac,但不适用于登台或实时服务器.错误如下:

我不知道这意味着什么,也找不到任何解决方案.

iconv_strlen(): Wrong charset, conversion from8位// IGNORE'到 UCS-4LE' is not allowed

open: /srv/www/html/vendor/patchwork/utf8/class/Patchwork/PHP/Shim/Mbstring.php

        return true;
    }

    static function mb_strlen($s, $encoding = INF)
    {
        INF === $encoding && $encoding = self::$internal_encoding;
        return iconv_strlen($s, $encoding . '//IGNORE');
    }
Run Code Online (Sandbox Code Playgroud)

我尝试将以下内容添加到.htaccess中

AddDefaultCharset UTF-8
Run Code Online (Sandbox Code Playgroud)

我尝试将以下内容添加到视图的顶部,我正在尝试生成pdf:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
Run Code Online (Sandbox Code Playgroud)

如果您需要任何进一步的信息来帮助我进行调试,请在评论中提问.

php iconv dompdf mbstring laravel

10
推荐指数
1
解决办法
5645
查看次数

如何使用dompdf设置pdf的自定义宽度和高度?

当我使用dompdf创建我的pdf时,它会将其生成为默认的宽度和高度.我想设置我创建的pdf的自定义宽度和高度.如果在dompdf中不可能,那么请为php建议一些其他的插件.

php dompdf

10
推荐指数
1
解决办法
3万
查看次数

dompdf - 缩放pdf以适合页面

所以我使用dompdf来创建html的pdf.哪个工作真的很好,唯一的问题是当html太大而dompdf创建它超过两页.是否有一种方法可能在dompdf或html中只能将其缩放到一个页面?

非常感谢帮助!谢谢!

这是我的配置和我创建pdfs的代码.

define("DOMPDF_ENABLE_HTML5PARSER", true);
define("DOMPDF_ENABLE_FONTSUBSETTING", true);
define("DOMPDF_UNICODE_ENABLED", true);
define("DOMPDF_DPI", 120);
define("DOMPDF_ENABLE_REMOTE", true);

require_once 'dompdf/dompdf_config.inc.php';

$dompdf = new \DOMPDF();
$dompdf->load_html($html);
$dompdf->set_paper("a4", "portrait");
$dompdf->render();
$dompdf->stream("page.pdf", array("Attachment" => 0));  
Run Code Online (Sandbox Code Playgroud)

html php pdf dompdf

10
推荐指数
1
解决办法
1万
查看次数