Мне нужно определить положение изображений в PPTX
(OpenXML slideXX.xml
) файлах. Мы выяснили большинство вещей (a:off
, a:chOff
, a:chOff
и a:chExt
понятны). Если у нас есть документ со всеми видами группировки, это хорошо работает, и мы можем определить точное положение каждого содержащегося "pic"
объекта.
Тем не менее, мы сталкиваемся с проблемами, когда происходит вращение (не математика для поворота точки вокруг центра, которая проверяется и проверяется дважды). Если вращается только один пик-узел, это легко, и мы получаем правильное положение и угол. Однако, когда мы начинаем вращать группы, у нас возникают проблемы с определением правильных положений.
Может ли кто-нибудь указать порядок, в котором нам нужно вычислить баллы, и какую точку нам нужно учитывать (centers
, (x,y)
)? Нужно ли работать сверху вниз (group1 -> group2 -> pic
) или снизу вверх (pic -> group2 -> group1
)? Все ли мы сглаживаем, как вращение работает с разгруппировкой / сглаживанием?
Мой пример прост:
- слайд с 4-мя одинаковыми изображениями (для простоты каждое изображение размером
200x100
, выстроенное в квадрат 400x200
, вверху слева, вверху справа, внизу слева и внизу справа)
- Поверните
"bottom-right"
изображение 45
градусов, сгруппируйте его с левым нижним изображением. Также сгруппируйте два верхних изображения и, наконец, сгруппируйте обе группы вместе.
- Затем поверните последнюю группу также на
45
градусов (что позволяет повернуть повернутое изображение на 90 градусов, а остальные три 45
градусов). скриншот слайда
Я не могу найти правильный порядок работы в дереве XML и в каком порядке мне нужно применить ротацию.
Буду признателен за любую помощь: хорошее объяснение, ясный пример или фрагмент (псевдо) -кода), который указывает мне правильное направление.