كيفية استخراج نص من ملف DXF في C#

في هذا الدليل خطوة بخطوة ، سنرى كيفية استخراج النص من ملف DXF في C#. يمكن إجراء تحويل DXF إلى TXT في C# بسهولة عن طريق استخراج نص من كيانات من أنواع مختلفة. في هذا البرنامج التعليمي ، نقوم باستخراج النص من كيان CadText فقط. ومع ذلك ، فإن العملية هي نفسها بالنسبة للكيانات الأخرى أيضًا.

خطوات استخراج النص من ملف DXF في C#

  1. احصل على حزمة Aspose.CAD for .NET من NuGet.org
  2. قم بتضمين مساحات الأسماء المطلوبة قبل تشغيل الكود
  3. تعيين ترخيص Aspose باستخدام طريقة SetLicense
  4. قم بتحميل ملف DXF باستخدام فئة Image
  5. تحويل الكائن إلى نوع CadImage
  6. قم بإجراء حلقة عبر جميع الكيانات لجلب النص
  7. تحقق من نوع الكيان CadText واحصل على خاصية DefaultValue
  8. أخيرًا ، احفظ إخراج النص المستخرج كملف TXT

في تنسيق رسومات DXF CAD ، يتم تخزين النص داخل الكيانات فقط ؛ على سبيل المثال CadText أو CadMText أو CadInsertObject أو CadAttDef أو CadAttrib إلخ. لذا لاستخراج النص ، تحتاج أولاً إلى الحصول على كل كيان ثم استرداد النص منه. من أجل البساطة ، نقوم باستخراج النص من كيان CadText في هذا البرنامج التعليمي. ولكن يمكنك استخدام نفس الأسلوب والتعليمات البرمجية لأنواع أخرى من الكيانات ، ما عليك سوى تحويل الكائن إلى نوع كيان معين.

كود لاستخراج النص من ملف DXF في C#

using System;
using System.IO;
//Add reference to Aspose.CAD for .NET API
//Use following namespaces to extract text from DXF file
using Aspose.CAD;
using Aspose.CAD.FileFormats.Cad;
using Aspose.CAD.FileFormats.Cad.CadObjects;
using Aspose.CAD.FileFormats.Cad.CadConsts;
namespace ExtractTextFromDXFFile
{
class Program
{
static void Main(string[] args)
{
//Set Aspose license before extracting text from DXF file format
//using Aspose.CAD for .NET
Aspose.CAD.License AsposeCADLicense = new Aspose.CAD.License();
AsposeCADLicense.SetLicense(@"c:\asposelicense\license.lic");
CadImage DXFCADImagFile = (CadImage) Image.Load("InputDXFCADImagingFile.dxf");
//string to store extracted text from the DXF file
string TextExtractedFromDXFFile = "";
// Search for text in the entities section
foreach (CadBaseEntity CadEntity in DXFCADImagFile.Entities)
{
if (CadEntity.TypeName == CadEntityTypeName.TEXT)
{
CadText CadTextObject = (CadText)CadEntity;
TextExtractedFromDXFFile += CadTextObject.DefaultValue;
}
}
//Save the text extracted from DXF file using File Stream
FileStream FStream = new FileStream("ExtractTextFromDXFFormat.txt", FileMode.Create);
StreamWriter SWriter = new StreamWriter(FStream);
//Write extracted text to the file
SWriter.WriteLine(TextExtractedFromDXFFile);
SWriter.Flush();
//Close file objects
SWriter.Close();
FStream.Close();
}
}
}

في نموذج كود C# أعلاه لاستخراج نص من تنسيق ملف DXF ، نحتفظ بالنص المستخرج في متغير سلسلة وفي النهاية نحفظ كل النص المستخرج في ملف TXT باستخدام تدفقات الملف. في هذه العملية الكاملة لاستخراج النص من CAD file formats ، لا تحتاج إلى تثبيت AutoCAD على نظامك وتعمل واجهة برمجة التطبيقات بدون AutoCAD في أي تطبيق C# بما في ذلك الويب وسطح المكتب و ASP.NET وما إلى ذلك.

 عربي