إن تصنيف ملفات Excel كصور أمر بالغ الأهمية عند إدراج الشرائح في صفحات الويب أو الوثائق أو التقارير.هذا المقال يظهر كيفية تحويل دفتر عمل Excel بأكمله إلى تنسيقات صورة عالية الجودة باستخدام Aspose.Cells for .NET.
مقدمة
يمكن أن يكون تحويل دفتر عمل Excel إلى تنسيق صورة مفيدًا بشكل لا يصدق لمختلف التطبيقات مثل إنشاء مقاطع مسبقة من ملفات Excel ، وأرشيف اللوحات في شكل أكثر ملاءمة ، وإدراج محتوى لوحة المفاتيح في التقارير أو تدفقات العمل المطبوعة ، وعرض الورق في التطبيقات التي لا تدعم عرض Excel الأصلي.
تنفيذ خطوة بخطوة
الخطوة 1: تثبيت Aspose.Cells لـ .NET
قبل أن نبدأ، تأكد من أنك قد قمت بتثبيت Aspose.Cells في مشروعك.يمكنك القيام بذلك من خلال NuGet Package Manager:
dotnet add package Aspose.Cells
الخطوة 2: تحميل ملف Excel
الخطوة الأولى هي تحميل ملف Excel إلى Workbook الكائن، الذي يمثل دفتر عمل Excel في الذاكرة.
Workbook workbook = new Workbook("Book1.xlsx");
الخطوة 3: إعداد خيارات الصورة
بعد ذلك، قم بتعيين خيارات الصورة التي تسيطر على كيفية عرض صورك، وهذا يشمل إعداد تنسيق الإخراج والقرار.
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200
};
هذه الإعدادات تتحكم في تنسيق الإنتاج والقرار.يمكنك أيضًا إعداد خصائص أخرى مثل Transparent في الخلفية, OnlyArea إلغاء الحد الأدنى، و PrintingPageType ما هو المحتوى الذي يجب تضمينه.
الخطوة 4: إرسال كتاب العمل
إنشاء مثال على WorkbookRender فئة مع كتاب العمل الخاص بك والخيارات:
WorkbookRender renderer = new WorkbookRender(workbook, options);
الخطوة 5: تحويل كل صفحة إلى صورة
اذهب من خلال كل صفحة في دفتر العمل وتصديرها كصورة.هذا المثال يحفظ كل ملف صورة إلى القرص باستخدام اسم محدد.
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Step 2: Load the Excel file
Workbook workbook = new Workbook("Book1.xlsx");
// Step 3: Configure Image Options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200
};
// Step 4: Render the Workbook
WorkbookRender renderer = new WorkbookRender(workbook, options);
// Step 5: Convert Each Page to Image and Save
for (int i = 0; i < renderer.PageCount; i++)
{
string fileName = $"workbook_page_{i + 1}.png";
renderer.ToImage(i, fileName);
Console.WriteLine($"Saved: {fileName}");
}
}
}
هذا سوف يولد صورة واحدة لكل صفحة منطقية استنادا إلى وضع الطباعة الحالي.
الخطوة 6: حفظ الصور
يتم تخزين الرمز المذكور أعلاه بالفعل لكل ملف صورة إلى القرص باستخدام الاسم المحدد.
// Output:
// workbook_page_1.png
// workbook_page_2.png
// ...
الخطوة السابعة: التحسينات الاختيارية
يمكنك تصحيح عرض الصورة الخاص بك عن طريق تطبيق إعدادات إضافية مثل عرض خطوط الشبكة أو التأكد من أن الأوراق العريضة يتم عرضها في صفحة واحدة.
options.ShowGridLines = true;
options.AllColumnsInOnePagePerSheet = true;
أفضل الممارسات
- استخدم القرار العالي (200+ dpi) للصور ذات جودة الطباعة.
- تمكين
AllColumnsInOnePagePerSheetللصفحات الواسعة. - قم بدمج النتيجة في PDF أو معرض الصور للعروض التقديمية.
المشاكل والحلول المشتركة
| مسألة | الحل |
|---|---|
| صورة الخروج بيضاء | تأكد من أن مكتبة العمل محملة وتحتوي على بيانات مرئية |
| تم قطع الصورة | إعداد OnePagePerSheet = true أو تعديل مقياس الصفحة |
| انخفاض جودة الإنتاج يزيد HorizontalResolution و VerticalResolution