Web Front-end
HTML Tutorial
Method to obtain page setting information (margins, paper size, output direction) from BIRT report file_html/css_WEB-ITnose
Method to obtain page setting information (margins, paper size, output direction) from BIRT report file_html/css_WEB-ITnose
When printing a report, especially a copy-printed report, the page setting information is very important, such as page margins, paper size, output direction, etc., and the relevant parameters of each report may be different, so the relevant parameters are from Obtaining it from specific reports is a very normal and reasonable idea.
If BIRT is used as a report development tool, the report designer is responsible for the production of the report, and the BIRT runtime is responsible for processing the report file. For the browser, the BIRT back-end output is a web page and does not include page settings. For related information, the browser has its own print setting options and will not read them from the web page. However, the report designer provides a setting interface for page setting information when designing the report. Therefore, we need to manually write code through the runtime API to get the page settings from the specific report. Obtain the page setting information from BIRT, and then pass the parameters to the printer through other methods (operating the printer is beyond the scope of this article). This article provides relevant sample code through research on the source code of BIRT.
The page setting information of the BIRT report designer is reflected in the properties panel corresponding to the home page tab. I won’t go into details here. Just go to the code:
IReportEngine birtEngine = ...;Map moduleOptions = new HashMap();moduleOptions.put(IModuleOption.RESOURCE_FOLDER_KEY,sc.getRealPath("/"));IReportRunnable runnable = birtEngine.openReportDesign(reportFileName,null,moduleOptions);IMasterPage simpleMasterPage = runnable.getDesignInstance().getReport().getMasterPage("Simple MasterPage");String pageType =(String) simpleMasterPage.getUserProperty("type");//纸张类型Double height = 0.0;Double width =0.0;//如果是自定义纸张类型,需要获取纸张的宽和高if("custom".equalsIgnoreCase(pageType)){ DimensionValue heightDV = (DimensionValue) simpleMasterPage.getUserProperty("height"); DimensionValue widthDV = (DimensionValue) simpleMasterPage.getUserProperty("width"); height = heightDV.getMeasure(); width = widthDV.getMeasure();}String orientation = (String) simpleMasterPage.getUserProperty("orientation");//打印输出方向 landscape:横向,portrait:纵向DimensionValue topMarginDV = (DimensionValue)simpleMasterPage.getUserProperty("topMargin");double topMargin = topMarginDV.getMeasure();//上边距String unit = topMarginDV.getUnits();//单位This There is a strange place in it, that is, there is a name in the property editor of the homepage. This name can be modified. The default is Simple MasterPage. If you want to obtain the configuration information of this page, the getMasterPage method also needs to pass this name in as a parameter. This is rather strange. There is only one page configuration plan. What is the use of this name?
Hot AI Tools
Undresser.AI Undress
AI-powered app for creating realistic nude photos
AI Clothes Remover
Online AI tool for removing clothes from photos.
Undress AI Tool
Undress images for free
Clothoff.io
AI clothes remover
AI Hentai Generator
Generate AI Hentai for free.
Hot Article
Hot Tools
Notepad++7.3.1
Easy-to-use and free code editor
SublimeText3 Chinese version
Chinese version, very easy to use
Zend Studio 13.0.1
Powerful PHP integrated development environment
Dreamweaver CS6
Visual web development tools
SublimeText3 Mac version
God-level code editing software (SublimeText3)
Hot Topics
1378
52
What is the purpose of the <progress> element?
Mar 21, 2025 pm 12:34 PM
The article discusses the HTML <progress> element, its purpose, styling, and differences from the <meter> element. The main focus is on using <progress> for task completion and <meter> for stati
What is the purpose of the <datalist> element?
Mar 21, 2025 pm 12:33 PM
The article discusses the HTML <datalist> element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159
What are the best practices for cross-browser compatibility in HTML5?
Mar 17, 2025 pm 12:20 PM
Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.
What is the purpose of the <meter> element?
Mar 21, 2025 pm 12:35 PM
The article discusses the HTML <meter> element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates <meter> from <progress> and ex
How do I use HTML5 form validation attributes to validate user input?
Mar 17, 2025 pm 12:27 PM
The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.
What is the viewport meta tag? Why is it important for responsive design?
Mar 20, 2025 pm 05:56 PM
The article discusses the viewport meta tag, essential for responsive web design on mobile devices. It explains how proper use ensures optimal content scaling and user interaction, while misuse can lead to design and accessibility issues.
What is the purpose of the <iframe> tag? What are the security considerations when using it?
Mar 20, 2025 pm 06:05 PM
The article discusses the <iframe> tag's purpose in embedding external content into webpages, its common uses, security risks, and alternatives like object tags and APIs.
Gitee Pages static website deployment failed: How to troubleshoot and resolve single file 404 errors?
Apr 04, 2025 pm 11:54 PM
GiteePages static website deployment failed: 404 error troubleshooting and resolution when using Gitee...


