Блокировка разблокировки фигур в PowerPoint PPT на Java

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

Библиотека Java для блокировки фигур в PowerPoint PPT

Чтобы заблокировать и разблокировать презентации PowerPoint, мы будем использовать Aspose.Slides for Java. Это многофункциональная библиотека Java для создания презентационных документов и управления ими. Вы можете либо скачать библиотеку, либо установить ее, используя следующую зависимость в pom.xml.

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>23.7</version>
    <classifier>jdk16</classifier>
</dependency>

Блокировка фигур в PowerPoint PPT на Java

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

Aspose.Slides for Java классифицирует фигуры PowerPoint по следующим типам:

  • Автоматическая форма
  • Форма группы
  • Соединитель
  • Фоторамка
  • Графические объекты

Давайте теперь посмотрим, как заблокировать фигуры в PowerPoint PPT на Java.

  • Сначала загрузите файл PPT/PPTX, используя класс Presentation.
  • Затем получите слайды в презентации с помощью метода Presentation.getSlides().
  • Для каждого слайда получите доступ к его формам с помощью метода ISlide.getShapes().
  • Для каждой фигуры в коллекции выполните следующие шаги:
    • Проверьте тип формы.
    • Используйте соответствующий замок в соответствии с типом формы.
  • Наконец, сохраните презентацию с помощью метода Presentation.save(String, SaveFormat).

В следующем примере кода показано, как заблокировать фигуры в PowerPoint PPT с помощью Java.

try {
    //Загрузить файл презентации
    Presentation pTemplate = new Presentation("presentation.pptx");

    //Объект ISlide для доступа к слайдам в презентации
    ISlide slide = pTemplate.getSlides().get_Item(0);

    //Объект IShape для хранения временных фигур
    IShape shape;

    //Просмотрите все слайды в презентации
   for (int slideCount = 0; slideCount < pTemplate.getSlides().size(); slideCount++) {
        slide = pTemplate.getSlides().get_Item(slideCount);

        //Пройдитесь по всем фигурам на слайдах
       for (int count = 0; count < slide.getShapes().size(); count++) {
            shape = slide.getShapes().get_Item(count);

            //если форма является автоматической формой
            if (shape instanceof IAutoShape) {
                //Приведение типа к автоматической форме и получение блокировки автоматической формы
                IAutoShape Ashp = (IAutoShape) shape;
                IAutoShapeLock AutoShapeLock = (IAutoShapeLock) Ashp.getShapeLock();

                //Применение замков формы
                AutoShapeLock.setPositionLocked(true);
                AutoShapeLock.setSelectLocked(true);
                AutoShapeLock.setSizeLocked(true);
            }

            //если форма является формой группы
            else if (shape instanceof IGroupShape) {
                //Приведение типа к форме группы и получение блокировки формы группы
                IGroupShape Group = (IGroupShape) shape;
                IGroupShapeLock groupShapeLock = (IGroupShapeLock) Group.getShapeLock();

                //Применение замков формы
                groupShapeLock.setGroupingLocked(true);
                groupShapeLock.setPositionLocked(true);
                groupShapeLock.setSelectLocked(true);
                groupShapeLock.setSizeLocked(true);
            }

            //если форма является соединителем
            else if (shape instanceof IConnector) {
                //Приведение типа к форме соединителя и получение блокировки формы соединителя
                IConnector Conn = (IConnector) shape;
                IConnectorLock ConnLock = Conn.getShapeLock();

                //Применение замков формы
                ConnLock.setPositionMove(true);
                ConnLock.setSelectLocked(true);
                ConnLock.setSizeLocked(true);
            }

            //если форма фоторамка
            else if (shape instanceof IPictureFrame) {
                //Приведение типа к форме рамки изображения и получение блокировки формы рамки изображения
                IPictureFrame Pic = (IPictureFrame) shape;
                IPictureFrameLock PicLock = (IPictureFrameLock) Pic.getShapeLock();

                //Применение замков формы
                PicLock.setPositionLocked(true);
                PicLock.setSelectLocked(true);
                PicLock.setSizeLocked(true);
            }
        }
    }
    //Сохраните файл презентации
    pTemplate.save("ProtectedSample.pptx", SaveFormat.Pptx);
} catch (Exception e) {
}

