إدارة أجزاء النص في العروض التقديمية باستخدام C++
احصل على إحداثيات جزء من النص
GetCoordinates() تم إضافة الطريقة إلى IPortion وفئة Portion والتي تسمح باسترجاع إحداثيات بداية الجزء:
auto presentation = System::MakeObject<Presentation>(u"Shapes.pptx");
auto shape = System::ExplicitCast<IAutoShape>(presentation->get_Slides()->idx_get(0)->get_Shapes()->idx_get(0));
auto textFrame = shape->get_TextFrame();
for (const auto& paragraph : textFrame->get_Paragraphs())
{
for (const auto& portion : paragraph->get_Portions())
{
PointF point = portion->GetCoordinates();
Console::WriteLine(String(u"Coordinates X =") + point.get_X() + u" Coordinates Y =" + point.get_Y());
}
}
الأسئلة المتكررة
هل يمكنني تطبيق ارتباط تشعبي على جزء فقط من النص داخل فقرة واحدة؟
نعم، يمكنك تعيين ارتباط تشعبي لجزء منفرد؛ سيتاح النقر فقط على هذا الجزء، وليس على الفقرة بأكملها.
كيف يعمل وراثة الأنماط: ماذا يتجاوز الـPortion وماذا يُؤخذ من الـParagraph / الـTextFrame؟
خصائص المستوى الخاص بالـPortion لها الأولوية الأعلى. إذا لم يتم تعيين خاصية على Portion، فإن المحرك يأخذها من Paragraph; إذا لم تُحدد هناك أيضًا، فإنها تُؤخذ من TextFrame أو من نمط theme.
ماذا يحدث إذا كان الخط المحدد للـPortion غير موجود على الجهاز/الخادم المستهدف؟
تُطبق Font substitution rules. قد يتغير تنسيق النص: يمكن أن تتغير المقاييس، والقطع، والعرض، وهذا مهم لتحديد المواقع بدقة.
هل يمكنني ضبط شفافية تعبئة النص أو تدرج اللون للـPortion بشكل مستقل عن باقي الفقرة؟
نعم، يمكن أن يختلف لون النص، والتعبئة، والشفافية على مستوى Portion عن القطع المجاورة.