我正在将现有图像导出到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)))
它使图像显得更小。
有人可以告诉我如何在我的dynamicreports文件中导入具有所需尺寸的图像。另请指导,如何更改文字的字体样式,颜色和大小。
由于
答案 0 :(得分:4)
.add(cmp.image(img).setFixedDimension(500,400))
解决了这个问题。
有人可以告诉我如何在dynamicReports
中更改文字的字体样式,颜色和大小