我正在使用 DomPdf 并尝试将我的文件转换为 pdf,但遇到下面给出的奇怪错误
我用谷歌搜索了很多次并阅读了不同的论坛,但没有得到这个错误的原因。
请帮助我。
致命错误:未捕获错误:在 C:\xampp\htdocs\dom\dompdf\src\FrameReflower\TableCell.php:37 中对 null 调用成员函数 get_cellmap():37 堆栈跟踪:#0 C:\xampp\htdocs\dom \dompdf\src\FrameDecorator\AbstractFrameDecorator.php(893): Dompdf\FrameReflower\TableCell->reflow(NULL) #1 C:\xampp\htdocs\dom\dompdf\src\FrameReflower\TableRow.php(52): Dompdf \FrameDecorator\AbstractFrameDecorator->reflow() #2 C:\xampp\htdocs\dom\dompdf\src\FrameDecorator\AbstractFrameDecorator.php(893): Dompdf\FrameReflower\TableRow->reflow(NULL) #3
代码
require_once './dompdf/autoload.inc.php';
use Dompdf\Dompdf;
$dompdf = new Dompdf();
$dompdf->loadHtml(file_get_contents('./my-file.php'));
$dompdf->setPaper('A4','landscape');
$dompdf->render();
$dompdf->stream('codexworld',array('Attachment'=>0));
Run Code Online (Sandbox Code Playgroud)
我的文件.php
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id="page-wrap">
<form method="post" action="save_view.php" novalidate="">
<div id="header">
<h2 class="title" style="text-decoration: underline;font-size:2em;font-family: Brush Script Mt;">Pro Tech Diagnostics</h2>
<!-- <img id="image" width="auto" src="images/Logo.png" alt="logo" height="60"/>-->
<div class="adjust_contact">
<p>26893 Bouquet Canyon Rd. Suite C204 Saugus, CA 91350</p>
<div …Run Code Online (Sandbox Code Playgroud) 我在设计系统的 pdf 时遇到问题。这是我的 pdf 图片:
我想要做的是将表中的项目数量限制为 10 个项目,然后其余的项目进入下一页,其中的页眉和页脚已修复。就像这样: 购买请求 PDF
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PDF</title>
<link href="{{ asset('css/bootstrap.min.css') }}" rel="stylesheet">
<style>
#items tr{border:1px solid #000000;}
#items tbody tr td{border:1px solid #000000;}
#items thead td{background-color:#231F20;color:#FFFFFF;}
.header { position: fixed; left: 0px; top: -40px; right: 0px;}
.footer { position: fixed; left: 0px; bottom: 200px; right: 0px;}
</style>
<link rel="stylesheet" href="{{ asset('css/lato.css') }}">
<link href="https://fonts.googleapis.com/css?family=Libre+Barcode+128" rel="stylesheet">
</head>
<body>
<div class="container-fluid">
<div class="header">
<div class="row">
<div class="col-xs-3" style="font-family: 'Libre …Run Code Online (Sandbox Code Playgroud) 使用的技术:
PHP: v7.4
SilverStripe: v4.7
DomPDF: 1.0
Run Code Online (Sandbox Code Playgroud)
在发布此内容之前,我确保能够遵循与此 DomPDF 相关的其他提示和文章,但未显示包含的图像,但图像仍然无法工作
在代码方面,我已经setIsRemoteEnabled根据 github 页面中提到的一些开发人员启用了 DomPDF 的选项
查看生成的发票,我能够显示图像的路径,当我单击它时,它会正确显示

只是该图像不适用于 DomPDF,我是否错过了任何内容,或者我的代码库中是否有错误的代码?非常感谢您的帮助,已经被困了 4 天了
当我不使用 domPDF 运行时图像会出来,但如果我使用 domPDF 它会这样说

