TextSegment
TextSegment class
يمثل مقطعًا من نص ملف PDF .
public sealed class TextSegment
المنشئون
اسم | وصف |
---|---|
TextSegment() | إنشاء كائن TextSegment . |
TextSegment(string) | إنشاء كائن TextSegment . |
الخصائص
اسم | وصف |
---|---|
BaselinePosition { get; set; } | الحصول على موضع النص للنص ، ممثلاً بامتدادTextSegment object. تمثل نهاية Y لهيكل الموضع إحداثيات خط الأساس لمقطع النص. |
Characters { get; } | الحصول على مجموعة من كائنات CharInfo التي تمثل معلومات عن الأحرف في مقطع النص. |
EndCharIndex { get; } | الحصول على فهرس حرف النهاية للجزء الحالي في مقطع مشغل عرض النص (Tj ، TJ) . |
Hyperlink { get; set; } | الحصول على الارتباط التشعبي للمقطع أو تعيينه (لمولد pdf) . |
Position { get; set; } | الحصول على موضع النص للنص ، ممثلاً بامتدادTextSegment الكائن . |
Rectangle { get; } | يحصل على مستطيل من TextSegment |
StartCharIndex { get; } | الحصول على فهرس أحرف البداية للمقطع الحالي في مقطع مشغل عرض النص (Tj ، TJ) . |
Text { get; set; } | يحصل أو يحددString كائن النص الذيTextSegment يمثل الكائن . |
TextEditOptions { get; set; } | الحصول على أو تعيين خيارات تحرير النص. تحدد الخيارات سلوكًا خاصًا عندما يتعذر كتابة الرمز المطلوب بالخط. |
TextState { get; set; } | الحصول على أو تعيين حالة النص للنص الذيTextSegment يمثل الكائن . |
طُرق
اسم | وصف |
---|---|
static MyHtmlEncode(string) | ترميز السلسلة كـ html. |
ملاحظات
في بضع كلمات ،TextSegment
الأشياء هي أطفالTextFragment
object. بالتفصيل: نص مستند 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
الكائنات بشكل مستقل .
Document doc = new Document(docFile);
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");
doc.Pages[1].Accept(absorber);
أمثلة
يوضح المثال كيفية تغيير لون النص وحجم خط النص باستخدامTextState
موضوعTextSegment
الكائن .
// افتح المستند
Document doc = new Document(@"D:\Tests\input.pdf");
// إنشاء كائن TextFragmentAbsorber للعثور على جميع تكرارات نص "أهلًا بالعالم"
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");
// قبول الماص للصفحة الأولى
doc.Pages[1].Accept(absorber);
/ / تغيير لون المقدمة للجزء الأول من النص من تواجد النص الأول
absorber.TextFragments[1].Segments[1].TextState.ForegroundColor = Color.FromRgb(System.Drawing.Color.Red);
// تغيير حجم الخط في مقطع النص الأول من تواجد النص الأول
absorber.TextFragments[1].Segments[1].TextState.FontSize = 15;
// حفظ الوثيقة
doc.Save(@"D:\Tests\output.pdf");
أنظر أيضا
- مساحة الاسم Aspose.Pdf.Text
- المجسم Aspose.PDF