Статьи из блога

Статьи из блога

Как найти картинку в документе по ее замещающему тексту

Не уверен, что многие из вас пользуются предоставляемой редактором Word возможностью добавлять к вставляемой в документ картинке замещающий текст. Такой текст нужен для последующей публикации документа в сети Интернет (после сохранения документа в формате web-страницы). В случае недоступности картинки на сайте пользователь увидит замещающий текст.

 

Казалось бы, зачем нужен этот замещающий текст, если документ используется исключительно на локальном компьютере и просматривается (редактируется) только в редакторе Word? Расскажу свой случай, может быть кому-то пригодится.

 

Где-то ранней весной я редактировал руководство пользователя для одной автоматизированной системы. Потом пришлось отложить этот документ и заняться другими делами. Прошло два месяца и я захотел продолжить работу над обновлением руководства пользователя. Но на беду, закладки мои в этом документе пропали и я не помнил, в каком месте документа я прекратил работу. Помню, что я заменял устаревшие скриншоты.

 

Я открыл папку проекта и отсортировал все файлы в папке по дате. Последним отредактированным файлом была картинка с определенным именем файла. Значит, надо найти в документе то место, где вставлена эта картинка. Но как это сделать, если в трехсотстраничном руководстве несколько сотен скриншотов?

 

Вот здесь и пригодился замещающий текст у графических объектов. Я всегда, когда вставляю в документ скриншот, на вкладке замещающего текста пишу имя файла этого скриншота. Это помогает в случаях, когда теряются связи в документе, а картинку нужно обновить (заменить). Тогда достаточно просмотреть имя файла и заменить его на новую версию.

 

Вручную перебирать сотни картинок и просматривать у них замещающий текст было нереально, поэтому я написал небольшой макрос, который ищет нужный мне текст у каждого скриншота. Буквально через 10 секунд работы макроса я нашел искомую картинку и продолжил редактирование документа. Код макроса привожу ниже.

Важно: макрос работает только с картинками, но не с автофигурами.

Напомню, что под картинками понимаются графические объекты, созданные в других приложениях и вставленные в документ. А автофигуры (или рисунки) - это графические объекты, которые созданы непосредственно в самом редакторе Word.

Sub searchAltTextPicture()
'Поиск и выделение картинки с определенным замещающим текстом
Dim i As Integer
Dim altext As String
altext = "vkladka_journal_soveschany.gif" 'имя файла картинки, которую требуется найти в документе
For i = 0 To ActiveDocument.InlineShapes.Count
   If ActiveDocument.InlineShapes(i).AlternativeText = altext Then
      ActiveDocument.InlineShapes.Item(i).Select
   End If
Next i
End Sub

 

Чтобы добавить к картинке замещающий текст, выделите нужный скриншот, щелкните правой кнопкой мыши и выберите из контекстного меню команду Формат рисунка. Откроется одноименное диалоговое окно:

 

Диалоговое окно Формат рисунка

 

Перейдите на вкладку Веб и в поле Замещающий текст введите имя файла скриншота. Закройте окно.

 

Теперь вы подстрахованы на случай потери связей в документе, когда нужно найти определенную картинку в документе.

twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru rutvit.ru myspace.com technorati.com digg.com friendfeed.com pikabu.ru blogger.com liveinternet.ru livejournal.ru memori.ru google.com bobrdobr.ru mister-wong.ru yahoo.com yandex.ru del.icio.us

Еще записи по вопросам использования Microsoft Word:

Комментариев: 2

  1. My.Own.Word
    22.06.2008 в 14:12 | #1

    А почему бы вместо включения картинок непосредственно в документ не хранить их отдельно:

    Insert Pictire:

    [x] Link to File

    [ ] Save with Document

    При этом, на мой взляд, значительно возрастает удобство работы - ведь синхронизация картинок происходит автоматически при правке рисунков во внешнем приложении, да и размер документа остается небольшим, что весьма положительно сказывается на стабильности Word'а :)

    Что касается переносимости - то при вставке рисунков подобным образом Word замечательно понимает относительные пути. При необходимости можно поправить поле INCLUDEPICTURE по SHIFT+F9...

  2. 22.06.2008 в 14:32 | #2

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

Оставьте комментарий!

(обязательно)

^ Наверх