Экспортируйте форму PowerPoint с реальным размером

Я должен экспортировать форму, отобранную в PowerPoint как png изображение с реальным размером формы. Я использую этот код для экспорта:

var args = new object[] { filePath, Microsoft.Office.Interop.PowerPoint.PpShapeFormat.ppShapeFormatPNG, 0, 0, Microsoft.Office.Interop.PowerPoint.PpExportMode.ppRelativeToSlide };
objectShape.GetType().InvokeMember("Export", System.Reflection.BindingFlags.InvokeMethod, null, objectShape, args);//Export to file on disk

На диске I имеют изображение с неправильными пропорциями и Высотой/Шириной. Я попробовал различные ценности параметра перечисления PpExportMode, и на всякий случай я изменил увеличение PP на 100%. Но у меня нет правильных результатов. Для основанных на прямоугольнике форм это работает правильно. Но например для звезд или реального размера форм выноски не равняется свойствам Высоты/Ширины формы. Это происходит из-за небольшого языка у основания формы.

enter image description here

Кто-либо знает, как экспортировать эти формы правильно?

2
добавлено отредактировано
Просмотры: 1
de
Где сделал вы находите этот броский метод: objectShape. GetType ().InvokeMember ("Экспорт", ? документация говорит, чтобы использовать Форму. Экспорт (PathName, Фильтр, ScaleWidth, ScaleHeight, ExportMode)
добавлено автор Jeremy Thompson, источник
Я отредактировал ваш титул. Пожалуйста, посмотрите,"Вопросы должны включать “признаки” в свои названия?", где согласие "нет, они не должны".
добавлено автор John Saunders, источник
Джереми - Моя Microsoft. Офис. Interop. PowerPoint. У формы нет Экспортного метода. Так I' ve нашел эту статью связь
добавлено автор Aleksey Lavrov, источник
Джереми - Моя Microsoft. Офис. Interop. PowerPoint. У формы нет Экспортного метода. Так I' ve нашел эту статью связь
добавлено автор Aleksey Lavrov, источник
Джереми - Моя Microsoft. Офис. Interop. PowerPoint. У формы нет Экспортного метода. Так I' ve нашел эту статью связь
добавлено автор Aleksey Lavrov, источник
Джон - Спасибо за исправление.
добавлено автор Aleksey Lavrov, источник
Джон - Спасибо за исправление.
добавлено автор Aleksey Lavrov, источник
Джон - Спасибо за исправление.
добавлено автор Aleksey Lavrov, источник
Джон - Спасибо за исправление.
добавлено автор Aleksey Lavrov, источник

4 ответы

Проверьте.Adjustments формы. Недвижимость графа.

If Adjustments.Count > 0 Then
For x = 1 to Adjustments.Count
  '  Store the value of Adjustments(x) somewhere
  '  so you can reset it later
  .Adjustments(x) = 0
Next

Теперь экспортируйте форму, и затем перезагрузите ее регуляторы предыдущих ценностей.

Или просто скопируйте форму, установите ее регуляторы 0, экспортируйте ее, затем удалите ее.

1
добавлено
Стив, большое спасибо за ваш ответ. Это дало мне направление поиска. Я должен экспортировать форму со всеми регуляторами, таким образом, мое изображение должно посмотреть тождественно с оригинальной формой (со всеми регуляторами) с 100%-м увеличением PP.
добавлено автор Aleksey Lavrov, источник

Проверьте.Adjustments формы. Недвижимость графа.

If Adjustments.Count > 0 Then
For x = 1 to Adjustments.Count
  '  Store the value of Adjustments(x) somewhere
  '  so you can reset it later
  .Adjustments(x) = 0
Next

Теперь экспортируйте форму, и затем перезагрузите ее регуляторы предыдущих ценностей.

Или просто скопируйте форму, установите ее регуляторы 0, экспортируйте ее, затем удалите ее.

1
добавлено
Стив, большое спасибо за ваш ответ. Это дало мне направление поиска. Я должен экспортировать форму со всеми регуляторами, таким образом, мое изображение должно посмотреть тождественно с оригинальной формой (со всеми регуляторами) с 100%-м увеличением PP.
добавлено автор Aleksey Lavrov, источник

Проверьте.Adjustments формы. Недвижимость графа.

If Adjustments.Count > 0 Then
For x = 1 to Adjustments.Count
  '  Store the value of Adjustments(x) somewhere
  '  so you can reset it later
  .Adjustments(x) = 0
Next

Теперь экспортируйте форму, и затем перезагрузите ее регуляторы предыдущих ценностей.

Или просто скопируйте форму, установите ее регуляторы 0, экспортируйте ее, затем удалите ее.

1
добавлено
Стив, большое спасибо за ваш ответ. Это дало мне направление поиска. Я должен экспортировать форму со всеми регуляторами, таким образом, мое изображение должно посмотреть тождественно с оригинальной формой (со всеми регуляторами) с 100%-м увеличением PP.
добавлено автор Aleksey Lavrov, источник

Проверьте.Adjustments формы. Недвижимость графа.

If Adjustments.Count > 0 Then
For x = 1 to Adjustments.Count
  '  Store the value of Adjustments(x) somewhere
  '  so you can reset it later
  .Adjustments(x) = 0
Next

Теперь экспортируйте форму, и затем перезагрузите ее регуляторы предыдущих ценностей.

Или просто скопируйте форму, установите ее регуляторы 0, экспортируйте ее, затем удалите ее.

1
добавлено
Стив, большое спасибо за ваш ответ. Это дало мне направление поиска. Я должен экспортировать форму со всеми регуляторами, таким образом, мое изображение должно посмотреть тождественно с оригинальной формой (со всеми регуляторами) с 100%-м увеличением PP.
добавлено автор Aleksey Lavrov, источник