问题标签 [princexml]

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.

0 投票
1 回答
110 浏览

css - 当前浏览器真的支持@page 吗?

我曾经认为唯一支持@page的布局引擎是PrinceXML,但最近我发现了这个: https ://developer.mozilla.org/en-US/docs/Web/CSS/@page

尝试在不同的浏览器和 PrinceXML 中打印此演示页面。

我错过了什么吗?

0 投票
1 回答
510 浏览

css - 如何使用 Rails 中的打印样式表将 doraptor 转换为 pdf?

所以我有一些 Rails 3.2.x 代码,它采用 HTML 视图页面并使用 docraptor 打印服务将其输出为 PDF。唯一的问题是它不会缩小内容以适应 PDF 页面,因此存在溢出。

我最初尝试进行媒体查询以注入一些用于打印的 css,但这似乎并没有做任何事情。

我有哪些选择可以尝试使这项工作发挥作用?

1)我考虑过制作一个单独的打印样式表(而不是媒体查询),但我不确定当我通过 POST 请求将 HTML 文档发送给 docraptor 时,它是否以“打印模式”处理 HTML 文档。

2) 我还可以制作一个单独的 Rails 视图以更窄的宽度(比如 500 像素)打印出来,以确保输出时所有内容都适合 PDF 页面。这是更多的工作,所以我试图做一些像#1 这样的工作,但我没有任何运气。

0 投票
2 回答
168 浏览

perl - 对结构化文本文件进行排序

我正在从 LaTeX 迁移到 PrinceXML。我需要做的一件事是转换参考书目。我已将.bib文件转换为 HTML。然而,由于 LaTeX 为我整理了条目,我没有注意将它们按正确的顺序排列——但在 HTML 中,声明的顺序确实很重要。

所以我的问题是:使用 Linux 命令行工具(例如 Perl 是可以接受的,但 Javascript 不是),我怎样才能像这样对源文件进行排序:

看起来像这样:

