تحويل ورقة العمل إلى تنسيقات صور مختلفة

تحويل ورقة العمل إلى صورة

تحتوي أوراق العمل على بيانات تريد تحليلها. على سبيل المثال ، يمكن أن تحتوي ورقة العمل على معلمات وإجماليات ونسب مئوية واستثناءات وحسابات.

بصفتك مطورًا ، قد تحتاج إلى تقديم أوراق العمل كصور. على سبيل المثال ، قد تحتاج إلى استخدام صورة ورقة عمل في تطبيق أو صفحة ويب. قد ترغب في إدراج صورة في مستند Word Microsoft أو ملف PDF أو عرض تقديمي PowerPoint أو أي نوع مستند آخر. ببساطة ، تريد عرض ورقة العمل كصورة بحيث يمكنك استخدامها في مكان آخر.

يدعم Aspose.Cells تحويل أوراق عمل Excel إلى صور. لاستخدام هذه الميزة ، تحتاج إلى استيراد ملفAspose.Cells.Renderingإلى برنامجك أو مشروعك. لديها العديد من الفئات القيمة للتصيير والطباعة ، على سبيل المثال ،ISheetRenderIImageOrPrintOptionsو اخرين.

الفئة Aspose.Cells.Rendering.ISheetRender تمثل ورقة عمل ليتم عرضها كصور. لديها طريقة محملة فوق طاقتها ،ToImage، يمكنها تحويل ورقة عمل إلى ملف (ملفات) صور بسمات أو خيارات مختلفة. يتم دعم العديد من تنسيقات الصور ، على سبيل المثال ، BMP ، PNG ، GIF ، JPG ، JPEG ، TIFF ، EMF.

يوضح مقتطف التعليمات البرمجية التالي كيفية تحويل ورقة عمل في ملف Excel إلى ملف صورة.

تنسيق PNG

يرجى الاطلاع على نموذج التعليمات البرمجية التالي ، الخاص بهنموذج لملف Excel ، و الالإخراج PNG صور.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
// Source directory path.
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");
// Output directory path.
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");
// Path of input Excel file.
StringPtr sampleConvertingWorksheetToDifferentImageFormats = srcDir->StringAppend(new String("sampleConvertingWorksheetToDifferentImageFormats.xlsx"));
// Create an empty workbook.
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertingWorksheetToDifferentImageFormats);
// Access first worksheet.
intrusive_ptr<Aspose::Cells::IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Create image or print options object.
intrusive_ptr<Aspose::Cells::Rendering::IImageOrPrintOptions> imgOptions = Factory::CreateIImageOrPrintOptions();
// Specify the image format.
imgOptions->SetImageFormat(Aspose::Cells::Systems::Drawing::Imaging::ImageFormat::GetPng());
// Specify horizontal and vertical resolution
imgOptions->SetHorizontalResolution(200);
imgOptions->SetVerticalResolution(200);
// Render the sheet with respect to specified image or print options.
intrusive_ptr<Aspose::Cells::Rendering::ISheetRender> sr = Factory::CreateISheetRender(worksheet, imgOptions);
// Get page count.
Aspose::Cells::Systems::Int32 pageCount = sr->GetPageCount();
// Create string builder object for string concatenations.
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> sb = new Aspose::Cells::Systems::Text::StringBuilder();
// Render each page to png image one by one.
for (int i = 0; i < pageCount; i++)
{
// Clear string builder and create output image path with string concatenations.
sb->Clear();
sb->Append(outDir);
sb->Append((StringPtr)new String("outputConvertingWorksheetToImagePNG_"));
sb->Append(i);
sb->Append((StringPtr)new String(".png"));
// Get the output image path.
StringPtr outputPNG = sb->ToString();
// Convert worksheet to png image.
sr->ToImage(i, outputPNG);
}

تنسيق TIFF

