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

بررسی کلی

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

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

دریافت مختصات موقعیت بخش

متد getCoordinates() به کلاس Portion اضافه شده است که امکان بازیابی مختصات ابتدای بخش را فراهم می‌کند.

// نمونه‌سازی کلاس Prseetation که نمایانگر فایل PPTX است
var pres = new aspose.slides.Presentation("pres.pptx");
try {
    // بازآرایی زمینه ارائه
    var shape = pres.getSlides().get_Item(0).getShapes().get_Item(0);
    var textFrame = shape.getTextFrame();
    for (let i = 0; i < textFrame.getParagraphs().getCount(); i++) {
        const paragraph = textFrame.getParagraphs().get_Item(i);
        for (let j = 0; j < paragraph.getPortions().getCount(); j++) {
            const portion = paragraph.getPortions().get_Item(j);
            var point = portion.getCoordinates();
            console.log("X: " + point.x + " Y: " + point.y);
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

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

Can I apply a hyperlink to only part of the text within a single paragraph?

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

How does style inheritance work: what does a Portion override, and what is taken from Paragraph/TextFrame?

خواص سطح Portion در اولویت بالاتری قرار دارند. اگر یک خاصیت در Portion تنظیم نشده باشد، موتور آن را از Paragraph می‌گیرد؛ اگر آنجا نیز تنظیم نشده باشد، از TextFrame یا سبک theme دریافت می‌شود.

What happens if the font specified for a Portion is missing on the target machine/server?

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

Can I set a Portion-specific text fill transparency or gradient independent of the rest of the paragraph?

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