1. المنتجات
  2.   Aspose.Cells
  3.   Aspose.Cells FOSS for Rust

Aspose.Cells FOSS لـ Rust

حزمة Rust مفتوحة المصدر لإنشاء، وقراءة، وتحرير، وحفظ ملفات Excel XLSX دون تبعيات Office.

Aspose.Cells FOSS — مكتبة رست مفتوحة المصدر

Aspose.Cells FOSS for Rust هي مكتبة مفتوحة المصدر للعمل مع جداول Excel XLSX في تطبيقات Rust. توفر للمبرمجين النظاميين طريقة أصلية وآمنة للذاكرة لإنشاء دفاتر عمل من الصفر، وتحميل ملفات XLSX الموجودة، وتعديل محتوياتها، وحفظ النتيجة — دون الحاجة إلى Microsoft Office أو أتمتة COM أو أي بيئة تشغيل خارجية.

الصندوق (crate) يُنمذج شجرة كائنات جدول البيانات بالكامل: Workbook، Worksheet، ومجموعات الخلايا مع محددات قيم ذات نوعية (put_value_string، put_value_i32، put_value_bool، put_value_decimal)، الصيغ مع القيم المخزنة مؤقتًا عبر put_formula_with_cached_value، المخططات (Chart، ChartType)، التنسيق الشرطي (FormatCondition)، التحقق من صحة البيانات (Validation)، المرشحات التلقائية (AutoFilter)، تنسيق الخلايا (CellStyle، Font، Fill، Borders)، إعداد الصفحة (PageSetup)، الصور، الأشكال، التعليقات، الروابط التشعبية، الجداول (ListObject)، المخططات الصغيرة (SparklineGroup)، الأسماء المعرفة، وحماية دفتر العمل/ورقة العمل.

Aspose.Cells FOSS for Rust مرخصة بموجب رخصة MIT وتستهدف إصدار Rust 2021. يتم تثبيتها كاعتماد قياسي في Cargo من مستودع GitHub — راجع دليل التثبيت للحصول على الإدخال الدقيق في Cargo.toml. تُعرض الأخطاء عبر أنواع Result التقليدية (CellsError)، ويقدم تحميل XLSX خيارات إصلاح (LoadOptions) مع تشخيصات منظمة (LoadDiagnostics). لعائلة منتجات المؤسسة، انظر Aspose.Cells — Enterprise Product Family.

إدارة المصنف والورقة

  • إنشاء دفاتر عمل فارغة باستخدام Workbook::new أو تحميل ملفات موجودة باستخدام Workbook::load_xlsx
  • إضافة والوصول إلى الأوراق عبر add_worksheet و worksheet ومجموعات أوراق العمل القابلة للتعديل
  • حفظ إلى القرص باستخدام save و save_xlsx أو save_with_format المحدد للصيغة
  • التحكم في عرض دفتر العمل والإعدادات وخصائص المستند

أين يتناسب

  • خدمات الخلفية التي تُنشئ تقارير XLSX دون الحاجة إلى تثبيت Office
  • أدوات سطر الأوامر (CLI) التي تُنتج دفعات أو تُعالج جداول البيانات بعد الإنشاء
  • خطوط أنابيب البيانات بلغة Rust التي تُصدر نتائج جدولة للمستخدمين التجاريين

بيانات الخلية، الصيغ، والأنواع

  • المُعِدّات المكتوبة بأنواع: put_value_string, put_value_i32, put_value_bool, put_value_decimal, put_value_date_time
  • كتابة الصيغ مع القيم المخزنة مؤقتًا عبر put_formula_with_cached_value
  • قراءة القيم مرة أخرى باستخدام display_string_value و value_type
  • الإشارة إلى الخلايا باسم A1 أو بفهرس الصف/العمود (get, get_by_index)

استخدامات عملية

  • تصديرات مالية حيث يجب فتح الصيغ بالقيم المخزنة الصحيحة
  • قوالب إدخال البيانات بأعمدة مكتوبة بأنواع محددة
  • تحرير ذهابًا وإيابًا لدفاتر العمل التي يزودها المستخدم

التنسيق والتخطيط

  • تنسيق الخلية عبر CellStyle مع Font و Fill و Borders
  • تطبيق تحديثات النمط المستهدفة باستخدام StyleFlag
  • تنسيق الأرقام عبر NumberFormat
  • الطباعة وتنسيق الصفحة عبر PageSetup (حجم الورق، الاتجاه، الهوامش)
  • تجميد الألواح باستخدام FreezePane; التحكم في إظهار الصفوف/الأعمدة

لماذا يهم

  • تقارير تحمل العلامة التجارية وجاهزة للطباعة مباشرة من خدمات Rust
  • تصديرات قابلة للقراءة مع تنسيقات أرقام وتواريخ صحيحة
  • جداول كبيرة تظل قابسة للتنقل مع صفوف رأسية مجمدة

المخططات، الصور، والأشكال

  • أضف أنواع المخططات العمودية، الخطية، وغيرها عبر ChartType في مجموعة مخططات الورقة
  • اقرأ مرفقات المخطط وأنواعه مرة أخرى من الملفات المحملة (Chart, ChartCollection)
  • دمج الصور باستخدام Picture والأشكال الرسومية باستخدام Shape
  • ضغط الاتجاهات داخل الخلية باستخدام SparklineGroup

