Run
محتويات
[
يخفي
]Run class
يمثل سلسلة من الأحرف بنفس تنسيق الخط.
لمعرفة المزيد، قم بزيارةالبرمجة باستخدام المستندات مقالة توثيقية.
public class Run : Inline
المنشئون
اسم | وصف |
---|---|
Run(DocumentBase) | يقوم بتهيئة مثيل جديد لـRun الصف. |
Run(DocumentBase, string) | يقوم بتهيئة مثيل جديد لـيجري الصف. |
الخصائص
اسم | وصف |
---|---|
CustomNodeId { get; set; } | يحدد معرف العقدة المخصص. |
virtual Document { get; } | يحصل على المستند الذي تنتمي إليه هذه العقدة. |
Font { get; } | يوفر الوصول إلى تنسيق الخط لهذا الكائن. |
virtual IsComposite { get; } | إرجاعحقيقي إذا كانت هذه العقدة قادرة على احتواء عقد أخرى. |
IsDeleteRevision { get; } | يعود صحيحًا إذا تم حذف هذا الكائن في Microsoft Word أثناء تمكين تتبع التغييرات. |
IsFormatRevision { get; } | يعود صحيحًا إذا تم تغيير تنسيق الكائن في Microsoft Word أثناء تمكين تتبع التغييرات. |
IsInsertRevision { get; } | يعود صحيحًا إذا تم إدراج هذا الكائن في Microsoft Word أثناء تمكين تتبع التغييرات. |
IsMoveFromRevision { get; } | إرجاعحقيقي إذا تم نقل هذا الكائن (حذفه) في Microsoft Word أثناء تمكين تتبع التغييرات. |
IsMoveToRevision { get; } | إرجاعحقيقي إذا تم نقل هذا الكائن (إدراجه) في Microsoft Word أثناء تمكين تتبع التغييرات. |
IsPhoneticGuide { get; } | يحصل على قيمة منطقية تشير إلى أن التشغيل عبارة عن دليل صوتي. |
NextSibling { get; } | يحصل على العقدة التي تلي هذه العقدة مباشرة. |
override NodeType { get; } | إرجاعRun . |
ParentNode { get; } | يحصل على الوالد المباشر لهذه العقدة. |
ParentParagraph { get; } | يسترد الأصلParagraph من هذه العقدة. |
PhoneticGuide { get; } | يحصل علىPhoneticGuide الكائن. |
PreviousSibling { get; } | يحصل على العقدة التي تسبق هذه العقدة مباشرةً. |
Range { get; } | يعيدRange الكائن الذي يمثل الجزء من المستند الموجود في هذه العقدة. |
Text { get; set; } | يحصل على نص التشغيل أو يعينه. |
طُرق
اسم | وصف |
---|---|
override Accept(DocumentVisitor) | يقبل زائرًا. |
Clone(bool) | ينشئ نسخة مكررة من العقدة. |
GetAncestor(NodeType) | يحصل على السلف الأول للعنصر المحددNodeType . |
GetAncestor(Type) | يحصل على السلف الأول لنوع الكائن المحدد. |
override GetText() | يحصل على نص التشغيل. |
NextPreOrder(Node) | يحصل على العقدة التالية وفقًا لخوارزمية عبور شجرة الترتيب المسبق. |
PreviousPreOrder(Node) | يحصل على العقدة السابقة وفقًا لخوارزمية عبور شجرة الترتيب المسبق. |
Remove() | يزيل نفسه من الأصل. |
ToString(SaveFormat) | يصدر محتوى العقدة إلى سلسلة بالتنسيق المحدد. |
ToString(SaveOptions) | يقوم بتصدير محتوى العقدة إلى سلسلة باستخدام خيارات الحفظ المحددة. |
ملاحظات
يتم تخزين كافة نصوص المستند في مجموعات نصية.
Run
لا يمكن أن يكون إلا طفلاParagraph
أو مضمنةStructuredDocumentTag
.
أمثلة
يوضح كيفية تنسيق سلسلة من النص باستخدام خاصية الخط الخاصة به.
Document doc = new Document();
Run run = new Run(doc, "Hello world!");
Aspose.Words.Font font = run.Font;
font.Name = "Courier New";
font.Size = 36;
font.HighlightColor = Color.Yellow;
doc.FirstSection.Body.FirstParagraph.AppendChild(run);
doc.Save(ArtifactsDir + "Font.CreateFormattedRun.docx");
يوضح كيفية إنشاء مستند Aspose.Words يدويًا.
Document doc = new Document();
//تحتوي الوثيقة الفارغة على قسم واحد ونص واحد وفقرة واحدة.
//استدعاء طريقة "RemoveAllChildren" لإزالة كل هذه العقد،
// وينتهي الأمر بعقدة مستند بدون أطفال.
doc.RemoveAllChildren();
// لا تحتوي هذه الوثيقة الآن على أي عقد فرعية مركبة يمكننا إضافة محتوى إليها.
// إذا أردنا تحريره، فسوف نحتاج إلى إعادة ملء مجموعة العقد الخاصة به.
// أولاً، قم بإنشاء قسم جديد، ثم قم بإضافته كقسم فرعي إلى عقدة المستند الجذر.
Section section = new Section(doc);
doc.AppendChild(section);
// تعيين بعض خصائص إعداد الصفحة للقسم.
section.PageSetup.SectionStart = SectionStart.NewPage;
section.PageSetup.PaperSize = PaperSize.Letter;
// يحتاج القسم إلى نص، والذي سيحتوي على جميع محتوياته ويعرضها
// على الصفحة بين رأس القسم وتذييله.
Body body = new Body(doc);
section.AppendChild(body);
// قم بإنشاء فقرة، ثم اضبط بعض خصائص التنسيق، ثم أضفها كفقرة فرعية إلى النص.
Paragraph para = new Paragraph(doc);
para.ParagraphFormat.StyleName = "Heading 1";
para.ParagraphFormat.Alignment = ParagraphAlignment.Center;
body.AppendChild(para);
// أخيرًا، أضف بعض المحتوى لإنشاء المستند. أنشئ مسارًا،
// قم بتعيين مظهره ومحتوياته، ثم قم بإضافته كطفل إلى الفقرة.
Run run = new Run(doc);
run.Text = "Hello World!";
run.Font.Color = Color.Red;
para.AppendChild(run);
Assert.AreEqual("Hello World!", doc.GetText().Trim());
doc.Save(ArtifactsDir + "Section.CreateManually.docx");
يوضح كيفية إضافة وتحديث وحذف العقد الفرعية في مجموعة CompositeNode الفرعية.
Document doc = new Document();
// تحتوي الوثيقة الفارغة، بشكل افتراضي، على فقرة واحدة.
Assert.AreEqual(1, doc.FirstSection.Body.Paragraphs.Count);
// يمكن للعقد المركبة مثل فقرتنا أن تحتوي على عقد مركبة ومضمنة أخرى كأبناء.
Paragraph paragraph = doc.FirstSection.Body.FirstParagraph;
Run paragraphText = new Run(doc, "Initial text. ");
paragraph.AppendChild(paragraphText);
// إنشاء ثلاث عقد تشغيل أخرى.
Run run1 = new Run(doc, "Run 1. ");
Run run2 = new Run(doc, "Run 2. ");
Run run3 = new Run(doc, "Run 3. ");
// لن يعرض نص المستند هذه العمليات حتى نقوم بإدخالها في عقدة مركبة
// وهذا في حد ذاته جزء من شجرة عقدة المستند، كما فعلنا في التشغيل الأول.
// يمكننا تحديد مكان محتوى النص للعقد التي نقوم بإدراجها
// يظهر في المستند عن طريق تحديد موقع الإدراج بالنسبة لعقدة أخرى في الفقرة.
Assert.AreEqual("Initial text.", paragraph.GetText().Trim());
//أدخل التشغيل الثاني في الفقرة الموجودة أمام التشغيل الأولي.
paragraph.InsertBefore(run2, paragraphText);
Assert.AreEqual("Run 2. Initial text.", paragraph.GetText().Trim());
//أدخل التشغيل الثالث بعد التشغيل الأولي.
paragraph.InsertAfter(run3, paragraphText);
Assert.AreEqual("Run 2. Initial text. Run 3.", paragraph.GetText().Trim());
// قم بإدراج التشغيل الأول في بداية مجموعة العقد الفرعية للفقرة.
paragraph.PrependChild(run1);
Assert.AreEqual("Run 1. Run 2. Initial text. Run 3.", paragraph.GetText().Trim());
Assert.AreEqual(4, paragraph.GetChildNodes(NodeType.Any, true).Count);
//يمكننا تعديل محتويات التشغيل عن طريق تحرير وحذف العقد الفرعية الموجودة.
((Run)paragraph.GetChildNodes(NodeType.Run, true)[1]).Text = "Updated run 2. ";
paragraph.GetChildNodes(NodeType.Run, true).Remove(paragraphText);
Assert.AreEqual("Run 1. Updated run 2. Run 3.", paragraph.GetText().Trim());
Assert.AreEqual(3, paragraph.GetChildNodes(NodeType.Any, true).Count);
أنظر أيضا
- class Inline
- مساحة الاسم Aspose.Words
- المجسم Aspose.Words