دلایل زیادی برای تبدیل فایل های اکسل به تصاویر وجود دارد. به عنوان مثال، میتوانید تصاویر را به صفحات وب، PDF، اسناد Word، ارائههای پاورپوینت و غیره اضافه کنید. در این مقاله نحوه تبدیل فایلهای اکسل به تصاویر با C++ را یاد خواهید گرفت.
C++ Excel به Image Converter API
Aspose.Cells for C++ یک کتابخانه بومی C++ است که به شما امکان میدهد بدون نیاز به Microsoft Excel یا Office Automation، صفحات گسترده ایجاد، دستکاری و تبدیل کنید. علاوه بر این، API پشتیبانی داخلی را برای تبدیل صفحات گسترده اکسل به فرمت های مختلف نیز فراهم می کند. میتوانید Aspose.Cells را برای C++ API با استفاده از بسته NuGet یا دانلود مستقیماً API نصب کنید.
تبدیل اکسل به تصویر با سی پلاس پلاس
Aspose.Cells برای C++ به شما امکان می دهد صفحات گسترده اکسل را به فرمت های مختلف تصویری محبوب تبدیل کنید. فرمت های تصویر خروجی پشتیبانی شده زیر هستند:
برای تبدیل فایل های اکسل به تصویر می توانید از مراحل زیر استفاده کنید.
- ابتدا فایل اکسل را با کلاس IWorkbook بارگذاری کنید.
- یک نمونه از کلاس IImageOrPrintOptions ایجاد کنید.
- نوع تصویر را با انتقال شمارش ImageFormat به روش IImageOrPrintOptions->SetImageFormat() تنظیم کنید.
- گزینه های دیگری مانند وضوح افقی و عمودی را با کلاس IImageOrPrintOptions تنظیم کنید.
- نمونه ای از کلاس IWorksheet با کاربرگ که می خواهید تبدیل کنید ایجاد کنید.
- با پاس کردن نمونه های IWorksheet و IImageOrPrintOptions به عنوان پارامتر، یک شی از کلاس ISheetRender بسازید.
- با روش ISheetRender->GetPageCount() تعداد صفحات کاربرگ را بدست آورید.
- در نهایت، صفحات را حلقه بزنید و هر صفحه را به عنوان تصویر با روش ISheetRender->ToImage() ذخیره کنید.
نمونه کد زیر نحوه تبدیل فایل های اکسل به تصاویر با استفاده از ++C را نشان می دهد.
// برای نمونههای کامل و فایلهای داده، لطفاً به https://github.com/aspose-cells/Aspose.Cells-for-C بروید
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");
// مسیر فایل اکسل ورودی
StringPtr sampleConvertingWorksheetToDifferentImageFormats = srcDir->StringAppend(new String("sampleConvertingWorksheetToDifferentImageFormats.xlsx"));
// یک کتاب کار خالی ایجاد کنید.
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertingWorksheetToDifferentImageFormats);
// دسترسی به کاربرگ اول
intrusive_ptr<Aspose::Cells::IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// ایجاد تصویر یا شیء گزینه های چاپ.
intrusive_ptr<Aspose::Cells::Rendering::IImageOrPrintOptions> imgOptions = Factory::CreateIImageOrPrintOptions();
// فرمت تصویر را مشخص کنید.
imgOptions->SetImageFormat(Aspose::Cells::Systems::Drawing::Imaging::ImageFormat::GetPng());
// وضوح افقی و عمودی را مشخص کنید
imgOptions->SetHorizontalResolution(200);
imgOptions->SetVerticalResolution(200);
// برگه را با توجه به گزینه های تصویر یا چاپ مشخص شده رندر کنید.
intrusive_ptr<Aspose::Cells::Rendering::ISheetRender> sr = Factory::CreateISheetRender(worksheet, imgOptions);
// دریافت تعداد صفحات
Aspose::Cells::Systems::Int32 pageCount = sr->GetPageCount();
// ایجاد شی سازنده رشته برای الحاق رشته ها.
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> sb = new Aspose::Cells::Systems::Text::StringBuilder();
// هر صفحه را یکی یکی به تصویر png تبدیل کنید.
for (int i = 0; i < pageCount; i++)
{
// سازنده رشته را پاک کنید و مسیر تصویر خروجی را با الحاق رشته ایجاد کنید.
sb->Clear();
sb->Append(outDir);
sb->Append((StringPtr)new String("outputConvertingWorksheetToImagePNG_"));
sb->Append(i);
sb->Append((StringPtr)new String(".png"));
// مسیر تصویر خروجی را دریافت کنید.
StringPtr outputPNG = sb->ToString();
// تبدیل کاربرگ به تصویر png.
sr->ToImage(i, outputPNG);
}
مجوز رایگان دریافت کنید
با درخواست [مجوز موقت رایگان] میتوانید API را بدون محدودیت ارزیابی امتحان کنید.
نتیجه
برای نتیجه گیری، شما یاد گرفته اید که چگونه صفحات گسترده اکسل را با استفاده از C++ به تصاویر تبدیل کنید. با استفاده از Aspose.Cells برای C++ API، میتوانید فایلهای اکسل را به فرمتهای تصویری مختلف از جمله PNG، TIFF، SVG، GIF، JPEG و غیره تبدیل کنید. برای بررسی بیشتر در مورد API، از API [اسناد] استفاده کنید.