用PHP编写的HTML到PDF转换器
使用 DOMPDF 和 WordPress 生成的 PDF 中不显示图像
我正在开发一个 WordPress 插件,我可以使用 DOMPDF 生成 PDF。生成过程有效,但我遇到了图像未显示在生成的 PDF 中的问题。 这里...
我正在使用 DOMPDF 库生成 PDF,到目前为止一切顺利,但我收集的已完成表单字段未在 PDF 中收集和显示。我想知道我做错了什么,我会......
使用Dompdf将数据存储在pdf文件中: 这个功能工作正常: $pdf = \App::make('dompdf.wrapper'); $pdf->loadHTML('Test '); 返回 $pdf->stream(); 现在,当尝试 $p...
我有一个非常简单的 Livewire 组件: 我有一个非常简单的 Livewire 组件: <?php namespace App\Http\Livewire; use PDF; use Livewire\Component; use App\Models\Employee; class Employees extends Component{ public $employees; public function mount() { $this->employees = Employee::all()->toArray(); } public function createPDF() { $this->employees = Employee::all()->toArray(); // dd($this->employees); $pdf = PDF::loadView('livewire.employees', $this->employees); return $pdf->download('pdf_file.pdf'); } public function render() { return view('livewire.employees'); } } 还有一个非常简单的刀片文件,我在其中呈现单击按钮时要打印的员工姓名。 <div class="container mx-auto"> @foreach ($employees as $e) <h2>{{ $e['name'] }}</h2> @endforeach <button wire:click="createPDF" class="mt-8 bg-black text-white px-4 py-2 rounded">PDF</button> </div> 问题是我得到了 foreach 循环内的变量“未定义的变量 $employees”。 您没有在 PDF 调用中设置变量,因此该变量不存在。 简单改变 $pdf = PDF::loadView('livewire.employees', $this->employees); 到 $pdf = PDF::loadView('livewire.employees', ['employees' => $this->employees]); 附注我不太明白为什么每次单击 PDF 生成按钮时都会获取员工。您已经将其设置在安装中,因此它应该已经设置。每次重新获取都相当慢。
我正在 PDFGeneratorService 中制作 PDF,除了图像未渲染外,一切正常。我已将图像更改为jpeg格式,我已添加chroot,我已添加 'dompdf' =>[ ...
Dompdf while 循环 - 仅最后一条记录转换为 pdf
<?php require"../db_connection1.php";?> <?php require"../db_connection4.php";?> <?php require"../db_connection5.php";?> <?php require_once('../dompdf/autoload.inc.php') ; use Dompdf\Dompdf ; ob_start() ; if (isset($_POST["submit"])) { $payroll_date = mysqli_real_escape_string($connection5, $_POST["payroll_date"]) ; } $query = "SELECT * FROM ".$payroll_date." "; $result = mysqli_query($connection5, $query); while ($row1 = mysqli_fetch_array($result)) { $Employee_Number = $row1[0] ; } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title></title> <link href="../bootstrap.min.css" rel="stylesheet"> <style type="text/css"> .SECTION-1 { margin-top:110px ; margin-left: 108px ; margin-bottom: 5px ; } </style> </head> <body> <form action = "#" method ="POST"> <div class ="SECTION-1" > <?php $query_hr_data = "SELECT * FROM applicants_final WHERE employee_number = '{$Employee_Number}' "; $result = mysqli_query($connection4, $query_hr_data ); while ($row5 = mysqli_fetch_array($result)) { $cost_center = $row5['cost_center'] ; $position = $row5['position'] ; $query = "SELECT * FROM ".$payroll_date." WHERE EE_NUMBER = '{$Employee_Number}' "; $result = mysqli_query($connection5, $query); while ($row1 = mysqli_fetch_array($result)) { $EE_NUMBER = $row1['EE_NUMBER'] ; $EE_NAME = $row1['EE_NAME'] ; $query2 = "SELECT * FROM ".$payroll_date." WHERE EE_NUMBER = '{$Employee_Number}' "; $result = mysqli_query($connection1, $query); while ($row2 = mysqli_fetch_array($result)) { $LATES_UNDERTIME_HRS = $row2['LATES_UNDERTIME'] ; $ABSENCES_HRS = $row2['ABSENCES'] ; echo "<table id ='heading'>" ; echo"<tr>" ; echo"<th id ='heading-2-1'>EE Name </th>" ; echo"<td id ='heading-2'>" .$row1['EE_NAME']." </br> </td>" ; echo"<th id ='heading-2-1'>Philhealth # </th>" ; echo"<td id ='heading-2'>" .$philhealth_number." </br> </td>" ; echo"</tr>" ; echo"<tr>" ; echo"<th id ='heading-2-1'>Basic_Salary </th>" ; echo"<td id ='heading-2'>" .number_format($basic_salary,2). "</br> </td>" ; echo"<th id ='heading-2-1'> Allowances </th>" ; echo"<td id ='heading-2'>" .number_format($deminimis_benefits,2)."</br> </td>" ; echo"</tr>" ; echo "</table>" ; echo "<table id='design-8'>" ; echo"<tr>" ; echo"<th>Lates_Undertime ( minutes ) </th>" ; echo"<td>" .$LATES_UNDERTIME_HRS. "</br> </td>" ; echo"<td>" .$LATES_UNDERTIME." </br> </td>" ; echo"</tr>" ; echo"<tr>" ; echo"<th>Absences </th>" ; echo"<td>" .$ABSENCES_HRS." </br> </td>" ; echo"<td>" .$ABSENCES." </br> </td>" ; echo"</tr>" ; echo "</table>" ; echo "<div id='design-2'> *** Payslip Confidential *** </div>" ; ?> </form> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> </body> </html> <?php $html = ob_get_clean(); $dompdf = new Dompdf(); $dompdf->load_html($html); $dompdf->setPaper(array(0, 0, 612, 1100), 'portrait'); $dompdf->render(); $pdf = $dompdf->output(); $file_location = "C:/wamp/www/dbs-program/payroll-program/version-3.4/pdfReports/".$Employee_Number.".pdf" ; file_put_contents($file_location, $pdf); } } } ?> 谢谢布莱恩,我更新了代码,我只是删除了冗余数据,这样就可以了 不要太长。再次感谢您再次查看。 我想打印 50 多个 pdf 并将其保存到指定文件夹,pdf 名称为员工编号,来自 mysql数据库。现在的问题只是 while 循环中的最后一个数据正在被 转换为pdf,如果我将第一个查询的右括号转移到 html后的最后一个代码,转换后的pdf只是第一个。当我 echo $Employee_Number = $row1[0] 我得到了所有 50 多个数据。我已经尝试过了 迭代,例如 for,但它变得更复杂,因为它打印出来 pdf 的确切数量,但没有打印任何数据,希望有人 有关如何继续的帮助或提示。先谢谢你了。 I also have a similar problem.only the last record in the database gets converted into pdf.anyone to help. <?php `require_once('./dompdf/dompdf/autoload.inc.php'); include('connect.php'); use Dompdf\Dompdf;` `$sql ="SELECT fname,lname FROM worker"; $results= mysqli_query($conn,$sql); while($row=mysqli_fetch_assoc($results)){ $fname=$row['fname']; $lname=$row['lname']; $i=1; $html=''; $html .=' <table border="1" cellspacing="0"style="width:100%; text-align:center" > <tr> <th>#</th> <th>FIRST NAME</th> <th>LAST NAME</th> </tr> <tr> <td >'.$i.'</td> <td> '.$fname.'</td> <td>'.$lname.'</td> </tr> </table> '; $i++; } $dompdf= new dompdf(); $dompdf->loadhtml($html); $dompdf->setPaper('A4','landscape'); $dompdf->render(); $dompdf->stream("liseli",array("Attachment"=>0));` ?>
有没有办法禁用 PHP 中使用 DOMPDF 生成的文档的复制和粘贴? 我喜欢在我的网站中生成 pdf,并且还喜欢防止用户复制和粘贴内容。是...
当我使用 dompdf 创建 pdf 时,它会将其生成为默认宽度和高度。我想设置我创建的 pdf 的自定义宽度和高度。如果在 dompdf 中不可能,请建议其他一些
此代码将 HTML 转换为 PDF。 生成 PDF 时,图像不会出现,并显示错误,指出“未找到图像或类型未知”。我该如何解决这个问题?我已经实现了这个...
我使用 dompdf 类,我需要每个页面的页码编号 我这样做了并且有效: $dompdf = new Dompdf(); $dompdf->load_html($html); $dompdf->render(); $canvas = $dompdf->get_can...
在laravel中使用DomPDF将数据导出为pdf时第二列被拉伸
我在 Laravel 项目中使用 DomPDF。它打印得很好,但它拉伸了第二列图像。我需要两列占据一半的可用空间。我将在以后分享我的代码。 CSS F...
Laravel livewire DOM PDF 文件保存但未下载
我正在使用DOM PDF打印html发票页面,该方法通过livewire方法调用,文件正确保存到公共文件夹,但我需要通过浏览器下载它而不是保存它。 通讯...
我在从 dompdf 创建 pdf 时遇到小问题。在html页面标题位置:固定内容重叠在页面标题上。页面内容是动态加载的。如何清除
使用 dompdf 和 php 的 pdf 报告中出现混乱的卡纳达语字体
[ಹೌದುಯಾರಲ್ಲಿ在从 dompdf 渲染时应该像这样显示。 这是我的代码..我使用了 noto sans kannada 常规字体 ](https://i.stack.imgur.com/ADeiA.png) ಹೌದು ಯಾರಲ್ಲಿ 文字秀...
DOMPDF 在 Laravel 文档的开头创建空白页面。我已经检查了所有 html 内容,没有空格。有人有建议吗? 下面是我试图将其放入 pdf 文件中的代码...
Dompdf page_text 使用画布在第一页之后的页面上丢失
我正在尝试在页脚中获取页面计数器。为此,我使用了在 php 中使用 getCanvas()->page_text() 函数的选项(与我无法显示的脚本版本相反)
使用 barryvdh/laravel-dompdf 在一篇论文中显示条形码和标题
我在 laravel 中使用 barryvdh/laravel-dompdf 包来制作 pdf 文件并打印它们。 我的打印机打印小尺寸的条码,例如 45mm * 30mm 我使用这段代码制作 pdf 之类的 $pdf...
建议我使用 laravel 的好 pdf 生成器。在 laravel 中使用 DOMPDF 存在引导程序、css 边框等问题
Bootstrap 基本网格系统在 DOMPDF 中不起作用。我正在使用 Laravel 版本 7.3 $pdf = \App::make('dompdf.wrapper'); $pdf->loadView('pdf.sale_invoice', compact('invoice')); 返回 $pd...
如何在 laravel 的 dompdf 中显示印地语和古吉拉特语字体
我在我的 laravel 项目中使用印地语字体使用 dompdf 生成 pdf。 我已经下载了 Noto Sans Devanagari 字体并放在 myproject\storage onts 文件夹下。 我在 blade html f 中使用过...