The class JRPropertieswas annotated as deprecated and replaced with JRPropertiesUtil, as indicated in the documentation
I used it to set properties as follows (since it was a class providing static methods),
JRProperties.setProperty("net.sf.jasperreports.default.font.name", defaultPDFFont);
JRProperties.setProperty("net.sf.jasperreports.awt.ignore.missing.font", "true");
(...)
I believe it is now impossible to set properties.
I found two ways to do this according to the API documentation, namely, directly using the instance JasperReportsContext:
JasperReportsContext jasperReportsContext = DefaultJasperReportsContext.getInstance();
jasperReportsContext.setProperty("net.sf.jasperreports.awt.ignore.missing.font", "true");
jasperReportsContext.setProperty("net.sf.jasperreports.default.font.name", defaultPDFFont);
(...)
or passing the instance JasperReportsContextto JRPropertiesUtil:
JasperReportsContext jasperReportsContext = DefaultJasperReportsContext.getInstance();
JRPropertiesUtil jrPropertiesUtil = JRPropertiesUtil.getInstance(jasperReportsContext);
jrPropertiesUtil.setProperty("net.sf.jasperreports.awt.ignore.missing.font", "true");
jrPropertiesUtil.setProperty("net.sf.jasperreports.default.font.name", defaultPDFFont);
(...)
So my question is:
What is the recommended way to set properties for a report printer?
source
share