Автоматизация локализации презентаций в Java

Изменение языка для презентации и текста в фигуре

Реализация вышеуказанных шагов показана ниже в примере.

Presentation pres = new Presentation("test.pptx");
try {
    IAutoShape shape = pres.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
    shape.addTextFrame("Text to apply spellcheck language");

    shape.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().setLanguageId("en-EN");

    pres.save("output.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Часто задаваемые вопросы

Вызывает ли идентификатор языка автоматический перевод текста?

Нет. Language ID в Aspose.Slides хранит язык для проверки орфографии и грамматики, но не переводит и не изменяет содержимое текста. Это метаданные, которые PowerPoint использует для проверки.

Влияет ли идентификатор языка на переносы и разбиение строк при рендеринге?

В Aspose.Slides language ID используется для проверки. Качество переноса и перенаправления строк в основном зависит от наличия соответствующих шрифтов и настроек разметки/переносов для системы письма. Чтобы обеспечить правильный рендеринг, сделайте необходимые шрифты доступными, настройте правила замены шрифтов, и/или встраивание шрифтов в презентацию.

Можно ли задать разные языки в одном абзаце?

Да. Language ID применяется на уровне части текста, поэтому в одном абзаце можно смешивать несколько языков с разными настройками проверки.