All Forums
 Категория Visio
 Форум Вопросы и ответы
 Определить размер рисунка
Author Previous Topic Topic Next Topic  

Dray

1 Posts

Posted - 03/05/2007 :  11:58:46
Как программно, без группировки определить размер всего рисунка в Visio? Именно рисунка а не страницы.

mers

Russia
159 Posts

Posted - 03/05/2007 :  12:53:16
Здравствуйте.
Селектируете все объекты, сгруппируйте их и посмотрите размеры получившегося прямоугольника.
Это можно сделать как руками, так и програмно.
Go to Top of Page

Dray

1 Posts

Posted - 03/05/2007 :  13:13:21
Дело в том что при большом колличестве элементов на группировку уходит очень много времени. Так как узнавать размер приходится часто в цикле, то время на эту операцию критично. Хотелось бы уточнить - через группировку это единственный способ или есть другой - более быстрый.
Go to Top of Page

mers

Russia
159 Posts

Posted - 03/05/2007 :  14:27:32
Ой, извините, не обратил внимания что группировать нельзя.
Группировка пожалуй самый простой вариант.
Можете попробовать еще один. Хотя не уверен, что он сильно быстрее.

Page имеет свойство Shapes - коллекцию шейпов находящихся на данной странице. Перебор шейпов в этом случае очень быстр. Получение занчений PinX и PinY у шейпа тоже быстрая операция. Переберите все шейпы и получите наибольшие и наименьшие координаты соответсвенно, отсюда получите размеры вашего рисунка.
Go to Top of Page

mers

Russia
159 Posts

Posted - 03/05/2007 :  14:27:38
Ой, извините, не обратил внимания что группировать нельзя.
Группировка пожалуй самый простой вариант.
Можете попробовать еще один. Хотя не уверен, что он сильно быстрее.

Page имеет свойство Shapes - коллекцию шейпов находящихся на данной странице. Перебор шейпов в этом случае очень быстр. Получение занчений PinX и PinY у шейпа тоже быстрая операция. Переберите все шейпы и получите наибольшие и наименьшие координаты соответсвенно, отсюда получите размеры вашего рисунка.
Go to Top of Page

Dray

1 Posts

Posted - 03/05/2007 :  14:38:16
Спасибо за предложенный вариант. Буду смотреть, сравнивать.
Go to Top of Page

Dray

1 Posts

Posted - 03/06/2007 :  15:17:41
Перебор шейпов оказался гораздо быстрее чем группировка. Еще раз спасибо за ответ.
Go to Top of Page
  Previous Topic Topic Next Topic  
Данный сайт является архивом форума visio.artberg.ru, который был закрыт в связи с переходом на новую платформу visio.getbb.ru
Все материалы доступны только для чтения! Если у вас появились вопросы, или вы хотите что-то обсудить, связанное с Visio, обращайтесь на новый форум!
Архив был создан благодаря совместным усилиям Генадия Туманова @Tumanov (visio.artberg.ru), Александра ака @Surrogate (visio.getbb.ru), и Николая Белых @nbelyh (unmanagedvisio.com)