问题标签 [browsershot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Browsershot没有拍摄chartjs的快照
我正在尝试截取 chartjs 库的屏幕截图,该库通过 browsershot 设置了一个间隔,并且它不会执行 javascript 代码。这是我的代码。我得到的只是一个空白图像。
我添加了延迟,以便 chartjs 内部的函数完成。我试过使用waitForFunction
,但我不确定我是否得到了文档。任何人都可以帮忙吗?
php - Spatie Browsershot 在 Linux 服务器上不起作用。得到错误 sh: node: command not found
我在laravel 项目中使用Browsershot 。当我在本地主机上使用它时,它工作得很好。但是,无论我做什么,我似乎都无法让它在实时服务器上运行。我在 Linux VPS 上运行它。
这是我的代码(在控制器内):
我也试过添加->setNodeModulePath("/public_html/node_modules/")
。
这是我得到的错误:
我假设它与 npm 位置或 node_modules 位置有关。
但我真的不明白如何在我的情况下使用它。
任何帮助将不胜感激。
谢谢!
php - 无法让 Node 与 Laravel 和 browsershot 一起使用
我正在尝试使用下面的包来生成 pdf。
https://github.com/spatie/browsershot
我正确设置了节点。
但我无法让它与 Laravel 和 browsershots 一起使用
以下是错误:
下面是更多信息的图片: 见附图
我正在 Windows 上尝试这个。任何方向表示赞赏。
php - Spatie Browsershot 无法将网页生成为图像
我正在使用 Laravel 框架开发一个 Web 应用程序。我需要在我的应用程序中将网页生成为 pdf/ 图像。我正在为它使用 PHP 浏览器拍摄 spatie 包,https://github.com/spatie/browsershot。我使用以下代码创建了一个测试函数来生成图像。
当我运行该函数时,出现以下错误。
我正在为我的项目使用 Docker 和 Docker Compose。我的代码有什么问题?
php - Puppeteer 使用 browsershot 创建 pdf - headerHtml 和 footerHtml 错误
当我尝试在 Windows 10 上创建带有某些类或样式的 headerHtml 或 footerHtml 时,出现错误
例如 :
如果我不添加任何样式或类,一切都会正常工作:
如果我放置一个样式或类,它会返回一个错误:
或者
所以我无法设置页脚或页眉的样式,或者使用变量“PageNumber 等”,也许是因为我在 Windows 10 上尝试过?
这是我得到的错误:
谢谢
编辑 :
如果你有同样的错误,我找到了在windows 10上创建这个错误的问题,问题来自footerhtml和headerhtml里面的引号,如果我们把双引号(对于类或样式或其他)出现错误,所以我们只需要使用这样的简单引用:
php - 在 Windows 上安装 Spatie 的问题
我正在尝试为一个项目配置 Spatie/Browsershot,用 Laravel 编写,但在完成所有步骤后,我仍然收到一个错误:
'node' 不是内部或外部命令、可运行程序或批处理文件
A 已经安装了最新版本的 node 和 npm 并且它们都存在于 PATH 中并且也可以在 cmd 上工作。
就像它写在 GitHub 上的官方文档中一样,我运行过:
- npm 安装 puppeteer
- 作曲家需要 spatie/browsershot
在我写的代码中:
Program Files带有双引号,否则 Laravel 会因为两个单词之间的空格而引发错误。
我不确定路径,它们是否正确编写?(windows中反斜杠的问题)
php - 在 docker 外调用 Docker 容器
我有一个在 Apache 下运行且没有 docker 的项目。但是,在这个项目中,我有一个 PDF 导出,我想在 docker 容器中调用它。你是怎样做的?
这是我的docker-compose.yaml
:
Browsershot 服务下载 PDF 并具有 node 和 npm。为此,它模拟了一个浏览器,所以我有一个 chrome 服务,但我不知道它是否是正确的方法。
这两个命令在终端中工作:
但是,Browsershot 需要可执行节点和 npm 的路径,这两个命令突然变成了上面的 2 个命令:
变量$nodePath
isdocker-compose run --rm browsershot node
和变量$npmPath
id docker-compose run --rm browsershot npm
。此代码适用于我的本地机器中的可执行文件,例如/usr/local/bin/node
和/usr/local/bin/npm
。
但是,当我使用 docker 命令启动导出时,出现此错误:
d3.js - Puppeteer 拍摄 SVG 的模糊截图
我正在通过browsershot使用 puppeteer 来截取 D3 SVG 图的屏幕截图。虽然在本地 URL 上预览时图表看起来非常好,但一旦我用 puppeteer 对其进行截图,它看起来就不像以前那么清晰了。
手动截屏(清晰):
Puppeteer 截图(模糊):
我正在使用 Browsershot 运行以下代码。它是 puppeteer 的包装。
我试过调整视口和屏幕截图的大小——总是一样的。也许有人知道我可以尝试/看看什么?
干杯!
php - Spatie Browsershot 和信头 / CSS
我正在尝试使用spatie/browsershot和laravel-browsershot 包装器在 Laravel 应用程序中生成包含视图内容的 PDF ;我使用 svg 作为我的信头背景,并希望将视图的内容放置在每个页面上 SVG 的特定区域内。不幸的是,边距->margins(40, 20, 40, 30)
使我的#watermark
div 随边距移动 - 它不再处于固定的 0,0 位置。你能帮我正确设置水印div吗?所以它不受页边距的影响
在控制器中
在我的刀片中,我设置了以下 css
我取得的最好成绩是这个
其中虚线矩形是 SVG 文件中我希望视图的所有内容流过所有页面的区域,尊重设置的边距
我通过删除->margins(....)
php 并向<body>
标签
添加样式来实现它
如您所见,第一页底部和下一页顶部的页面边距似乎为 0
laravel - 如何解决使用 spatie laravel 的错误
我在 laravel lumen 中使用 spatie 库将文件创建为图像。但它给出了错误。
错误是:给定路径“您的存储文件路径”不包含扩展名。请附加扩展名。