Автоматизация локализации презентаций в Java
Изменение языка для презентации и текста в фигуре
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд, используя его индекс.
- Добавьте к слайду объект IAutoShape типа Rectangle.
- Добавьте текст в TextFrame.
- Установка идентификатора языка для текста.
- Сохраните презентацию в файл PPTX.
Реализация вышеуказанных шагов показана ниже в примере.
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 применяется на уровне части текста, поэтому в одном абзаце можно смешивать несколько языков с разными настройками проверки.