如何使用ODFDOM设置ODS电子表格的页面大小,页面方向和页面边距?

问题描述 投票:0回答:2
ODFDOM

允许用户通过编程读取和创建各种开放文档格式文件,包括电子表格。 我正在尝试使用重新投放的“简单API”设置我正在创建的电子表格的各种打印选项,但是看来它们尚未公开一种简单的方法来修改文档属性,例如页面边距,页面大小(高度/宽度)和页面方向(景观/肖像)。 我需要从

spreadsheetdocument

到可以修改这些值的东西。

可以对电子表格图提供访问权限的一些基础ODF对象进行必要的呼叫。首先,我们需要获取适当的文档属性参考(对于所有示例,“电子表格”是对创建的电子表格图的参考):

StyleMasterPageElement defaultPage = spreadsheet.getOfficeMasterStyles().getMasterPage("Default"); String pageLayoutName = defaultPage.getStylePageLayoutNameAttribute(); OdfStylePageLayout pageLayoutStyle = defaultPage.getAutomaticStyles().getPageLayout(pageLayoutName); PageLayoutProperties pageLayoutProps = PageLayoutProperties.getOrCreatePageLayoutProperties(pageLayoutStyle);
java spreadsheet odf odftoolkit odfdom
2个回答
3
投票
然后,我们可以设置各种属性,例如边缘,方向和高度/宽度。请注意,页面方向值正常工作似乎需要高度和宽度值,并且高度宽度需要是所使用的方向的高度和宽度:

pageLayoutProperties.setPageHeight(pageHeightInMM); pageLayoutProperties.setPageWidth(pageWidthInMM); pageLayoutProperties.setPrintOrientation(PrintOrientation.LANDSCAPE); pageLayoutProperties.setMarginLeft(leftMarginInMM); pageLayoutProperties.setMarginRight(rightMarginInMM); pageLayoutProperties.setMarginTop(topMarginInMM); pageLayoutProperties.setMarginBottom(bottomMarginInMM);
I基于其他开发人员的注释

如何使用原始ODFDOM API进行此操作,并能够使用此代码成功更改生成的文档的属性。

@Romeara的答案不再起作用。在ODFDOM的最新版本中,0.12.0根本没有类。相反,必须使用

PageLayoutProperties类的setProperty

。这是链接到的源@romeara中使用的方法。

0
投票

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.