Фрагмент
Получить координаты позиции Portion
Метод getCoordinates() был добавлен в класс Portion, который позволяет получать координаты начала части.
// Создать экземпляр класса Presentation, представляющего 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();
}
}
FAQ
Можно ли применить гиперссылку только к части текста в одном абзаце?
Да, вы можете assign a hyperlink к отдельной части; только этот фрагмент будет кликабельным, а не весь абзац.
Как работает наследование стилей: что переопределяет Portion и что берётся из Paragraph/TextFrame?
Свойства уровня Portion имеют высший приоритет. Если свойство не задано для Portion, движок берёт его из Paragraph; если и там не задано, — из TextFrame или стиля theme.
Что происходит, если шрифт, указанный для Portion, отсутствует на целевой машине/сервере?
Применяются Font substitution rules. Текст может перераспределиться: могут измениться метрики, переносы и ширина, что важно для точного позиционирования.
Можно ли задать прозрачность или градиент заливки текста только для Portion, независимо от остального абзаца?
Да, цвет текста, заливка и прозрачность на уровне Portion могут отличаться от соседних фрагментов.