Математический текст
Contents
[
Hide
]
В этой статье показано, как работать с фигурами, содержащими математический текст, и форматировать уравнения с использованием Aspose.Slides for Node.js via Java.
Добавить математический текст
Создайте математическую фигуру, содержащую дробь и формулу Пифагора.
function addMathText() {
let presentation = new aspose.slides.Presentation();
try {
let slide = presentation.getSlides().get_Item(0);
// Добавьте математическую форму на слайд.
let mathShape = slide.getShapes().addMathShape(0, 0, 720, 150);
// Получите доступ к математическому абзацу.
let paragraph = mathShape.getTextFrame().getParagraphs().get_Item(0);
let textPortion = paragraph.getPortions().get_Item(0);
let mathParagraph = textPortion.getMathParagraph();
// Добавьте простую дробь: x / y.
let fraction = new aspose.slides.MathematicalText("x").divide("y");
mathParagraph.add(new aspose.slides.MathBlock(fraction));
// Добавьте уравнение: c² = a² + b².
let mathBlock = new aspose.slides.MathematicalText("c")
.setSuperscript("2")
.join("=")
.join(new aspose.slides.MathematicalText("a").setSuperscript("2"))
.join("+")
.join(new aspose.slides.MathematicalText("b").setSuperscript("2"));
mathParagraph.add(mathBlock);
presentation.save("math_text.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
Доступ к математическому тексту
Найдите фигуру, содержащую математический абзац на слайде.
function accessMathText() {
let presentation = new aspose.slides.Presentation("math_text.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// Найдите первую форму, содержащую математический абзац.
let mathShape = null;
for (let shapeIndex = 0; shapeIndex < slide.getShapes().size(); shapeIndex++) {
let shape = slide.getShapes().get_Item(shapeIndex);
if (java.instanceOf(shape, "com.aspose.slides.IAutoShape")) {
let autoShape = shape;
let textFrame = autoShape.getTextFrame();
if (textFrame != null) {
let hasMath = false;
for (let paragraphIndex = 0; paragraphIndex < textFrame.getParagraphs().getCount(); paragraphIndex++) {
let paragraph = textFrame.getParagraphs().get_Item(paragraphIndex);
for (let portionIndex = 0; portionIndex < paragraph.getPortions().getCount(); portionIndex++) {
let portion = paragraph.getPortions().get_Item(portionIndex);
if (java.instanceOf(portion, "com.aspose.slides.MathPortion")) {
hasMath = true;
break;
}
}
if (hasMath) break;
}
if (hasMath) {
mathShape = autoShape;
break;
}
}
}
}
if (mathShape != null) {
let paragraph = mathShape.getTextFrame().getParagraphs().get_Item(0);
let textPortion = paragraph.getPortions().get_Item(0);
let mathParagraph = textPortion.getMathParagraph();
// ...
}
} finally {
presentation.dispose();
}
}
Удалить математический текст
Удалите математическую фигуру со слайда.
function removeMathText() {
let presentation = new aspose.slides.Presentation("math_text.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// Предположим, что первая форма является математической фигурой.
let mathShape = slide.getShapes().get_Item(0);
// Удалите математическую форму.
slide.getShapes().remove(mathShape);
presentation.save("math_text_removed.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
Форматировать математический текст
Установите свойства шрифта для математической части.
function formatMathText() {
let presentation = new aspose.slides.Presentation("math_text.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// Предположим, что первая форма является математической фигурой.
let mathShape = slide.getShapes().get_Item(0);
let paragraph = mathShape.getTextFrame().getParagraphs().get_Item(0);
let textPortion = paragraph.getPortions().get_Item(0);
textPortion.getPortionFormat().setFontHeight(20);
presentation.save("math_text_formatted.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}