0

有没有一种方法可以使用 Aspose Words for Java 在 Ms Word 文档中创建和插入条形图?我找不到办法做到这一点。谢谢。

4

1 回答 1

1

Aspose.Words for Java 目前不允许您在 Word 文档中创建条形图。但是,如果您只想添加静态条形图,您可以尝试使用 Aspose.Cells for Java创建条形图并将其渲染为 image。之后,您可以使用 Aspose.Words for Java 在 Word 文档中添加此条形图图像。你认为这对你的场景有帮助吗?如果是这样,那么您可以使用以下代码片段来创建条形图并将其呈现为图像:

//创建一个新的工作簿。

工作簿工作簿 = 新工作簿();

//获取第一个工作表。

工作表工作表 = workbook.getWorksheets().get(0);

//设置工作表名称

sheet.setName("数据");

//获取工作表中的单元格集合。

单元格单元格 = workbook.getWorksheets().get(0).getCells();

//将一些值放入数据表的单元格中。

cells.get("A1").setValue("Region");

cells.get("A2").setValue("法国");

cells.get("A3").setValue("德国");

cells.get("A4").setValue("英格兰");

cells.get("A5").setValue("瑞典");

cells.get("A6").setValue("意大利");

cells.get("A7").setValue("西班牙");

cells.get("A8").setValue("葡萄牙");

cells.get("B1").setValue("Sale");

细胞.get("B2").setValue(70000);

细胞.get("B3").setValue(55000);

细胞.get("B4").setValue(30000);

细胞.get("B5").setValue(40000);

细胞.get("B6").setValue(35000);

细胞.get("B7").setValue(32000);

细胞.get("B8").setValue(10000);

//创建图表

int chartIndex = sheet.getCharts().add(ChartType.COLUMN, 12, 1, 33, 12);

图表图表 = sheet.getCharts().get(chartIndex);

//设置图表标题的属性

chart.getTitle().setText("按地区销售");

chart.getTitle().getTextFont().setBold(true);

chart.getTitle().getTextFont().setSize(12);

//设置n系列的属性

chart.getNSeries().add("数据!B2:B8", true);

chart.getNSeries().setCategoryData("Data!A2:A8");

//设置系列数据点的填充颜色(法国-葡萄牙(7点))

ChartPointCollection chartPoints = chart.getNSeries().get(0).getPoints();

ChartPoint 点 = chartPoints.get(0);

point.getArea().setForegroundColor(Color.getCyan());

点 = chartPoints.get(1);

point.getArea().setForegroundColor(Color.getBlue());

点 = chartPoints.get(2);

point.getArea().setForegroundColor(Color.getYellow());

点 = chartPoints.get(3);

point.getArea().setForegroundColor(Color.getRed());

点 = chartPoints.get(4);

point.getArea().setForegroundColor(Color.getBlack());

点 = chartPoints.get(5);

point.getArea().setForegroundColor(Color.getGreen());

点 = chartPoints.get(6);

point.getArea().setForegroundColor(Color.getMaroon());

//设置图例不可见

chart.setShowLegend(false);

//获取图表法师

ImageOrPrintOptions imgOpts = new ImageOrPrintOptions();

imgOpts.setImageFormat(ImageFormat.getPng());

//保存图表图像文件。

chart.toImage(new FileOutputStream("D:\Files\MyChartImage.png"), imgOpts);

披露:我在 Aspose 担任开发人员布道师。

于 2011-09-16T17:22:46.817 回答