File Excel dapat berisi informasi numerik dan visual seperti grafik atau bagan. Untuk menampilkan beberapa informasi dalam format grafik dalam aplikasi Anda, Anda mungkin ingin mengonversi Excel ke SVG di C++. Artikel ini akan menjelaskan cara mengubah Excel ke SVG di C++ dengan detail langkah demi langkah dan kode contoh. Anda dapat memuat file input dalam format XLSX atau XLS.
Langkah-langkah untuk Mengonversi Excel ke SVG di C++
- Konfigurasikan aplikasi Anda dengan menambahkan Aspose.Cells.Cpp menggunakan alat NuGet Package Manager
- Tambahkan referensi Aspose::Cells namespace ke proyek
- Gunakan instance kelas Workbook untuk memuat file input Excel
- Atur format dan properti gambar untuk file SVG keluaran
- Simpan gambar SVG keluaran pada disk yang dirender dari file Excel
Pendekatan langkah demi langkah ini menjelaskan proses sederhana untuk mengonversi Excel ke grafik vektor di C++ di mana file Excel input dimuat dan properti berbeda dari gambar output diatur. Anda dapat mengatur properti resolusi serta format rendering gambar sesuai kebutuhan Anda. Pada langkah terakhir, tulis gambar SVG keluaran ke disk untuk diproses atau dilihat lebih lanjut.
Kode untuk Mengonversi Excel ke SVG di C++
#pragma once | |
#include "Aspose.Cells.h" | |
class ConvertExcelToSVG | |
{ | |
public: void ConvertExcelToSVGInCplusCplus() | |
{ | |
// Set the Aspose.Cells license to create output SVG without watermark | |
intrusive_ptr<License> rowHeightLicense = new License(); | |
rowHeightLicense->SetLicense(new String("Aspose.Cells.lic")); | |
// Load input workbook | |
intrusive_ptr<Aspose::Cells::IWorkbook> targetWorkbook = Factory::CreateIWorkbook(new String("ConvertExcelToSVG.xlsx")); | |
// Access target worksheet say third one | |
intrusive_ptr<Aspose::Cells::IWorksheet> thirdSheet = targetWorkbook->GetIWorksheets()->GetObjectByIndex(2); | |
// Create object to set image options | |
intrusive_ptr<Aspose::Cells::Rendering::IImageOrPrintOptions> OptionsForRenderingImage = Factory::CreateIImageOrPrintOptions(); | |
// Specify SVG save format | |
OptionsForRenderingImage->SetSaveFormat(Aspose::Cells::SaveFormat::SaveFormat_SVG); | |
// Autofit Cells based on the data | |
OptionsForRenderingImage->SetCellAutoFit(true); | |
// Specify values for the horizontal and vertical resolution | |
OptionsForRenderingImage->SetHorizontalResolution(300); | |
OptionsForRenderingImage->SetVerticalResolution(300); | |
// Using the CreateISheetRender() function, render the sheet by providing the sheet reference and image options | |
intrusive_ptr<Aspose::Cells::Rendering::ISheetRender> sheetRender = Factory::CreateISheetRender(thirdSheet, OptionsForRenderingImage); | |
// Get page count | |
Aspose::Cells::Systems::Int32 totalPages = sheetRender->GetPageCount(); | |
// Initialize string builder object for string concatenation | |
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> stringBuilder = new Aspose::Cells::Systems::Text::StringBuilder(); | |
// Parse throught all the pages to convert them to SVG one by one | |
for (int counter = 0; counter < totalPages; counter++) | |
{ | |
// Set the path for output image with string appending | |
stringBuilder->Clear(); | |
stringBuilder->Append(counter); | |
stringBuilder->Append((StringPtr)new String("_Page.svg")); | |
// Convert Excel to SVG image | |
sheetRender->ToImage(counter, stringBuilder->ToString()); | |
} | |
} | |
}; |
Sesuai cuplikan kode di atas, Anda perlu menggunakan metode Factory::CreateIWorkbook untuk memuat file Excel input. Kemudian atur beberapa preferensi untuk gambar SVG keluaran dengan menggunakan kelas IImageOrPrintOptions dan lanjutkan untuk menyimpan file yang dihasilkan dengan menentukan jalur dan nama file. Anda dapat mengubah nilai properti apa pun dalam kode ini untuk memenuhi kriteria keluaran Anda.
Tutorial singkat ini berfokus pada cara mengubah Excel menjadi grafik vektor menggunakan C++. Sedangkan, jika Anda perlu mengonversi grafik Excel ke gambar JPEG, lihat artikel di cara mengonversi Bagan Excel ke JPEG di C++.