Excel-filer används vanligtvis för att arbeta med numeriska data. Dessutom renderas diagram för att representera data i bildform. Med Java kan du konvertera ett diagram till en bild eller PDF dokument. Aspose.Cells for Java API erbjuder många funktioner för att skapa, redigera eller manipulera XLSX, XLS, XLSM, XLSB och andra [stödda] filformat]6 utan att behöva installera Microsoft Excel. I den här artikeln kommer vi att undersöka stödet för diagramrendering till bild- och PDF-filformat i Java. Låt oss beskriva funktionerna vi kommer att täcka här:

Låt oss lära oss detaljerna för att bättre förstå stödet för diagramrendering i Java API.

Java API för att konvertera diagram till bild och PDF

Du kan konvertera eller rendera ett diagram till olika bildformat inklusive JPG, PNG, TIFF eller BMP med Aspose.Cells för Java i några metodanrop. På samma sätt kan du göra ett diagram till PDF-format enligt dina krav. Först och främst måste du konfigurera Aspose.Cells för Java API i din Java-miljö. Du kan enkelt installera den genom att ladda ner JAR-filen från Nedladdningssektionen, eller genom att använda följande arkiv och Maven-beroendekonfigurationer.

Förvar:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Beroende:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>20.9</version>
</dependency>

Konvertera ett diagram till bild med Java

Efter att ha konfigurerat API framgångsrikt kan du exportera eller konvertera ett diagram till valfritt bildformat inklusive JPG, PNG, TIFF, BMP, SVG, WMP etc. Låt oss i det här exemplet överväga att spara diagram som en PNG-bild. Du måste följa följande steg för konvertering av diagram till bild i Java:

  1. Ladda ingångs XLS/XLSX-fil
  2. Öppna Worksheet och Chart
  3. Initiera ImageOrPrintOptions för att ställa in kvalitet och andra egenskaper
  4. Ställ in bildtyp och konvertera diagram till en bild i Java

Kodavsnittet nedan visar hur man konverterar ett diagram till JPG, PNG, TIFF, BMP, SVG eller WMP-bild med Java:

// Ladda indata XLSX-fil
Workbook workbook = new Workbook(dataDir + "SampleExcel.xlsx");
        
// Åtkomst krävs arbetsblad        
Worksheet worksheet = workbook.getWorksheets().get(0);

// Få åtkomst till specifikt diagram
Chart chart = worksheet.getCharts().get(1);

// Skapa en instans av ImageOrPrintOptions och ange några egenskaper
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setVerticalResolution(300);
options.setHorizontalResolution(300);
options.setQuality(100);

// Ställ in bildtyp för utdataformat
options.setImageType(ImageType.PNG);

// Gör diagrammet till bild        
chart.toImage(dataDir + "chart.png", options);

Låt oss ta en titt på skärmdumpen av diagrambilden som genereras av denna kod:

Konvertera diagram till bild PDF Java

Konvertera alla diagram i kalkylblad till bilder med Java

Vi har redan lärt oss om hur man renderar ett enda diagram till en bild. Det är ett grundläggande användningsfall som vi kan förbättra och täcka scenariot där du vill konvertera alla diagram i alla kalkylblad till respektive bilder. Du måste följa stegen nedan för att konvertera alla diagram i en arbetsbok till bilder:

  1. Ladda källfilen XLS/XLSX
  2. Iterera genom varje Arbetsblad
  3. Iterera genom varje diagram i varje kalkylblad
  4. Ange olika egenskaper med ImageOrPrintOptions
  5. Spara utdatabild av diagram

Följande kodavsnitt visar hur man konverterar diagram till bilder med Java:

// Ladda indata XLSX-fil
Workbook workbook = new Workbook(dataDir + "SampleExcel.xlsx");

for (int sheet = 0 ; sheet < workbook.getWorksheets().getCount() ; sheet++)
{
    // Åtkomst krävs arbetsblad        
    Worksheet worksheet = workbook.getWorksheets().get(sheet);

   for (int i =0 ; i<worksheet.getCharts().getCount() ; i++)
    {
        // Få åtkomst till specifikt diagram
        com.aspose.cells.Chart chart = worksheet.getCharts().get(i);

        // Skapa en instans av ImageOrPrintOptions och ange några egenskaper
        ImageOrPrintOptions options = new ImageOrPrintOptions();
        options.setVerticalResolution(300);
        options.setHorizontalResolution(300);
        options.setQuality(100);

        // Ställ in bildtyp för utdataformat
        options.setImageType(com.aspose.cells.ImageType.PNG);

        // Gör diagrammet till bild        
        chart.toImage(dataDir + "chart_" + (i+1) + "_" + worksheet.getName() + ".png", options);
    }
}

Konvertera ett diagram till PDF med Java

PDF-filformat är känt på grund av dess kompatibilitet med nästan alla operativsystem. Ibland kan du behöva konvertera ett diagram från Excel-arbetsbok till en PDF-fil. Även om du kan konvertera den tidigare renderade bilden till PDF med Aspose API:er, men det skulle vara en tvåstegsmetod. Medan Aspose.Cells för Java API kan direkt rendera diagrammet som ett PDF-dokument. Du måste följa stegen nedan för att utföra konverteringen:

  1. Ladda indata XLSX-fil
  2. Åtkomst krävs Arbetsbok
  3. Se till att det finns minst ett diagram
  4. Gör specifikt diagram till PDF

Kodavsnittet nedan förklarar hur man konverterar ett diagram till PDF med Java:

// Ladda indata XLSX-fil
Workbook workbook = new Workbook(dataDir + "SampleExcel.xlsx");

// Åtkomst krävs arbetsblad
Worksheet worksheet = workbook.getWorksheets().get(0);

// Se till att det finns minst ett diagram i arbetsboken
if(worksheet.getCharts().getCount() > 0)
{
    // Få åtkomst till specifikt diagram
    com.aspose.cells.Chart chart = worksheet.getCharts().get(1);

    // Gör diagrammet till PDF
    chart.toPdf(dataDir + "FirstChart.pdf");
}

Slutsats

I den här artikeln har vi lärt oss hur man konverterar diagram i Excel-filer till JPG, PNG, BMP, WMF eller PDF med Java. API:et erbjuder en mängd egenskaper och metoder för att kontrollera renderingen av bilder och PDF-dokument. Vi har täckt några av de möjliga användningsfallen för diagramkonvertering, om du vill utforska mer om renderingsfunktionerna är du välkommen att besöka API-referenser, produktdokumentation eller gratis supportforum om du behöver hjälp.

Se även