php - 如何在php中格式化打印输出
问题描述
我是 php 新手,并编写了一个代码,该代码从数据库中获取一些信息并将其转换为 code128 条形码。将其回显到页面是没有问题的:
$finalvar = '<p>'.bar128(stripcslashes($row['Flowers'])).'</p>';
echo $finalvar;
到现在为止还挺好。我现在想在网络打印机上打印这个条形码并使用它:
$port = "9100";
$host = "10.64.33.33";
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
echo "socket_create() failed, reason: " . socket_strerror(socket_last_error ()) . "\n";
} else {
echo "OK.\n";
}
$result = socket_connect($socket, $host, $port);
if ($result === false) {
echo "socket_connect() failed.\nReason: ($result) " . socket_strerror (socket_last_error($socket)) . "\n";
} else {
echo "OK.\n";
}
socket_write($socket, $finalvar);
socket_close($socket);
打印效果很好,但不是像图片中那样打印条形码,纸张看起来像这样:
<p><table cellpadding=0 cellspacing=0><tr><td><div class="128"
style"border-"
我认为这可能更像是一种格式化的东西,但我没有找到任何有用的东西。如何打印$finalvar
如上图所示?
解决方案
谷歌搜索“render html to image”给出了一些结果,例如这里。查看自述文件,将您的 html 转换为像这样的图像/pdf 似乎非常简单(假设您安装了它)
use Spatie\Browsershot\Browsershot;
Browsershot::html($someHtml)->savePdf('example.pdf');
我不熟悉使用套接字和打印,但是您应该能够通过例如读取文件内容
file_get_contents('file.pdf')
并做你以前做过的事情。
推荐阅读
- swift - RxSwift:链接流的问题
- flutter - Flutter 使页面退出过渡动态/可变
- ajax - 如何在 Vue 组件渲染之前加载 Axios Response?
- r - 闪亮:在标签面板之间循环创建表格的更好方法
- jquery - 重新初始化 tinyMCE
- flutter - 更改容器边框颜色的颜色
- php - 按列值对多行结果集数据进行分组
- flutter - 如何在 Android Studio (Win10) 中运行单个 Flutter 测试?
- r - R:可以制作雷达图,但是 ggplot 或 plotly 的 3d 表面版本?
- javascript - 在按钮单击时添加一个子 `div` 组件(ReactJS)