Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Размеры параграфа в объектной модели Word

10K
28 апреля 2006 года
dzeaman
14 / / 17.10.2005
Собственно, и весь вопрос: как бы попроще узнать высоту и ширину площади, которую занимает текст, набранный в ворде?

Соответствующий проперти найден не был. По опыту известно, что ворд расставляет переносы и, соответственно, разбивает текст на параграфы и страницы при открытии документа (могу ошибаться). Неужели придется высчитывать по ширине символа занимаемое пространство в длину, вручную расставлять переносы и считать высоту через размер шрифта и параметры спейсинга?

Заранее благодарен за любые комменты.
273
30 апреля 2006 года
3A3-968M
1.2K / / 22.12.2005
Вот так можно узнать ширину текста (на VB показываю):
Dim reallyWidth
With PageSetup
reallyWidth=PageWidth-(LeftMargin+RightMargin)
End With
PageSetup.LeftMargin и PageSetup.RightMargin показывают ширину границ. Узнать высоту набранного текста можно через PageSetup.Height и PageSetup.TopMargin, PageSetup.BottomMargin
10K
02 мая 2006 года
dzeaman
14 / / 17.10.2005
Так это ж вроде для всего текста на странице, а не для отдельного параграфа.

Для параграфа на готдотнет предложили такой выход:
 
Код:
byte[] emfData = (byte[])paragraph.Range.EnhMetaFileBits;
System.IO.MemoryStream ms = new System.IO.MemoryStream(emfData);
Metafile picture = new Metafile(ms);


Далее - используются проперти picture.Height и picture.Width.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог