У меня есть серия электронных таблиц Excel, каждая из которых содержит по крайней мере одну страницу данных и одну страницу диаграммы, созданной из данных. Мне нужно захватить (не восстанавливать данные) существующая диаграмма как веб-изображение. Возможно ли это через Java или .Net? Я знаю, что POI-материал (Java) этого не сделает (или, как мне сказали, сам не пробовал).Как экспортировать графики из Excel в виде графики
ответ
Вы пробовали с помощью метода Chart.Export?
Пример в помощи является:
Worksheets("Sheet1").ChartObjects(1).Chart. Export _
FileName:="current_sales.gif", FilterName:="GIF"
Из памяти, я думаю, что вы можете экспортировать в PNG, а также.
Картинговые изображения не хранятся в книгах, поэтому вам нужен компонент, который может отображать графики, совместимые с Excel.
позволит загружать книги Excel, необязательно подключать новые значения/формулы/форматы/etc ..., вычислять, а затем получать изображение из диапазона ячеек или из графика.
Вы можете увидеть несколько образцов here и загрузить бесплатную пробную версию here, если вы хотите попробовать сами.
Отказ от ответственности: У меня есть SpreadsheetGear ООО
Вы можете конвертировать или копировать графики (графики) с помощью J XL или Aspose Cells (Aspose не является бесплатным).
Это фрагмент кода, чтобы извлечь диаграмму первенствовать изображения
public class ExportChartToImage
{
public static void main(String[] args) throws Exception
{
//Start Excel
Application excelApp = new Application();
excelApp.setVisible(true);
//Create test workbook
Workbook workbook = excelApp.createWorkbook("/home/tejus/Desktop/Chart Test");
//Get the first (and the only) worksheet
final Worksheet worksheet1 = workbook.getWorksheet(1);
//Fill-in the first worksheet with sample data
worksheet1.getCell("A1").setValue("Date");
worksheet1.getCell("A2").setValue("March 1");
worksheet1.getCell("A3").setValue("March 8");
worksheet1.getCell("A4").setValue("March 15");
worksheet1.getCell("B1").setValue("Customer");
worksheet1.getCell("B2").setValue("Smith");
worksheet1.getCell("B3").setValue("Jones");
worksheet1.getCell("B4").setValue("James");
worksheet1.getCell("C1").setValue("Sales");
worksheet1.getCell("C2").setValue("23");
worksheet1.getCell("C3").setValue("17");
worksheet1.getCell("C4").setValue("39");
excelApp.getOleMessageLoop().doInvokeAndWait(new Runnable()
{
public void run()
{
final Variant unspecified = Variant.createUnspecifiedParameter();
final Int32 localeID = new Int32(LocaleID.LOCALE_SYSTEM_DEFAULT);
Range sourceDataNativePeer = worksheet1.getRange("A1:C4").getPeer();
_Worksheet worksheetNativePeer = worksheet1.getPeer();
IDispatch chartObjectDispatch = worksheetNativePeer.chartObjects(unspecified, localeID);
ChartObjectsImpl chartObjects = new ChartObjectsImpl(chartObjectDispatch);
ChartObject chartObject = chartObjects.add(new DoubleFloat(100), new DoubleFloat(150), new DoubleFloat(300), new DoubleFloat(225));
_Chart chart = chartObject.getChart();
chart.setSourceData(sourceDataNativePeer, new Variant(XlRowCol.xlRows));
BStr fileName = new BStr("/home/tejus/Desktop/chart.gif");
Variant filterName = new Variant("gif");
Variant interactive = new Variant(false);
chart.export(fileName, filterName, interactive);
chart.setAutoDelete(false);
chart.release();
chartObject.setAutoDelete(false);
chartObject.release();
chartObjects.setAutoDelete(false);
chartObjects.release();
chartObjectDispatch.setAutoDelete(false);
chartObjectDispatch.release();
}
});
System.out.println("Press 'Enter' to terminate the application");
System.in.read();
//Close the MS Excel application.
boolean saveChanges = false;
workbook.close(saveChanges);
boolean forceQuit = true;
excelApp.close(forceQuit);
}
}
я использовал J Excel
- 1. Графики и диаграммы из Excel
- 2. Как экспортировать графики в виде изображений на графиках слияния?
- 3. Генерировать графики MRTG/RRD как графики Графики?
- 4. Графики Achartengine в виде табуляции
- 5. Учебники Excel и графики
- 6. Как экспортировать графики iGraph в браузер
- 7. Обновление графики графики/перерисовывание графики
- 8. Как экспортировать R-графики как файлы TEX?
- 9. Графики Excel и ось
- 10. VBA позиционирование Excel графики
- 11. Как создать иерархические графики в графическом виде?
- 12. Графики Графики Вид год
- 13. Как экспортировать графики из Spotfire в существующий файл Word?
- 14. Графики или графики
- 15. C# Графики n Графики
- 16. EXCEL 2010 VBA графики копирования
- 17. Графики диаграмм Excel Справочные данные
- 18. Как обновить встроенные графики excel в powerpoint?
- 19. Графики Excel, пробелы и пробелы
- 20. Как экспортировать графики из matplotlib с прозрачным фоном?
- 21. Графики и графики на iPhone
- 22. Как скопировать графики из Excel и вставить его в PPT?
- 23. Как сделать графики xls?
- 24. Экспортировать графики Tensorflow из Python для использования в C++
- 25. Чистка графики чистая все графики
- 26. Экспорт Radgrid содержит графики
- 27. R: Как извлечь графики из таблицы MS Excel?
- 28. Как сохранить графики/графики из quatrz, сгенерированные bio3d (R package)
- 29. Как импортировать графики из excel в datawindow в powerbuilder
- 30. html Графики из базы данных
Что такое применение excelApp = новое приложение(); ? Я не вижу этого в JExcel API. И что такое «excelApp.getOleMessageLoop(). DoInvokeAndWait (new Runnable()» Пожалуйста, подумайте над тем, чтобы дать соответствующие комментарии в коде, чтобы помочь другим понять. –