小编joh*_*ohn的帖子

puppeetersharp 中的单页 PDF

我尝试过将网页转换为单页 pdf,但不支持此操作。有什么解决方法可以实现这个要求吗?

我已经尝试过根据 html 内容大小设置 pdf 页面大小。但对于所有网页来说,它并没有按预期工作。我已经使用 EvaluateExpressionAsync 获取了 html 内容大小。下面是我试图实现我的要求的代码片段,但不适用于所有网页(主要是响应式网页)。

int height = await page.EvaluateExpressionAsync("document.body.clientHeight");
Run Code Online (Sandbox Code Playgroud)

dynamic metrics = await Client.SendAsync("Page.getLayoutMetrics").ConfigureAwait(false); 

var width = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(metrics.contentSize.width.Value))); 
var height = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(metrics.contentSize.height.Value)));
Run Code Online (Sandbox Code Playgroud)

我已将上述高度和宽度设置为 pdf 页面大小,如屏幕截图实现,但不适用于所有网页。但它在屏幕截图实现中工作正常。你能帮助我实现这个目标吗?

c# webautomation google-chrome-headless puppeteer-sharp

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