دریافت مرزهای بخش متن از ارائه‌ها در اندروید

بررسی کلی

یک بخش متن نشانگر یک قطعه خاص از متن درون یک پاراگراف است و به شما امکان می‌دهد که به صورت مستقل بر روی آن قطعه کار کنید، بدون در نظر گرفتن محتوای اطراف. در Aspose.Slides، بخش‌ها می‌توانند زمانی استفاده شوند که نیاز به دریافت مرزهای یک قطعه متن داشته باشید، قالب‌بندی را فقط بر روی بخشی از پاراگراف اعمال کنید، یا رفتار متن را در سطح جزئی‌تری کنترل کنید.

این مقاله نشان می‌دهد چگونه با استفاده از IPortion.getRect مستطیل محاطی یک بخش را دریافت کنید. همچنین نحوه دریافت مختصات شروع یک بخش را با استفاده از IPortion.getCoordinates نشان می‌دهد. علاوه بر این، سناریوهای رایج مرتبط با بخش‌ها را برجسته می‌کند، مانند اعمال یک پیوند به یک قطعه متن واحد، درک نحوه حل قالب‌بندی از طریق بخش، پاراگراف، فریم متن و ارث‌بری تم، و مدیریت مواردی که قلم مشخصی در دسترس نیست.

دریافت مرزهای یک بخش متن

از IPortion.getRect برای دریافت مستطیل محاطی یک بخش متن استفاده کنید:

Presentation presentation = new Presentation("Shapes.pptx");
try {
    ISlide slide = presentation.getSlides().get_Item(0);
    IAutoShape shape = (IAutoShape) slide.getShapes().get_Item(0);

    for (IParagraph paragraph : shape.getTextFrame().getParagraphs())
    {
        for (IPortion portion : paragraph.getPortions())
        {
            android.graphics.RectF rectangle = portion.getRect();
            System.out.println("X = " + rectangle.left + "; Y = " + rectangle.top + "; Width = " + rectangle.width() + "; Height = " + rectangle.height());
        }
    }
} finally {
    presentation.dispose();
}

دریافت مختصات یک بخش متن

از IPortion.getCoordinates برای دریافت مختصات شروع یک بخش متن استفاده کنید:

Presentation presentation = new Presentation("Shapes.pptx");
try {
    ISlide slide = presentation.getSlides().get_Item(0);
    IAutoShape shape = (IAutoShape) slide.getShapes().get_Item(0);

    for (IParagraph paragraph : shape.getTextFrame().getParagraphs())
    {
        for (IPortion portion : paragraph.getPortions())
        {
            PointF point = portion.getCoordinates();
            System.out.println("X = " + point.x + "; Y = " + point.y);
        }
    }
} finally {
    presentation.dispose();
}

سوالات متداول

آیا می‌توانم یک پیوند را فقط به بخشی از متن درون یک پاراگراف واحد اعمال کنم؟

بله، می‌توانید اختصاص یک پیوند را به یک بخش جداگانه اعمال کنید؛ فقط آن قطعه کلیک‌پذیر خواهد بود، نه کل پاراگراف.

چگونه ارث‌بری سبک کار می‌کند: بخش چه چیزی را بازنویسی می‌کند و چه چیزی از پاراگراف یا فریم متن گرفته می‌شود؟

ویژگی‌های سطح بخش بالاترین الویت را دارند. اگر یک ویژگی در IPortion تنظیم نشده باشد، Aspose.Slides آن را از IParagraph می‌گیرد. اگر در آنجا نیز تنظیم نشده باشد، Aspose.Slides از سبک ITextFrame یا theme استفاده می‌کند.

اگر قلم مشخص‌شده برای یک بخش در دستگاه یا سرور هدف موجود نباشد چه اتفاقی می‌افتد؟

قوانین جایگزینی قلم اعمال می‌شوند. متن ممکن است بازچینش شود: مقیاس‌ها، هیفن‌گذاری و عرض می‌توانند تغییر کنند که برای موقعیت‌یابی دقیق مهم است.

آیا می‌توانم شفافیت پر کردن متن یا گرادیان خاص بخش را به‌صورت مستقل از بقیه پاراگراف تنظیم کنم؟

بله، رنگ متن، پر کردن و شفافیت در سطح IPortion می‌تواند با قطعات همسایه متفاوت باشد.