Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: Алексей (IdeaSoft) от 30-11-2016, 12:57:28

Название: Отследить переход таблицы на другой лист
Отправлено: Алексей (IdeaSoft) от 30-11-2016, 12:57:28
Подскажите, как проверить переход таблицы на другой лист
Контролировать число строк не помогает, т.к.
высота строки может быть переменной

У меня такая идея.
Сделал пока так. Суммирую высоты всех строк и контролирую переход на следующий лист,
сравнивая с заданную высоту с высотой всех строк.
Для контроля N-листов можно просто поделить ЗАДАННУЮ ВЫСОТУ / СУММУ ВЫСОТ СТРОК

Может у объекта таблицы есть свойство, которое возвращает количество постраничных фрагментов?

(https://s17.postimg.org/lgo56nfor/Tabl_List.png) (https://postimg.org/image/lgo56nfor/)
Название: Re: Отследить переход таблицы на другой лист
Отправлено: Александр Ривилис от 30-11-2016, 18:15:59
Выложи сам чертеж с таблицей - гляну. Есть пару идей, но не буду пока их озвучивать.
Название: Re: Отследить переход таблицы на другой лист
Отправлено: Алексей (IdeaSoft) от 30-11-2016, 23:23:50
Прикрепляю файл спецификации.
Идея алгоритма простая.
Дан шаблон спецификации максимально загруженного варианта проектного решения.
 
Я заполняю поля где нужно, те поля, которые остались незаполненными
просто удаляю.
И в результате удаления записей таблица может занять только 1 лист, а не 2
Это влияет на нумерацию листов в проекте.

В шаблоне применим шрифт GOST 2.304 type A, но я думаю он не понадобится для решения этой задачи.

Название: Re: Отследить переход таблицы на другой лист
Отправлено: Александр Ривилис от 30-11-2016, 23:35:22
Посмотри на картинку:
(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F194549%2F7842324.7%2F0_14630e_36090d38_orig.png&hash=9ba53a6abd1c02a1ff34f2fe2a271dbd)

По ней можно сделать вывод, что количество листов будет равно трём, так как в два листа чуть чуть не влезаем: 50236/24898 = 2.017
Название: Re: Отследить переход таблицы на другой лист
Отправлено: Александр Ривилис от 30-11-2016, 23:38:42
И в результате удаления записей таблица может занять только 1 лист, а не 2
У меня три:
(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F196736%2F7842324.7%2F0_14630f_81c04ee_orig.png&hash=c128ceac9717278e228658d101e996e6)


Название: Re: Отследить переход таблицы на другой лист
Отправлено: Алексей (IdeaSoft) от 30-11-2016, 23:44:55
У меня три:
Ну вообщем то да может быть и больше трех
если выбрать другой шрифт и размер шрифта.
Просто шрифт GOST type A  он более плотный и у меня только 2 листа.
 
Вообщем можно не заниматься подсчетом сумм
высот строк, а просто поделить высоту таблицы Height на Extens.
Название: Re: Отследить переход таблицы на другой лист
Отправлено: Александр Ривилис от 01-12-2016, 00:38:04
а просто поделить высоту таблицы Height на Extens.
И округлить вверх до целого.