يرجى الاطلاع على نموذج التعليمات البرمجية التالي ، الخاص بهنموذج لملف Excel ، و الالإخراج TIFF صورة.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
// Source directory path.
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");
// Output directory path.
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");
// Path of input Excel file.
StringPtr sampleConvertingWorksheetToDifferentImageFormats = srcDir->StringAppend(new String("sampleConvertingWorksheetToDifferentImageFormats.xlsx"));
// Create an empty workbook.
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertingWorksheetToDifferentImageFormats);
// Access first worksheet.
intrusive_ptr<Aspose::Cells::IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Create image or print options object.
intrusive_ptr<Aspose::Cells::Rendering::IImageOrPrintOptions> imgOptions = Factory::CreateIImageOrPrintOptions();
// Specify the image format.
imgOptions->SetImageFormat(Aspose::Cells::Systems::Drawing::Imaging::ImageFormat::GetTiff());
// Specify horizontal and vertical resolution
imgOptions->SetHorizontalResolution(200);
imgOptions->SetVerticalResolution(200);
// Render the sheet with respect to specified image or print options.
intrusive_ptr<Aspose::Cells::Rendering::ISheetRender> sr = Factory::CreateISheetRender(worksheet, imgOptions);
// Get the output image path.
StringPtr outputTiff = outDir->Append((StringPtr)new String("outputConvertingWorksheetToImageTiff.tiff"));
// Convert worksheet to tiff image.
sr->ToTiff(outputTiff);

تحويل ورقة العمل إلى SVG

SVG لتقف على Scalable Vector Graphics. SVG هي مواصفة تستند إلى معايير XML للرسومات المتجهة ثنائية الأبعاد. إنه معيار مفتوح قيد التطوير من قبل World Wide Web Consortium (W3C) منذ 1999.

Aspose.Cells for C++ تمكن من تحويل أوراق العمل إلى صورة SVG منذ الإصدار 18.5.0.

لاستخدام هذه الميزة ، قم باستيراد مساحة الاسم Aspose.Cells.Rendering إلى البرنامج أو المشروع الخاص بك. لديها العديد من الفئات القيمة للتصيير والطباعة ، على سبيل المثال ، ISheetRender ، IImageOrPrintOptions ، وغيرها.

تحدد الفئة Aspose.Cells.Rendering.IImageOrPrintOptions أنه سيتم حفظ ورقة العمل بتنسيق SVG. يوضح مقتطف التعليمات البرمجية التالي كيفية تحويل ورقة عمل في ملف Excel إلى ملف صورة SVG

يرجى الاطلاع على نموذج التعليمات البرمجية التالي ، الخاص بهنموذج لملف Excel ، و الالإخراج SVG صور.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
// Source directory path.
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");
// Output directory path.
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");
// Path of input Excel file.
StringPtr sampleConvertingWorksheetToDifferentImageFormats = srcDir->StringAppend(new String("sampleConvertingWorksheetToDifferentImageFormats.xlsx"));
// Create an empty workbook.
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertingWorksheetToDifferentImageFormats);
// Access first worksheet.
intrusive_ptr<Aspose::Cells::IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Create image or print options object.
intrusive_ptr<Aspose::Cells::Rendering::IImageOrPrintOptions> imgOptions = Factory::CreateIImageOrPrintOptions();
// Specify horizontal and vertical resolution
imgOptions->SetHorizontalResolution(200);
imgOptions->SetVerticalResolution(200);
// Specify the save format.
imgOptions->SetSaveFormat(Aspose::Cells::SaveFormat::SaveFormat_SVG);
// Render the sheet with respect to specified image or print options.
intrusive_ptr<Aspose::Cells::Rendering::ISheetRender> sr = Factory::CreateISheetRender(worksheet, imgOptions);
// Get page count.
Aspose::Cells::Systems::Int32 pageCount = sr->GetPageCount();
// Create string builder object for string concatenations.
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> sb = new Aspose::Cells::Systems::Text::StringBuilder();
// Render each page to png image one by one.
for (int i = 0; i < pageCount; i++)
{
// Clear string builder and create output image path with string concatenations.
sb->Clear();
sb->Append(outDir);
sb->Append((StringPtr)new String("outputConvertingWorksheetToImageSVG_"));
sb->Append(i);
sb->Append((StringPtr)new String(".svg"));
// Get the output image path.
StringPtr outputSVG = sb->ToString();
// Convert worksheet to tiff image.
sr->ToImage(i, outputSVG);
}