Вставка изображений с помощью взаимодействия (C#) в PowerPoint
Кто-нибудь может мне помочь? Я пытаюсь вставить изображения в PowerPoint, используя этот код:
PPT.Shape sheetShape = slides[slideIndex].Shapes[shapeName];
...
slides[slideIndex].Shapes.AddPicture(fileName, MsoTriState.msoFalse, MsoTriState.msoTrue, sheetShape.Left, sheetShape.Top, sheetShape.Height, sheetShape.Width);
моя проблема в том, что он сдвигает вставленную картинку, как: https://i.imgur.com/Ia2MVbk.png
Так что оба имеют одинаковую позицию, но не совсем. Что я делаю неправильно?
Спасибо.
1 ответ
Так как ответа до сих пор нет, я должен ответить сам.
Проблема с диаграммами, которые я хотел вставить, заключалась в том, что они были повернуты раньше (экспортировать из Excel в качестве изображения, затем повернуть), но PowerPoint действует так, как будто они не повернуты, поэтому они имеют неправильный размер и положение. Но потом я подумал, что должна быть возможность вращать их в powerpoint, а не раньше. И это все. Поэтому я решил свою проблему, не экспортируя диаграммы из Excel, а перехватывая их непосредственно из Excel, а затем поворачивая их в PowerPoint.
Вот как это выглядит для меня сейчас:
chart.CopyPicture();
PPT.ShapeRange sr = slides[slideIndex].Shapes.PasteSpecial();
sr.Rotation = 90;
sr.Left = sheetShape.Left+30;
sr.Top = sheetShape.Top;
sr.Width = sheetShape.Width;
sr.Height = sheetShape.Height;
sheetShape.Delete();
Надеюсь, это поможет, если кто-то еще получил проблему.