GroupDocs.Redaction for .NET 26.6 متاح الآن. يسهّل هذا الإصدار فتح المستندات من التدفقات (streams) والملفات مع تحديد صريح للتنسيق، ويقدّم واجهة برمجة تطبيقات رسم جديدة مستقلة عن System.Drawing لتحسين التوافق عبر الأنظمة.
الإصلاحات والتحسينات
- [Enhancement] تحديد نوع الملف عند فتح مستند من تدفق أو مسار ملف. (REDACTIONNET-572)
- [Enhancement] الانتقال بعيدًا عن
System.Drawingلتعزيز التوافق عبر الأنظمة. (REDACTIONNET-799)
ما الجديد؟
يركّز هذا الإصدار على مجالين يبسطان التكامل ويُعِدّان واجهة البرمجة لدعم منصات أوسع.
تحديد تنسيق المستند باستخدام LoadOptions.FileType
عند فتح مستند، يكتشف GroupDocs.Redaction تنسيقه تلقائيًا عادةً. يعمل هذا جيدًا للملفات التي تحمل امتدادًا صحيحًا، لكنه قد يفشل مع التدفقات التي لا تحمل اسم ملف أو عندما لا يتطابق الامتداد مع المحتوى الفعلي.
تضيف النسخة 26.6 الخاصية LoadOptions.FileType ومنشئ LoadOptions(FileType). عيّن FileType إلى ثابت مدعوم مثل FileType.DOCX أو FileType.PDF، وستفتح المكتبة المستند باستخدام ذلك التنسيق دون تشغيل عملية اكتشاف التنسيق الثنائي. السلوك الافتراضي يبقى كما هو عندما لا يتم تحديد FileType أو يظل FileType.Unknown.
أنواع الرسم عبر الأنظمة في GroupDocs.Redaction.Options.Drawing
اعتمدت عدة خيارات تعديل سابقة على أنواع System.Drawing (Color، Point، Size، Rectangle، Font). هذه الأنواع غير متوفرة على جميع الأنظمة وقد تعقّد النشر على Linux وفي بيئات الحاويات.
توفر مساحة الاسم الجديدة GroupDocs.Redaction.Options.Drawing الأنواع Color، Point، Size، Rectangle، Font، و FontStyle للاستخدام في واجهة البرمجة العامة. تقبل التحميلات (overloads) الجديدة هذه الأنواع في ReplacementOptions، RegionReplacementOptions، ImageAreaRedaction، PageAreaFilter، TextFragment، والفئات ذات الصلة.
الكود الموجود الذي يستخدم System.Drawing يظل يُجمّع ويعمل. تم وضع العلامة “obsolete” على الأعضاء المقابلين ويُستحسن ترحيلها إلى الأنواع الجديدة في التحديثات المستقبلية.
تغييرات في واجهة البرمجة العامة
المضافة
- خاصية
LoadOptions.FileType - منشئ
LoadOptions(FileType fileType) - أنواع الرسم في
GroupDocs.Redaction.Options.Drawing:Color،Point،Size،Rectangle،Font،FontStyle - تحميلات جديدة تقبل أنواع
GroupDocs.Redaction.Options.Drawing
المهملة (Obsolete)
ReplacementOptions.BoxColor— استخدمReplacementOptions.BoxFillColorبدلاً منهReplacementOptions(System.Drawing.Color)— استخدمReplacementOptions(GroupDocs.Redaction.Options.Drawing.Color)بدلاً منهRegionReplacementOptions.FillColor— استخدمRegionReplacementOptions.AreaFillColorبدلاً منهRegionReplacementOptions.Size— استخدمRegionReplacementOptions.AreaSizeبدلاً منهRegionReplacementOptions(System.Drawing.Color, System.Drawing.Size)— استخدم التحميلة التي تقبلGroupDocs.Redaction.Options.Drawing.ColorوGroupDocs.Redaction.Options.Drawing.Sizeبدلاً منهاRegionReplacementOptions(System.Drawing.Color, System.Drawing.Font, string)— استخدم التحميلة التي تقبلGroupDocs.Redaction.Options.Drawing.ColorوGroupDocs.Redaction.Options.Drawing.Fontبدلاً منهاImageAreaRedaction.TopLeft— استخدمImageAreaRedaction.TopLeftPositionبدلاً منهImageAreaRedaction(System.Drawing.Point, RegionReplacementOptions)— استخدم التحميلة التي تقبلGroupDocs.Redaction.Options.Drawing.Pointبدلاً منهاPageAreaFilter.Rectangle— استخدمPageAreaFilter.AreaRectangleبدلاً منهPageAreaFilter(System.Drawing.Point, System.Drawing.Size)— استخدم التحميلة التي تقبلGroupDocs.Redaction.Options.Drawing.PointوGroupDocs.Redaction.Options.Drawing.Sizeبدلاً منهاTextFragment.Rectangle— استخدمTextFragment.BoundingRectangleبدلاً منهTextFragment(string, System.Drawing.Rectangle)— استخدمTextFragment(string, GroupDocs.Redaction.Options.Drawing.Rectangle)بدلاً منهIImageFormatInstance.EditArea(System.Drawing.Point, RegionReplacementOptions)— استخدم التحميلة التي تقبلGroupDocs.Redaction.Options.Drawing.Pointبدلاً منها
أمثلة على الشيفرة
فتح مستند بنوع ملف صريح
using System.IO;
using GroupDocs.Redaction.Options;
using GroupDocs.Redaction.Redactions;
using (Stream stream = File.OpenRead("sample.docx"))
{
using (Redactor redactor = new Redactor(stream, new LoadOptions(FileType.DOCX)))
{
redactor.Apply(new DeleteAnnotationRedaction());
redactor.Save();
}
}
using (Redactor redactor = new Redactor("sample.pdf", new LoadOptions(FileType.PDF)))
{
redactor.Apply(new ExactPhraseRedaction("Test", new ReplacementOptions("[redacted]")));
redactor.Save();
}
استخدام GroupDocs.Redaction.Options.Drawing بدلاً من System.Drawing
using GroupDocs.Redaction.Options.Drawing;
using GroupDocs.Redaction.Redactions;
// سابقًا: new ReplacementOptions(System.Drawing.Color.Red)
using (Redactor redactor = new Redactor("sample.docx"))
{
redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(Color.Red)));
redactor.Save();
}
// سابقًا: new ImageAreaRedaction(new System.Drawing.Point(516, 311),
// new RegionReplacementOptions(System.Drawing.Color.Blue, new System.Drawing.Size(170, 35)))
using (Redactor redactor = new Redactor("sample.jpg"))
{
redactor.Apply(new ImageAreaRedaction(new Point(516, 311),
new RegionReplacementOptions(Color.Blue, new Size(170, 35))));
redactor.Save();
}
كيفية الحصول على التحديث
- NuGet – قم بالترقية إلى أحدث حزمة
GroupDocs.Redaction for .NETعبر NuGet - تحميل مباشر – حمّل تجميعات GroupDocs.Redaction من صفحة GroupDocs.Redaction for .NET 26.6
معرفة المزيد
- Full Release Notes
- Documentation
- Load document with explicit file type
- GroupDocs.Redaction Free Support Forum