我正在将现有图像导出到 DynamicReports:
public class DReportSample {
public DReportSample() {
build();
}
private void build() {
StyleBuilder boldStyle = stl.style().bold();
StyleBuilder boldCenteredStyle = stl.style(boldStyle).setHorizontalAlignment
(HorizontalAlignment.CENTER);
//BufferedImage img = new BufferedImage(1200,1200,BufferedImage.TYPE_INT_RGB);
BufferedImage img = null;
try {
// img = ImageIO.read(new File("D:/Hysteresis.png"));
img = ImageIO.read(new File("D:/Hysteresis.png"));
} catch (IOException e) {
}
try {
report()//create new report design
// .setColumnTitleStyle(boldStyle)
// .setColumnStyle(boldStyle)
.highlightDetailEvenRows()
.columns(//add columns
col.column(null,"Col_1", type.stringType()),
col.column(null,"Col_2", type.stringType())
)
.summary(
cmp.verticalList()
.add(cmp.text("\n\nHYSTERISIS PLOT").setStyle(boldStyle))
.add(cmp.image(img)) // Add the exported chart image to the report.
)
.title(cmp.text("XYZ Hospital").setStyle(boldCenteredStyle))//shows report title
.pageFooter(cmp.pageXofY())//shows number of page at page footer
.setDataSource(createDataSource())//set datasource
.show();//create and show report
} catch (DRException e) {
e.printStackTrace();
}
}
但问题是图像似乎是固定大小的,比如(300,300)像素。我希望它看起来更大,
我尝试手动将图像大小调整为双倍大小,然后使用上面的代码,但它再次出现相同大小(300,300)
然后我尝试通过我的代码使用调整大小的版本并尝试:
BufferedImage img = new BufferedImage(1200,1200,BufferedImage.TYPE_INT_RGB);
但它没有用:
然后我尝试了:
.add(cmp.image(img.getScaledInstance(600, 600, 5)))
它使图像看起来更小。
有人可以让我知道如何在我的动态报告文件中导入所需尺寸的图像。另请指导,我如何更改文本的字体样式、颜色和大小。
谢谢