Разблокировать фигуры PowerPoint в Java

Чтобы разблокировать заблокированные фигуры в PowerPoint PPT, вам нужно всего лишь отключить блокировки, установив для них значение false. Стоит отметить, что фигуры, заблокированные с помощью Aspose.Slides for Java, нельзя разблокировать с помощью какой-либо другой библиотеки.

В следующем примере кода показано, как разблокировать фигуры в файле PPTX в Java.

try {
    //Загрузить файл презентации
    Presentation pTemplate = new Presentation("presentation.pptx");

    //Объект ISlide для доступа к слайдам в презентации
    ISlide slide = pTemplate.getSlides().get_Item(0);

    //Объект IShape для хранения временных фигур
    IShape shape;

    //Просмотрите все слайды в презентации
   for (int slideCount = 0; slideCount < pTemplate.getSlides().size(); slideCount++) {
        slide = pTemplate.getSlides().get_Item(slideCount);

        //Пройдитесь по всем фигурам на слайдах
       for (int count = 0; count < slide.getShapes().size(); count++) {
            shape = slide.getShapes().get_Item(count);

            //если форма является автоматической формой
            if (shape instanceof IAutoShape) {
                //Приведение типа к автоматической форме и получение блокировки автоматической формы
                IAutoShape Ashp = (IAutoShape) shape;
                IAutoShapeLock AutoShapeLock = (IAutoShapeLock) Ashp.getShapeLock();

                //Разблокировать форму
                AutoShapeLock.setPositionLocked(false);
                AutoShapeLock.setSelectLocked(false);
                AutoShapeLock.setSizeLocked(false);
            }

            //если форма является формой группы
            else if (shape instanceof IGroupShape) {
                //Приведение типа к форме группы и получение блокировки формы группы
                IGroupShape Group = (IGroupShape) shape;
                IGroupShapeLock groupShapeLock = (IGroupShapeLock) Group.getShapeLock();

                //Разблокировать форму
                groupShapeLock.setGroupingLocked(false);
                groupShapeLock.setPositionLocked(false);
                groupShapeLock.setSelectLocked(false);
                groupShapeLock.setSizeLocked(false);
            }

            //если форма является соединителем
            else if (shape instanceof IConnector) {
                //Приведение типа к форме соединителя и получение блокировки формы соединителя
                IConnector Conn = (IConnector) shape;
                IConnectorLock ConnLock = Conn.getShapeLock();

                //Разблокировать форму
                ConnLock.setPositionMove(false);
                ConnLock.setSelectLocked(false);
                ConnLock.setSizeLocked(false);
            }

            //если форма фоторамка
            else if (shape instanceof IPictureFrame) {
                //Приведение типа к форме рамки изображения и получение блокировки формы рамки изображения
                IPictureFrame Pic = (IPictureFrame) shape;
                IPictureFrameLock PicLock = (IPictureFrameLock) Pic.getShapeLock();

                //Разблокировать форму
                PicLock.setPositionLocked(false);
                PicLock.setSelectLocked(false);
                PicLock.setSizeLocked(false);
            }
        }
    }
    //Сохраните файл презентации
    pTemplate.save("ProtectedSample.pptx", SaveFormat.Pptx);
} catch (Exception e) {
}

Блокировка фигур PPT бесплатно

Используйте Aspose.Slides for Java и заблокируйте формы PPT без ограничений оценки, получив бесплатную временную лицензию.

Онлайн-инструмент для блокировки презентаций PowerPoint

Воспользуйтесь нашим бесплатным онлайн-инструментом для блокировки презентаций PowerPoint. Не нужно регистрироваться или предоставлять какую-либо другую информацию.

Заключение

В этой статье вы узнали, как заблокировать фигуры в PowerPoint PPT на Java. Кроме того, вы видели, как программно разблокировать фигуры PPT. Вы можете легко использовать этот механизм блокировки формы для защиты презентаций PowerPoint.

Кроме того, вы можете узнать больше об Aspose.Slides for Java, посетив документацию. Кроме того, вы можете оставлять свои вопросы на нашем форуме.

Смотрите также