حالات الاستخدام

  • لوحات المعلومات وكتب عمل KPI التي يتم إنشاؤها وفق جدول زمني
  • ملخصات بصرية مدمجة بجانب البيانات الخام
  • وضع مخطط تلقائي من نطاقات البيانات

تحليل البيانات والحماية

  • قواعد التنسيق الشرطي عبر FormatCondition
  • قواعد التحقق من البيانات عبر Validation مع OperatorType
  • المرشحات التلقائية عبر AutoFilter؛ الجداول المهيكلة عبر ListObject
  • الأسماء المعرفة عبر DefinedName؛ الحماية عبر WorkbookProtection و WorksheetProtection
  • تحميل XLSX قوي باستخدام أعلام إصلاح LoadOptions و LoadDiagnostics

من يستفيد

  • الفرق التي تشحن دفاتر عمل إدخال البيانات التي تم التحقق منها
  • الخدمات التي تستقبل ملفات XLSX من أطراف ثالثة قد تحتاج إلى إصلاح
  • المحللون الذين يتلقون تقارير مُفلترة مسبقًا ومحمية

إنشاء، حفظ وإعادة تحميل مصنف

إنشاء مصنف، كتابة قيم بأنواع مختلفة وصيغة مع نتيجة مخزنة مؤقتًا، حفظه كملف XLSX، ثم تحميله مرة أخرى:

use aspose_cells_foss_rust::{CellValue, Workbook};
use std::error::Error;

fn main() -> Result<(), Box<dyn Error>> {
    // Create a new workbook (starts with one sheet, "Sheet1").
    let mut workbook = Workbook::new();
    {
        let mut worksheets = workbook.get_worksheets_mut();
        let sheet = worksheets.get(0)?;
        let mut cells = sheet.get_cells_mut();

        cells.get("A1")?.put_value_string("Hello")?;
        cells.get("B1")?.put_value_i32(123)?;
        cells.get("C1")?.put_value_bool(true)?;
        cells.get("D1")?.put_value_decimal(12.5)?;
        cells.get("F1")?.put_value_i32(10)?;
        cells.get("G1")?
            .put_formula_with_cached_value("=F1*2", CellValue::Number(20.0))?;
    }
    workbook.save("hello.xlsx")?;

    // Load it back.
    let loaded = Workbook::load_xlsx("hello.xlsx")?;
    let sheet = loaded.worksheet("Sheet1")?;
    let cells = sheet.get_cells();
    println!("A1 = {}", cells.get("A1")?.display_string_value());

    Ok(())
}

تحميل ملفات XLSX مع خيارات الإصلاح

افتح دفاتر العمل بطريقة دفاعية باستخدام أعلام إصلاح LoadOptions وتفحص تشخيصات التحميل المنظمة:

let options = LoadOptions {
    try_repair_package: true,
    try_repair_xml: true,
    ..LoadOptions::default()
};

let loaded = Workbook::load_xlsx_with_options(&valid_path, &options)?;
let sheet = loaded.worksheet("Sheet1")?;
let cells = sheet.get_cells();

println!("Saved: {}", valid_path.display());
println!(
    "Loaded workbook with {} worksheet(s) and {} diagnostic issue(s).",
    loaded.get_worksheets().count(),
    loaded.get_load_diagnostics().issues().len()
);

إضافة مخططات من نطاقات البيانات

املأ نطاق البيانات، ثم اربط مخططات العمود والخط به:

let mut charts = sheet.get_charts();
charts.add(
    ChartType::Column,
    "Charts!$B$1:$B$13".to_string(),
    0,
    4,
    18,
    8,
)?;
charts.add(
    ChartType::Line,
    "Charts!$C$1:$C$13".to_string(),
    0,
    9,
    18,
    13,
)?;

الأسئلة الشائعة

ما الرخصة التي يستخدمها Aspose.Cells FOSS for Rust؟

الحزمة مُصدرة تحت رخصة MIT؛ النص الكامل موجود في المستودع كملف LICENSE.txt.

هل يمكنني استخدامه في المنتجات التجارية؟

نعم. تسمح رخصة MIT بالاستخدام التجاري، والتعديل، وإعادة التوزيع، شريطة الحفاظ على إشعار حقوق النشر والرخصة.

كيف أقوم بتثبيت الـcrate؟

أضف aspose-cells-foss-rust إلى ملف Cargo.toml الخاص بك كاعتماد git من مستودع GitHub.

ما هي الصيغ التي يمكن قراءتها وكتابتها؟

XLSX، مع قراءة وكتابة كاملة في دورة واحدة عبر Workbook::load_xlsx و save. صيغ الجداول الإلكترونية الأخرى غير مدعومة في الإصدار الحالي.

هل يتطلب Microsoft Office؟

لا. تقوم المكتبة بقراءة وكتابة تنسيق حزمة XLSX مباشرةً — لا يوجد تثبيت لـ Office أو أتمتة COM أو أي بيئة تشغيل خارجية.

  

الدعم وموارد التعلم

 العربية