这是我的 html 代码
<img src="{{public_path('assets/img/logoprov.png')}}" height="100" width="100">
<img src="{{public_path('img/logoprov.png')}}" height="100" width="100">
<img src="{{asset('img/logoprov.png')}}" height="100" width="100">
Run Code Online (Sandbox Code Playgroud)
这是我的控制器代码
$surat = Surat::find($id);
view()->share('surat',$surat);
$pdf = PDF::loadView('sekretariat.pdf.index',compact('surat'));
return $pdf->download('pdf_file.pdf');
Run Code Online (Sandbox Code Playgroud) 我只是测试dompdf.并且发现我生成的东西不能被铬染成红色.试图用sumatra pdf阅读器打开它,它打开了.尝试从我的电子书中打开一些随机的pdf文件,然后用红色表示.我的代码是否有问题导致chrome无法读取它:
<?php
require_once("dompdf/dompdf_config.inc.php");
$dompdf = new DOMPDF();
$d_r = array(array('name'=>'ab', 'course'=>'bsit'), array('name'=>'yoh', 'course'=>'bscs'));
ob_start();
put_table($d_r);
file_put_contents('sample.html', ob_get_contents());
generate_pdf('sample.html');
function put_table($raw_data){
?>
<table border="1">
<tr>
<th>Name</th>
<th>Course</th>
</tr>
<?php foreach($raw_data as $data){ ?>
<tr>
<td><?php echo $data['name']; ?></td>
<td><?php echo $data['course']; ?></td>
</tr>
<?php } ?>
</table>
<?php
}
function generate_pdf($filename){
global $dompdf;
$dompdf->load_html(file_get_contents($filename));
$dompdf->render();
$dompdf->stream($filename. ".pdf");
}
?>
Run Code Online (Sandbox Code Playgroud) 我使用Dompdf将Html页面转换为PDF.客户要求pdf应在文件背景上有水印图像.我已经尝试了许多编码方式,也有不同的CSS风格,但它没有帮助.有人对此有任何想法吗?请帮帮我.
我正在尝试使用dompdf创建一个pdf报告.报告需要在第一页的顶部放置公司徽标,并在每个页面上放置页眉和页脚.我找到了在stackoverflow上的其他地方 添加页眉和页脚到dompdf文档的解决方案.我遇到的问题是公司徽标需要位于第一页的页眉上方,而不是显示在其他页面上
这样的事情
Company Logo
- header
- content here
- footer
------
- header
- content here
- footer
Run Code Online (Sandbox Code Playgroud)
有没有办法使用dompdf这样做?
我在dompdf的pdf创建中遇到了小问题.在html页面标题位置:固定内容重叠在页面的页眉上.页面内容是动态加载的.可以清除内容重叠问题.这个链接html的 html版本
我在PHP中使用Dompdf以便以PDF格式打印报告。我不知道如何以在屏幕上看到的方式打印HTML引导程序代码。例如,您知道如果设备较小,引导网格将崩溃。在这种情况下,在我的PDF中,网格看起来就像是位于移动设备或表格中一样,例如col-xs-x或col-sm-x代替col-lg-x。有没有一种方法可以在Dompdf中指定视图的外观col-lg-x?
这是示例html引导程序代码:
$content2='<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="jumbotron">
<h1>My First Bootstrap Page</h1>
<p>Resize this responsive page to see the effect!</p>
</div>
<div class="row">
<div class="col-sm-4 col-md-4 col-lg-4">
<h3>Column 1</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit...</p>
<p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris...</p>
</div>
<div class="col-sm-4 col-md-4 col-lg-4"> …Run Code Online (Sandbox Code Playgroud) 我在Laravel 5.2中有一个路由问题。我有一个结果页面,其中显示有关人员的详细信息。我想要一个按钮,该按钮启用后会生成PDF页面。传递变量一直是个问题,但是我现在非常接近!我将公开我的代码以进行详细说明。
结果页
<form action="generatePDFpage" method="get">
<button type="submit" class="btn btn-default">Generate PDF!</button>
</form>
Run Code Online (Sandbox Code Playgroud)
routes.php
Route::get('/dashboard/result/generatePDFpage', 'resultController@GeneratePDFc');
Run Code Online (Sandbox Code Playgroud)
生成PDFc控制器
public function GeneratePDFc(){
$id_array_implode = "HALLO";
$pdf= PDF::loadView('GeneratePDF', ["test"=>$id_array_implode])->setPaper('a4', 'landscape');
return $pdf->stream('invoice.pdf');
}
Run Code Online (Sandbox Code Playgroud)
因此,在结果页面上,我正在使用数组($ id_array)在数据库中搜索匹配的记录。我需要将此变量传递给GeneratePDFc控制器,以便可以再次将其传递给loadView函数!
有人可以帮我吗?:-)
dompdf ×10
php ×6
html ×3
laravel ×3
pdf ×3
css ×1
laravel-5.2 ×1
laravel-5.5 ×1
silverstripe ×1