Тема: Как распознать автоматический перенос?
Как с помощью макроса определить, что в слово добавлен автоматический перенос?
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Как с помощью макроса определить, что в слово добавлен автоматический перенос?
Просто предполагаю. Если конец слова совпадает с концом строки, то слово не перенесено:
?selection.Bookmarks("\line").Range.End
?selection.Bookmarks("\line").Range.Words.Last.end
Если конец слова совпадает с концом строки, то слово не перенесено
То, что часть слова на одной строке, а часть на другой, еще не значит, что вставлен автоперенос
Например:
- авропереносы просто отключены
- слова, в которых автоперенос не ставится никогда (числа, смешанные слова, несловарные…)
Для ясности, определю задачу так: поиск и замена автопереносов знаком «мягкий перенос» Chr(31).
Отредактировано Вождь (19.03.2010 06:58:27)
не понимаю. Естественно, автопереносы должны быть включены, чтобы их искать.
- слова, в которых автоперенос не ставится никогда (числа, смешанные слова, несловарные…)
Так ведь и слово будет на одной строке.
Я пробовал, автоперенос на слове никак не отражается, а вот мягкий перенос находится в самом слове.
Так ведь и слово будет на одной строке
Не всегда.
Если ширина параграфа, например, 1 см, то 99% слов будет в нескольких (двух, трех...) строках.
Еще можно нажать, например, клавишу с буквой "А" и удерживать ее с минуту. Получим длинное слово без автопереносов.
Отредактировано Вождь (19.03.2010 08:13:47)
Ну ты рассматриваешь какие-то паталогические случаи. Тогда, может проверять символ, которым заканчивается строка?
...паталогические случаи...
Ячейка таблицы - это обычный случай. А уж в ячейках ширина параграфа достаточно мала.
По-видимому, простого решения не существует. Я придумал два извращения:
1. Точный метод: сравниваем ширину последнего символа в строке, когда автопереносы включены и когда выключены.
2. Приблизительный метод: делаем кучу проверок вероятности автопереноса, начиная от "автопереносы включены"... "слово в нескольких строках" ... до "наличие слова в словаре переносов".
…1. Точный метод: сравниваем ширину последнего символа в строке, когда автопереносы включены и когда выключены…
На моноширинных шрифтах не сработает
На моноширинных шрифтах не сработает
Сработает. Шрифт не имеет значения. Расстановка автопереносов на ширину букв не влияет. Визуально символ (character) с автопереносом это "А-", а без "А", естественно первый всегда будет шире.
Кстати, я всегда знал, что области Selection и Selection.Range ведут себя по разному. Интересный результат получится если поставить курсор поближе к концу строки и запустить код:
MsgBox "Range = " & Selection.Range.Information(wdHorizontalPositionRelativeToTextBoundary) & vbLf & "Selection = " & Selection.Information(wdHorizontalPositionRelativeToTextBoundary)
Оказывается Selection шире Selection.Range
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Как распознать автоматический перенос?
Для всех, кто желает совершенствоваться, расти и не любит терять времени понапрасну, предлагаем замечательную шпаргалку по Ворду – форум Ворд Эксперт. На портале о Microsoft Office Word вы узнаете про: перенос таблицы из word в excel. Что приятно, это русский форум, очень теплый, там вы не найдете заумных слов и жутких сленговых терминов, в которых без Билла Гейтса не разберешься. На портале о Microsoft Office Word вы узнаете про: как сделать отступ от рамки до заголовка в ворде 2010. Все просто и понятно.
Заходя в дом - на форум, вы тут же оказываетесь в «прихожей» - разделе, где даются ответы на основные вопросы, как по самому Ворду, так и по устройству форума и сайта. Наш сайт о Microsoft Office Word даст ответ про: как закрепить рамку в word. Там же вам предложат почитать что-нибудь интересное (про Ворд, конечно, за этим вы и пришли).
А в «гостиной» вы сможете обсудить программу, вашу версию, ее настройки, особенности работы, форматирование и многое другое. Наш сайт о Microsoft Office Word даст ответ про: изменение диаграммы в ворде. Вас научат оптимизировать эксплуатацию Microsoft Word с помощью макросов. Это совсем не сложно.
В «столовой» форума подаются готовые блюда – оригинальные решения той либо иной проблемы, макросы и многое другое. На портале о Microsoft Office Word вы узнаете про: как установить отступ первой строки 1 см в microsoft. Если хотите заказать «экзотическое блюдо», добро пожаловать «на кухню» - раздел «заявки на разработку». На портале о Microsoft Office Word вы узнаете про: как подписать формулу в ворде 2007 справа. Оставьте в нем описание своей проблемы, и вам помогут.
Что такое «курилка» объяснять, наверно, никому не надо. На портале о Microsoft Office Word вы узнаете про: как писать ( печатать ) ноты в word. Заходите и сами все увидите. А пожелания можно оставлять в соответствующем разделе.