Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否有提供可调dpi、可选文本和CSS支持的HTML到PDF呈现器?_Javascript_Php_C++_Pdf_Pdf Generation - Fatal编程技术网

Javascript 是否有提供可调dpi、可选文本和CSS支持的HTML到PDF呈现器?

Javascript 是否有提供可调dpi、可选文本和CSS支持的HTML到PDF呈现器?,javascript,php,c++,pdf,pdf-generation,Javascript,Php,C++,Pdf,Pdf Generation,我正在为一个使用Vue的客户创建规格表,需要制作可查看和可打印的PDF 我曾经尝试过Puppeter,但从我在网上遇到的情况来看(如果我错了,请纠正我),Puppeter不支持可选文本,也不支持调整PDF的DPI。我也有一个问题,木偶渲染PDF在低质量-字体模糊/没有抗锯齿 有什么(如果有的话)PDF渲染器会 将HTML页面呈现为PDF* 支持可选文本* 允许可调的DPI* CSS支持*(即它将呈现CSS) 可以接受URL作为参数 允许多页 并在Node/Javascript中运行(可选)

我正在为一个使用Vue的客户创建规格表,需要制作可查看和可打印的PDF

我曾经尝试过Puppeter,但从我在网上遇到的情况来看(如果我错了,请纠正我),Puppeter不支持可选文本,也不支持调整PDF的DPI。我也有一个问题,木偶渲染PDF在低质量-字体模糊/没有抗锯齿

有什么(如果有的话)PDF渲染器会

  • 将HTML页面呈现为PDF*
  • 支持可选文本*
  • 允许可调的DPI*
  • CSS支持*(即它将呈现CSS)
  • 可以接受URL作为参数
  • 允许多页
  • 并在Node/Javascript中运行(可选)
编辑:到目前为止,我发现最好的是with,但不幸的是,它不允许可选择的文本(据我所知),这是一个交易破坏者


JavaScript似乎没有这样的包,所以如果PHP或C++中有一个包,它也会被考虑。

我找到的最好的解决方案是。你可以找到一个现场演示。它使用了Phantom JS,似乎支持我需要的所有功能,除了我还没有测试过的分页符

下一个障碍是找出如何提取必要的函数,这样我就可以使用脚本中的功能,而不必传递GET查询字符串(这值得我提出自己的问题)

编辑:我没有意识到的一个问题是,似乎没有办法延迟生成PDF,这是一个问题,因为我使用的是Vue,页面必须首先生成

编辑2020: 自从这篇文章发表后,我又重温了《木偶师》,它处理了我所需要的一切

调整DPI 可以通过设置页面视口来调整DPI

木偶演员等同于。ctrl+f键用于
unitToPixels

例如

const browser=puppeter.launch();
const page=wait browser.newPage();
//将所需长度(以英寸为单位)乘以96
等待page.setViewport({
宽度:8.5*96,
身高:11*96,
});
等待 您可以在完成之前等待选择器。在我的例子中,我在身体上附加了一个类,供木偶演员聆听和捕捉

const browser=puppeter.launch();
const page=wait browser.newPage();
const html=buildDOM();//具有附加.finished类的js
等待page.setContent(html);
wait page.waitForSelector('.finished');

您是否使用该库制作了可选文本pdf?怎样?我找不到这么多信息there@Tupac最近我用了木偶演员。可能是我两年前第一次写这篇文章时弄错了,但《木偶演员》现在确实支持可选文本和可调DPI。