标准是:

  1. 包含条目的<li>元素根据作者按字母顺序排序(即,从一个<li id="到其对应的所有内容都</li>将作为单个块移动)。
  2. 在每个条目中,元素按以下顺序排列:
    1. 线匹配class="ref-author"
    2. 线匹配<cite>
    3. 线匹配class="ref-year"
    4. class="publisher"为了清楚起见,我在示例中省略了更多元素(例如);另外,我经常遇到这个排序问题。因此,如果可以自由指定要匹配的表达式(例如,作为脚本中的数组声明),将会很有帮助。
  3. 文件的其余部分(外部/id="references"/,/-- references --/)保持不变。
  4. 结果文件的每一行都应该保持不变,除了它在文件中的位置(添加这一点是因为我尝试的 XML 解析器破坏了我的缩进)。

sed我使用and解决了 1、3 和 4 sort,但不能让 2 以这种方式工作。

0 投票
1 回答
221 浏览

javascript - 打印 HTML 时,如何确定页面末尾还剩多少空间?

我正在使用 PrinceXML 将 HTML 打印为 PDF。

我经常打印一系列图像,有的很大,有的很小。

当我这样做时,我想从适合页面剩余空间的最大图像开始。

如何确定页面结束前还剩多少空间?

理想情况下使用PrinceXM L 支持的 CSS,尽管我知道 JavaScript 可能是必要的。

0 投票
1 回答
395 浏览

ruby-on-rails - 使用 Princely 插件 Rails 4.2.1 使用 Prince 生成 pdf 时找不到图像

当我渲染 html 视图时,我在 app/assets/images/ 中有一堆图像,这些图像按预期呈现。当我通过princely渲染pdf视图时,它们不存在我只是得到这样的东西: Bd header70 b cc0e9cd02bd0b2ec1f31f22bbfe90be47fec42de002e9f5445603b82b492bdaa

在我的控制器中,我有这个(根据 Princely Github 页面):

在我看来:<%= image_tag("bd_header70_b.png") %>

路径似乎是错误的,请参阅下面 Prince 日志中的片段:

2015 年 9 月 28 日星期一 08:59:43:/home/pjt/Q2/public//assets/bd_header70_b-cc0e9cd02bd0b2ec1f31f22bbfe90be47fec42de002e9f5445603b82b492bdaa.png:警告:无法打开输入文件:没有这样的文件或目录

路径应该是:/home/pjt/Q2/app/assets/images/bd_header70_b-cc0e9cd02bd0b2ec1f31f22bbfe90be47fec42de002e9f5445603b82b492bdaa.png Rails 4 不再在 /home/pjt/Q2/public/ 中存储图像,我不明白“//”在全部。

我正在使用 Ubuntu 14.04、Prince 10 和 Princely 插件,并且处于开发模式。

对此的帮助将不胜感激。

0 投票
0 回答
295 浏览

php - Princexml 页脚仅显示第一行

嗨,我有princexml的问题。我需要使用重复页脚呈现页面。此 onbe 工作正常,但在每个站点上仅显示页脚内容的第一行。页脚内容是一个有两行的表格。第一行在每个单元格上都有不止一行。问题是只显示第一行的第一行,而不是整个表格。有人知道为什么吗?

页脚的 HTML 部分:

 

 

和 css 部分:

0 投票
1 回答
439 浏览

css - 由 Prince 的平铺图像组成的叠加层

我有一个文档,我正在使用 Prince 将其转换为 PDF。我想要一个叠加层,它将在演示环境中显示重复的文本,以便可以标记生成的文档。

通常,我会使用这样的元素应用这样的水印

然而,Prince 不会在分页符之间拆分绝对定位的元素,因此水印在除第一页之外的任何页面上都将不可见。有人建议我把水印图片放在页边距框中,然后改变框的位置,使图像覆盖页面。

我试图这样做以取得部分成功,但我不明白如何更改页边距的位置以使其覆盖整个页面(无法理解这一点)。

0 投票
2 回答
479 浏览

php - 如何将“Prince”库添加到 CodeIgniter?

我想使用这个库: http: //www.princexml.com/这可以帮助我从 HTML/XML 文件创建 PDF 文件。

我的控制器上有这个:

我得到了这些错误:

遇到 PHP 错误

严重性:警告

消息:Prince::__construct() 缺少参数 1,在第 1247 行的 C:\wamp\www\tools\system\core\Loader.php 中调用并定义

文件名:库/prince.php

行号:48

回溯:

文件:C:\wamp\www\tools\application\libraries\prince.php 行:48 功能:_error_handler

文件:C:\wamp\www\tools\application\controllers\aso\Cli_kas.php 行:304 功能:库

文件:C:\wamp\www\tools\index.php 行:292 功能:require_once

遇到 PHP 错误

严重性:通知

消息:未定义的变量:exePath

文件名:库/prince.php

行号:50

回溯:

文件:C:\wamp\www\tools\application\libraries\prince.php 行:50 功能:_error_handler

文件:C:\wamp\www\tools\application\controllers\aso\Cli_kas.php 行:304 功能:库

文件:C:\wamp\www\tools\index.php 行:292 功能:require_once

遇到 PHP 错误

严重性:警告

消息:proc_open(): CreateProcess 失败,错误代码 - 87

文件名:库/prince.php

行号:796

回溯:

文件:C:\wamp\www\tools\application\libraries\prince.php 行:796 功能:proc_open

文件:C:\wamp\www\tools\application\libraries\prince.php 行:528 功能:convert_internal_file_to_passthru

文件:C:\wamp\www\tools\application\controllers\aso\Cli_kas.php 行:311 功能:convert_file_to_passthru

文件:C:\wamp\www\tools\index.php 行:292 功能:require_once

遇到未捕获的异常

类型:异常

消息:无法执行 "" --structured-log=buffered " http://localhost/temp/test.html " -o -

文件名:C:\wamp\www\tools\application\libraries\prince.php

行号:814

回溯:

文件:C:\wamp\www\tools\application\libraries\prince.php 行:528 功能:convert_internal_file_to_passthru

文件:C:\wamp\www\tools\application\controllers\aso\Cli_kas.php 行:311 功能:convert_file_to_passthru

文件:C:\wamp\www\tools\index.php 行:292 功能:require_once

这是我第一次从 CodeIgniter 运行外部库,我不知道该怎么做,并且 codeigniter 文档没有提到太多信息。

创建 ALIAS 不起作用,所以我认为这就是它无法识别exePath.

我如何使用所有“Prince”库并让它在 CodeIgniter 上运行?

0 投票
0 回答
87 浏览

css - 如何在 Sass 中包含非标准 CSS @-rules?

我正在尝试在我的 Sass 工作流程中添加来自Prince XML的一些非标准 CSS @-rules ,但找不到这样做的方法。

所需的 CSS 输出:

当包含在 Sass 中时,这会产生一个未关闭的块错误。

以下代码编译,但只是忽略了 CSS 输出中的整个块:

有没有办法做到这一点?

0 投票
0 回答
1133 浏览

html - 以 300dpi 打印的样式表

我正在尝试用 HTML 和 CSS 创建一本 .pdf 书。我用 72dpi 做过一次,效果很好。现在我想用 300dpi 分辨率做同样的事情。

我正在使用 A4 页面大小和 Prince XML 将 HTML 文件转换为 .pdf 对于我使用的最后一个项目

它工作得很好。分辨率为 300dpi 的页面大小为 3508px x 2480px。如果我将其用作样式,它会在浏览器中正确显示,但如果我打开打印预览或通过 Prince 将其转换为 .pdf,则字体会更大,并且创建的页面多于一个。

我假设使用595px( 21cm=8.268inch=595px@72dpi) 的宽度。

如何强制打印视图也为 2480px 宽?