TextFragment

TextFragment class

يمثل جزءًا من نص Pdf.

public class TextFragment : BaseParagraph

المنشئون

اسم وصف
TextFragment() تهيئة مثيل جديد لملفTextFragment الكائن .
TextFragment(string) يخلقTextFragment كائن واحدTextSegment داخل الكائن. تحديد سلسلة نصية داخل المقطع .
TextFragment(TabStops) تهيئة مثيل جديد لملفTextFragment معرّف مسبقًاTabStops المواقف .
TextFragment(string, TabStops) يخلقTextFragment كائن واحدTextSegment كائن داخلي ومحدّد مسبقًاTabStops المواقف .

الخصائص

اسم وصف
BaselinePosition { get; set; } الحصول على موضع النص للنص ، ممثلاً بامتدادTextFragment object. تمثل نهاية Y لهيكل الموضع إحداثيات خط الأساس لجزء النص.
EndNote { get; set; } الحصول على أو تعيين ملاحظة نهاية الفقرة. (لإنشاء ملف pdf فقط)
FootNote { get; set; } الحصول على حاشية الفقرة السفلية أو تعيينها. (لإنشاء ملف pdf فقط)
Form { get; } الحصول على كائن النموذج الذي يحتوي على TextFragment
override HorizontalAlignment { get; set; } الحصول على محاذاة أفقية لجزء النص أو تعيينها.
override Hyperlink { set; } تعيين الارتباط التشعبي للجزء
IsFirstParagraphInColumn { get; set; } الحصول على أو تعيين قيمة منطقية تشير إلى ما إذا كانت هذه الفقرة ستكون في العمود التالي. القيمة الافتراضية خطأ. (لتوليد pdf)
IsInLineParagraph { get; set; } الحصول على فقرة مضمنة أو تعيينها . الإعداد الافتراضي خطأ. (لإنشاء ملف pdf)
IsInNewPage { get; set; } الحصول على أو تعيين قيمة منطقية تفرض إنشاء هذه الفقرة في صفحة جديدة. القيمة الافتراضية خطأ. (لتوليد pdf)
IsKeptWithNext { get; set; } الحصول على أو تعيين قيمة منطقية تشير إلى ما إذا كانت الفقرة الحالية ستبقى في نفس الصفحة مع الفقرة التالية.
Margin { get; set; } الحصول على أو تعيين هامش خارجي للفقرة (لتوليد pdf)
Page { get; } يحصل على الصفحة التي تحتوي على TextFragment
Position { get; set; } الحصول على أو تعيين موضع النص للنص ، ممثلاً بامتدادTextFragment الكائن .
Rectangle { get; } يحصل على مستطيل من TextFragment
ReplaceOptions { get; } يحصل على خيارات استبدال النص. تحدد الخيارات السلوك عند استبدال نص الجزء بمزيد من الاختصار / الطويل.
Segments { get; set; } الحصول على مقاطع نصية للتيارTextFragment .
Text { get; set; } يحصل أو يحددString كائن النص الذيTextFragment يمثل الكائن .
TextState { get; } الحصول على أو تعيين حالة النص للنص الذيTextFragment يمثل الكائن .
override VerticalAlignment { get; set; } الحصول على محاذاة عمودية لجزء النص أو تعيينها.
WrapLinesCount { get; set; } الحصول على عدد سطور الالتفاف لهذه الفقرة أو تعيينه (لإنشاء ملف pdf فقط)
ZIndex { get; set; } الحصول على أو تحديد قيمة int التي تشير إلى ترتيب Z للرسم البياني. سيتم وضع رسم بياني به ZIndex أكبر فوق الرسم البياني باستخدام ZIndex أصغر. يمكن أن يكون ZIndex سالبًا. الرسم البياني بالسالب سيتم وضع مؤشر Z خلف النص في الصفحة.

طُرق

اسم وصف
override Clone() استنساخ الجزء .
virtual CloneWithSegments() استنساخ الجزء بكل المقاطع.
IsolateTextSegments(int, int) يحصلTextSegment (ق) تمثل جزءًا محددًا منTextFragment نص .

ملاحظات

في بضع كلمات ،TextFragment يحتوي الكائن على قائمةTextSegment objects. بالتفصيل: نص مستند pdf بتنسيقPdf يتم تمثيله بواسطة كائنين أساسيين:TextFragment وTextSegment معظم الاختلافات بينهما تعتمد على السياق . لنفكر في السيناريو التالي. يبحث المستخدم عن نص “hello world” للعمل به ، وتغيير خصائصه ، والبحث وما إلى ذلك. تمثيل نص pdf Phisycally معقد للغاية. قد يتكون النص “hello world” من عدة مقاطع نصية مستقلة phisycally.TextFragment يوفر object عملية منطقية واحدة فوق ماديTextSegment مجموعة الكائنات التي تمثل استعلام المستخدم. في سيناريو البحث عن النص ،TextFragment هو تمثيل نصي منطقي “hello world” ، وTextSegmentتمثل مجموعة الكائنات جميع الأجزاء المادية التي تنشئ كائن نص “hello world”. لذا ،TextFragment يقترب من تمثيل النص المنطقي . وTextSegment هو قريب من تمثيل النص المادي. من الواضح أن كل منهماTextSegment قد يكون للكائن خط خاص به ، ولونه ، وخصائص تحديد الموضع.TextFragment يوفر طريقة بسيطة لتغيير النص بخصائصه: ضبط الخط ، ضبط حجم الخط ، ضبط لون الخط وما إلى ذلك. في غضون ذلكTextSegment كائنات يمكن الوصول إليها ويمكن للمستخدمين العمل معهاTextSegment بشكل مستقل. لاحظ أن تغيير خصائص TextFragment قد يغير الجزء الداخليSegments لأن TextFragment عبارة عن كائن مجمع وقد يعيد ترتيب المقاطع الداخلية أو يدمجها في مقطع واحد. إذا كان مطلبك هو تركSegmentsالمجموعة دون تغيير ، يرجى تغيير الأجزاء الداخلية بشكل فردي.

Document doc = new Document(docFile);
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");
doc.Pages[1].Accept(absorber);

أمثلة

يوضح المثال كيفية البحث عن نص في صفحة مستند PDF الأولى واستبدال النص والخط.

// افتح المستند
Document doc = new Document(@"D:\Tests\input.pdf");

// ابحث عن الخط الذي سيتم استخدامه لتغيير خط نص المستند
Aspose.Pdf.Txt.Font font = FontRepository.FindFont("Arial");

// إنشاء كائن TextFragmentAbsorber للعثور على جميع تكرارات نص "أهلًا بالعالم"
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");

// قبول الماص للصفحة الأولى
doc.Pages[1].Accept(absorber);

// تغيير النص والخط عند ظهور النص الأول
absorber.TextFragments[1].Text = "hi world";
absorber.TextFragments[1].TextState.Font = font;

// حفظ الوثيقة
doc.Save(@"D:\Tests\output.pdf");  

أنظر أيضا