كيفية تحويل ورقة عمل إلى صورة في C#
كيفية تحويل ورقة عمل إلى صورة في C#
تصدير ورقة عمل واحدة من Excel إلى تنسيق صورة (مثل PNG، JPEG) مفيد عند إنشاء معاينات، تصدير الرسوم البيانية، أو مشاركة تمثيلات بصرية للبيانات في جدول البيانات بصيغة القراءة فقط. هذا الدليل يوضح لك كيفية تحويل ورقة عمل واحدة من ملف Excel إلى صورة باستخدام Aspose.Cells for .NET.
حالات الاستخدام
- إنشاء معاينة لورقة عمل معينة
- تصدير التقارير المنسقة للبريد الإلكتروني أو الوثائق
- تضمين ورقة واحدة في صفحة ويب أو PDF
دليل خطوة بخطوة
الخطوة 1: تثبيت Aspose.Cells for .NET
dotnet add package Aspose.Cells
الخطوة 2: تحميل ملف Excel
Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // الوصول إلى ورقة العمل المحددة
الخطوة 3: تحديد خيارات عرض الصورة
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
الخطوة 4: إنشاء كائن SheetRender
SheetRender renderer = new SheetRender(sheet, options);
الخطوة 5: عرض كل صفحة كصورة
for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
renderer.ToImage(pageIndex, imageName);
}
الخطوة 6: حفظ الصور
هذا الرمز يقوم تلقائيًا بحفظ صورة واحدة لكل صفحة قابلة للطباعة في ورقة العمل.
الخطوة 7: تحسينات اختيارية
يمكنك تطبيق إعدادات تخطيط إضافية:
// عرض خطوط الشبكة في صورة الإخراج
options.ShowGridLines = true;
// ضبط كل المحتوى في صفحة واحدة
options.AllColumnsInOnePagePerSheet = true;
مثال كامل على الكود
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// تحميل ملف Excel
Workbook workbook = new Workbook("SalesData.xlsx");
// الوصول إلى ورقة عمل محددة
Worksheet sheet = workbook.Worksheets["Q1 Report"];
// تحديد خيارات عرض الصورة
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
// تمكين خطوط الشبكة إذا لزم الأمر
options.ShowGridLines = true;
// عرض الورقة كصورة (صور)
SheetRender renderer = new SheetRender(sheet, options);
for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
renderer.ToImage(pageIndex, imageName);
Console.WriteLine($"تم الحفظ: {imageName}");
}
Console.WriteLine("تم عرض ورقة العمل بنجاح كصورة (صور).");
}
}
السيناريوهات الشائعة وحل المشاكل
المشكلة | الحل |
---|---|
محتوى مقطوع | استخدم AllColumnsInOnePagePerSheet = true |
جودة الإخراج منخفضة | زيادة دقة الصورة |
خطوط الشبكة مفقودة | اضبط ShowGridLines = true |