Копирование форм между презентациями PowerPoint 2007 вместе с их анимацией - PullRequest
1 голос
/ 05 октября 2010

Я программно копирую формы всего слайда в новый слайд в другой презентации, выполняя origShape.Copy, а затем newSlide.Shapes.Paste(). (скопировать / вставить весь слайд, к сожалению, здесь не вариант)

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

Я думал, что, возможно, после копирования всех фигур я перейду origSlide.TimeLine и скопирую каждый анимационный эффект в newSlide.TimeLine с соответствующими фигурами.

Есть ли способ копирования анимационных эффектов между фигурами без ручной настройки каждого параметра? (их много).

1 Ответ

0 голосов
/ 07 октября 2010

При копировании формы по форме на новый слайд, естественно, порядок анимации разрушается.Если бы мы имели, например, следующую последовательность анимации:

  1. Прямоугольник, летящий в
  2. Треугольник, летящий в
  3. Прямоугольник, летящий в

Исначала мы копируем прямоугольник, а затем треугольник на новый слайд, сначала мы получим анимацию прямоугольника, а затем треугольника.

Моя ошибка заключалась в попытке решить эту проблему с помощью Shape.AnimationSettings.

BEWARE OF SHAPE.ANIMATIONSETTINGS !!

Это свойство сохраняется только для обратной совместимости со старыми версиями PowerPoint.Если вы измените какое-либо из его полей, все анимации формы, кроме первого, получат АВТОМАТИЧЕСКИ УДАЛЕНО!

Итак, решение таково: скопируйте фигуру по фигуре на новый слайд (никакие анимации не теряются, просто неправильноприказал).Затем используйте Slide.TimeLine, чтобы просмотреть анимационные эффекты и правильно расположить их, используя Effect.MoveTo или Sequence.Clone и Effect.Delete.

...