Управление доступностью презентаций в Java

Введение

Альтернативный текст помогает людям, использующим вспомогательные технологии, понять смысл изображений, диаграмм и других информативных фигур. В этой статье объясняется, как считывать и обновлять заголовки и описания альтернативного текста с помощью Aspose.Slides for Java, как различать описания доступности и имена фигур, используемые в коде, а также как проверить, помечена ли фигура как декоративная.

Эти возможности поддерживают доступность презентаций, но не гарантируют её. Порядок чтения, контраст цветов, читаемость текста и другие требования к доступности также требуют проверки.

Управление заголовками и описаниями альтернативного текста

Используйте альтернативный текст, чтобы объяснить смысл изображений, диаграмм и других информативных фигур людям, которые их не видят. Ниже перечисленные методы и содержимое служат разным целям:

Метод или содержимое Назначение
getAlternativeTextTitle Краткий заголовок альтернативного описания.
getAlternativeText Осмысленное описание содержимого или назначения фигуры в контексте слайда.
getName Имя фигуры, которое код может использовать для поиска конкретной фигуры в презентации.
Visible text Содержимое, отображаемое на слайде, например текст фигуры или заголовок и подписи диаграммы. Обновление альтернативного текста не изменяет это содержимое.

Когда презентация используется повторно в качестве шаблона, код может находить фигуру по имени, возвращаемому getName, прежде чем обновлять её. Это имя служит другой цели, чем альтернативный текст, который объясняет, что визуальный элемент сообщает читателю. Поиск по имени позволяет авторам улучшать или переводить описания без изменения способа нахождения фигуры кодом. Имена можно изменять и они не гарантированно уникальны, поэтому проверьте, что имя соответствует нужной фигуре; см. Identify and Find Shapes.

Следующий пример предполагает наличие файла input.pptx с изображением входа в офис в качестве первой фигуры на первом слайде. Изображение не должно быть помечено как декоративное. Пример считывает и выводит текущие заголовок и описание альтернативного текста, обновляет оба значения и сохраняет презентацию как output.pptx. Подгоните формулировки под реальное изображение и передаваемую им информацию.

import com.aspose.slides.*;

Presentation presentation = new Presentation("input.pptx");
try {
    IShape shape = presentation.getSlides().get_Item(0).getShapes().get_Item(0);

    System.out.println("Alternative text title: " + shape.getAlternativeTextTitle());
    System.out.println("Alternative text description: " + shape.getAlternativeText());

    shape.setAlternativeTextTitle("Office entrance");
    shape.setAlternativeText("The office entrance has a wheelchair ramp to the right of the steps.");

    presentation.save("output.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Добавление лишь альтернативного текста не гарантирует доступность презентации или соответствие стандартам доступности. Проверьте описания на точность и уместность, а также проверьте порядок чтения, контраст цветов, читаемость текста и другие требования к доступности. Информативные визуальные элементы не должны быть помечены как декоративные; в следующем разделе показано, как проверить isDecorative.

Пометить как декоративное

Пометка как декоративное флагирует чисто ornamentальные визуальные элементы, чтобы программные читалки их пропускали, уменьшив «шум» и сфокусировав внимание на содержимом. Применяйте её к фонам, украшениям и разделителям — никогда к диаграммам, иконкам или изображениям, передающим информацию. Aspose.Slides предоставляет этот флаг для обнаружения и проверки, что позволяет автоматизировать проверки доступности и очистку.

Mark as Decorative

Ниже приведён пример кода, показывающий, как определить, помечена ли фигура как декоративная.

import com.aspose.slides.*;

Presentation presentation = new Presentation("sample.pptx");
try {
    IShape shape = presentation.getSlides().get_Item(0).getShapes().get_Item(0);
    System.out.println("Is shape decorative: " + shape.isDecorative());
} finally {
    presentation.dispose();
}

Вопросы и ответы

Что следует поместить в заголовок и описание альтернативного текста?

Используйте короткий заголовок для идентификации темы и описание, чтобы объяснить информацию, которую визуальный элемент передаёт в контексте слайда. Для диаграммы опишите соответствующую тенденцию или сравнение, а не просто указывайте «диаграмма».

Следует ли использовать альтернативный текст для поиска фигур в шаблоне?

Предпочтительно находить фигуру по имени, возвращаемому getName, и проверять, что это ожидаемая фигура. Альтернативный текст может быть отредактирован или переведён, что может нарушить код, ищущий точное описание; см. Identify and Find Shapes.

Когда фигуру следует помечать как декоративную?

Используйте флаг декоративности для визуальных элементов, не содержащих информации, например декоративных украшений. Изображения и диаграммы, передающие смысл, требуют соответствующего описания вместо пометки их как декоративных.

Делает ли добавление альтернативного текста презентацию полностью доступной?

Нет. Альтернативный текст покрывает лишь часть требований к доступности. Также необходимо проверять порядок чтения, контраст цветов, читаемость текста и другие применимые требования; установка только этих свойств не обеспечивает соответствие.