问题标签 [libreoffice-writer]
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.
python - 更改 odfpy 上的字体?
如何更改 odfpy 上的字体,例如,使用 Arial 或 Comic sans。我见过一些例子,但他们只使用参数“fontsize”和“fontweight”。我找不到任何更改字体的示例,并且参数“字体”似乎不起作用。
libreoffice-writer - 在 LibreOffice Writer 中使用列表框的用户选择作为条件
我正在尝试制作一个可填写表格的 pdf,其中列表框会影响工作表的其他部分。
我的文档中有几个隐藏段落(隐藏图形等)和一个列表框。我想使用列表框选项作为条件来动态隐藏和取消隐藏各种隐藏段落。
示例:用户选择列表框上的点击,并列出猫、狗和鸟。如果用户从列表中选择“狗”,则带有狗的文字和图片的段落不再隐藏。
我知道如果 [List Box selection] != "Dog" 作为我的条件,我必须做 Hide Paragraph,我只是不知道从哪里获得 List Box 选项。感觉就像我在寻找答案或指南时碰壁了,因为我缺少特定的术语(字段?公式?)。
beanshell - 如何在 LibreOffice Writer 的表格公式中使用 BeanShell 方法作为函数?
我在这个问题上苦苦挣扎了一段时间,但我无法在线找到任何解决方案。我得到的最接近的是如何编写可以在 Calc 公式中使用的 Basic 函数,但是由于 Basic 和 BeanShell 是完全不同的语言,我找不到正确的语法/过程来在后一种语言中实现相同的功能。
在 Writer 中可以有一个表格(不是电子表格——只是普通表格),您可以在单元格上按 F2 并输入一些公式,例如=<C2>*<E2>
计算 C2 和 E2 单元格中值的乘积。
我编写了 BeanShell 方法String amountInWords(String amount, String currency)
,它将传递的amount
(例如1,234.59
)和currency
(例如“USD”)转换为单词(one thousand two hundred thirty four dollars, fifty nine cents
)。现在我想在某些单元格上按 F2 并键入公式,=amountInWords(<Table2.D3>, "USD")
然后将上述输出视为单元格内容。不幸的是我收到** Expression is faulty **
消息。
请有人给我建议,如何以所描述的方式使用这种方法,或者确认这是不可能的?非常感谢您!
python - Py3o.template:如何从 Odoo 13 格式化 HTML 变量
我正在使用 LibreOffice Writer 在 Odoo 中使用 py3o.template 处理 .odt 报告。在报告中,我从 Odoo 13 获得变量:
这些变量包含 HTML 代码。所以结果包含 HTML 标签:
是否有可能解释变量的 HTML 代码以获得正确的显示?使用 Python 函数?
谢谢 !
xml - 办公室打开 xml:id="whatever" vs type="#whatever"
我有两个 *.docx 文件,一个由LibreOffice Writer生成,一个由PHPWord 0.14.0 生成。
在 PHPWord 版本中,我有这个:
在 LibreOffice 版本中,我有这个:
这些基本上是一样的吗?就像在 HTML 中你会做的那样<div id="whatever">
,然后你会使用document.querySelector('#whatever')
. idk 如果您可以使用 Office Open XML 类似地选择单个元素,但如果可以的id="whatever"
话,这与type="#whatever"
?
libreoffice - 用于添加索引条目的 LO Writer 快捷方式
是否有用于向 Libre Office Writer 文档的索引添加条目的键盘快捷键?使用插入 - 目录和索引 - 索引条目“不方便”。
python - py3o.template 如何以正确的格式呈现“值”字段
我正在尝试使用 python(jupyter notebook)和库 py3o.template 创建自动 ODT 文档(LibreOffice writer)。
所有精细渲染到 ODT,但我无法将正确格式化的值渲染到最终文档。到目前为止,我在 ODT 模板中尝试了以下调整,但没有成功:
- 将 LibreOffice 的 idiom/region 配置更改为 US-english(我来自巴西),
- 更改表配置,
- 更改字段配置。
如果我不进行任何配置,最终文档将以文本形式获取值,但完全未格式化(十进制精度,千位分隔符)。如果我尝试调整上述选项,那么它只会得到“零”
py3o 库提到了一种(已弃用)使用特殊函数(例如 format_currency)格式化字段的方法,但这些函数会将“数字”转换为格式化的“字符串”。我设法使用它们,但这不是理想的解决方案。
我想要的是能够在最终的 odt 文档中将数字合并为具有正确格式(千位分隔符和 2 位小数精度)的数字。有什么建议么 ??
这是我的 python/jupyter 代码:
libreoffice-writer - 如果样式为“文本正文”,则无法应用自动更正
当我第一次使用工具 - 自动更正 - 应用时,它按预期工作。但是当我再次使用相同的选项时,它不会改变文本。这是因为样式从“默认”更改为不支持应用自动更正的“正文”。这是一个错误吗?
重现步骤:
- 开始作家
- 输入 adn 并检查它是否已变为 And
- 撤消(ctrl + z)确保它已更改回adn
- 工具 - 自动更正 - 应用。确保它已更改为“和”
- 在空格后再次输入adn。撤消将其从“and”更改回“adn”。确保它现在是“and adn”
- 工具 - 自动更正 - 应用
实际结果:
步骤 6 后文本保持不变“and adn”
预期成绩:
它应该改为“and and”
mailmerge - 尝试使用 UCanAccess 5.0.1 和 Jackcess 打开 Access 97 数据库时出错,邮件与 LibreOffice 合并
最近,我参加了一个 IT 考试,其中有一个关于使用 LibreOffice 与 Linux 操作系统和 Access 97 数据库作为数据源进行邮件合并的问题。问题指出,没有连接到在 Linux 上正常工作的 Access 97 数据库的连接器
在我必须选择的选项中,其中之一是将 Access 数据导出到 CSV 文件,然后在 LibreOffice 上针对 CSV 文件定义数据源。
另一种是直接针对 Access 定义一个 LibreOffice 数据源。
我有一些过去使用 UCanAccess 从 Access 2000 数据库中提取一些数据的记忆,所以即使说没有合适的连接器可用,我还是选择了第二个选项,将 LibreOffice 直接连接到 Access。
显然,正确的答案是导出为 CSV 并使用它。
我很好奇,我从 Office 97 示例中获得了一个 Access 97 数据库。名称是(西班牙语)Neptuno.mdb
当我尝试在 UCanAccess 的 console.sh 中打开它时,我得到的是以下内容:
示例数据库经常使用西班牙语字符(ñ、á、é、í、ó、ú 等)。在这些链接之后,除其他外:
我已经修改了一些代码片段来创建一个 jar 文件:
public class PruebaUCanAccess {
public static void main(String[] args) {
try {
String base = "/home/some_username/access/office97_samples/NEPTUNO.MDB";
java.util.Properties propiedades = new java.util.Properties();
propiedades.put("jackcessOpener", "prueba.ucanaccess.CharsetOpener");
Connection conn= DriverManager.getConnection(String.format("jdbc:ucanaccess://%s", base),propiedades);
try (ResultSet rsMD = conn.getMetaData().getTables(null, null, null, null)) {
while (rsMD.next()) {
String tblName = rsMD.getString("TABLE_NAME");
System.out.println(tblName);
}
}
Statement st =conn.createStatement();
ResultSet rs=st.executeQuery("SELECT * FROM Clientes");
while (rs.next()) {
System.out.println(
rs.getString("NombreCompañía")
+ " , " + rs.getString("NombreContacto")
+ " , " + rs.getString("Dirección")
+ " , " + rs.getString("Ciudad")
+ " , " + rs.getString("CódPostal")
+ " , " + rs.getString("País"));
}
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
而且我可以看到表名并包含正确拼写(即没有 ? 字符)。如果我包含我在 LibreOffice 类路径中生成的 jar,并将“;jackcessOpener=prueba.ucanaccess.CharsetOpener”添加到 LibreOffice 连接字符串,我设法在 LibreOffice 表和视图中查看拼写正确,并记录。
所以,关键是错误,当我创建一个链接到 mdb 的 odb 文件时也会出现错误,显然,错过加载表
任何人都可以对此有所了解吗?提前致谢。