Как связать рисунок с документом ворд с помощью ole
Связанные или внедренные объекты используются для добавления всего или части файла, созданного одной из программ Office или любой программой, которая поддерживает связанные и внедренные объекты, в другой файл. Возможно создание нового внедренного объекта или внедренного или связанного объекта из существующего файла.
Основное отличие между связанными и внедренными объектами заключается в месте их хранения, а также способе обновления данных при их помещении в конечный файл.
Связанный объект. В случае со связанным объектом, обновление данных происходит только при изменении исходного файла. Связанные данные хранятся в исходном файле. Конечный файл хранит только сведения о местоположении исходного файла и отображает представление связанных данных. Рекомендуется использовать связанные объекты, если важен размер файла.
Внедренный объект. В случае с внедренным объектом, при изменении исходного файла конечный файл не изменится. Внедренные объекты становятся частью конечного файла и, будучи однажды вставленными, больше не являются частью исходного файла. Дважды щелкните внедренный объект для его открытия в программе, которая была использована для его создания.
Создание нового внедренного объекта
1. Щелкните в документе место, куда следует поместить внедренный объект.
2. Выберите команду Объект в меню Вставка, а затем — вкладку Создание.
3. В списке Тип объекта выберите тип создаваемого объекта.
4. Для отображения внедренного объекта в виде значка (это удобно, если документ предназначен для просмотра в электронном виде) установите флажок В виде значка.
· В списке Тип объекта отображаются только установленные на данном компьютере программы, поддерживающие связанные и внедренные объекты.
· При выборе типа объекта Лист Microsoft Excel в документ вставляется вся книга. В документе одновременно отображается только один лист. Для отображения другого листа дважды щелкните объект Microsoft Excel, а затем выберите нужный лист.
Создание связанного или внедренного объекта из существующего файла
1. Щелкните в документе место, куда следует поместить связанный или внедренный объект.
2. Выберите команду Объект в меню Вставка, а затем — вкладку Создание из файла.
3. В поле Имя файла введите имя файла, из которого будет создан связанный или внедренный объект, или нажмите кнопку Обзор для выбора файла из списка.
4. Для создания связанного объекта установите флажок Связь с файлом.
Если флажок Связь с файлом не был установлен, будет создан внедренный объект.
5. Для отображения связанного объекта в виде значка установите флажок В виде значка.
Примечание. Команду Объект (меню Вставка) нельзя использовать для вставки графических и некоторых других типов файлов. Для вставки графических файлов в Word предназначена команда Рисунок (меню Вставка).
Разрыв связи со связанным объектом
1. Выберите команду Связи в меню Правка.
2. В списке Исходный файл выберите связанный объект, связь с которым следует разорвать. Для выбора нескольких связанных объектов нажмите клавишу CTRL и, удерживая ее, выделите нужные связанные объекты.
Примечание. Для возобновления разорванной связи необходимо снова вставить связанный объект в документ.
- Выделите внедренный объект, который следует изменить.
- В меню Правка выберите команду Объектимя объекта (например, Объект Лист), а затем — команду Преобразовать.
- Для преобразования внедренного объекта к типу, указанному в списке Тип объекта, выберите Преобразовать в.
- Для открытия внедренного объекта как имеющего тип, указанный в списке Тип объекта, без изменения типа внедренного объекта выберите Активизировать как.
Кроме того, необходимо убедиться, что имеется достаточно памяти для запуска исходной программы. Если необходимо, закройте другие программы для освобождения памяти.
Если исходная программа запущена, убедитесь, что она не имеет открытых диалоговых окон. Перейдите в исходную программу и закройте все открытые диалоговые окна. Если это связанный объект, убедитесь, что исходный файл не открыт другим пользователем. Если это связанный объект, убедитесь, что редактируемый исходный файл имеет то же имя, какое у него было при создании связи, и он не был перемещен. Выделите связанный объект, а затем выберите команду Связи в меню Правка, чтобы увидеть имя исходного файла. Если исходный файл был переименован или перемещен, нажмите кнопку Сменить источник в диалоговом окне Связи для восстановления связей.
Отображение в документе внедренного объекта, а не его значка
- Выделите значок.
- В меню Правка выберите команду Объектимя объекта (например: Объект Лист), а затем — команду Преобразовать.
- Снимите флажок В виде значка.
Большие объекты в документе выглядят обрезанными
В некоторых случаях большие связанные и внедренные объекты обрезаются справа или снизу, даже если на странице достаточно места для размещения всего объекта. Это является следствием преобразования объекта в формат метафайла Windows (WMF), для которого определены максимально допустимые высота и ширина. Объекты, размеры которых превышают заданные максимальные размеры, выглядят обрезанными в документе Word.
Чтобы не допустить обрезки связанного или внедренного объекта, выполните одно из следующих действий:
- В исходной программе уменьшите размер данных, используемых для создания связанного или внедренного объекта. Например, уменьшите размеры шрифта и столбца.
- В Word вставьте (со связыванием или без) данные как форматированный или неформатированный текст. Для этого выберите команду Специальная вставка в меню Правка, выберите переключатель Вставить или Связать, а затем — параметр Текст в формате RTF или Неформатированный текст в списке Как.
Коды полей: LINK
Связывает данные, скопированные из другого приложения, с исходным файлом с помощью OLE. Word вставляет поле LINK при вставке данных, скопированных из другого приложения, в документ Word с помощью команды Специальная вставка (меню Правка).
Тип данных. Например, для диаграммы Microsoft Excel ИмяКласса имеет значение «ExcelChart». Word определяет эти сведения из исходного приложения.
Имя исходного файла. Если этот параметр включает длинное имя файла с пробелами, заключите его в кавычки. При задании пути используйте двойные обратные косые черты, например:
" C :\\ MSOffice \\ Excel \\ Rfp \\ Budget . xls "
Фрагмент указанного файла или элемента, например диапазон ячеек в книге Microsoft Excel или закладка в документе Word.
Автоматически обновляет поле LINK; если требуется использовать обновление по запросу, удалите этот ключ.
Вставляет связанный объект как точечный рисунок.
Сохраняет в документе не сам рисунок, а только ссылку на него. Таким образом можно уменьшить размер документа.
Вставляет связанный объект как текст в формате HTML.
Вставляет связанный объект как рисунок.
Вставляет связанный объект в формате RTF.
Вставляет связанный объект в текстовом формате.
Пример
В следующем примере в документ Word вставляется диапазон ячеек из рабочей книги Microsoft Excel. Ключ \a указывает, что обновление данных в документе Word должно осуществляться автоматически по мере их изменения в рабочей книге Microsoft Excel.
Коды полей: EMBED
Вставка объекта, созданного другим приложением, поддерживающим OLE. Word вставляет поле EMBED при вставке объектов (например, объектов Microsoft Excel) с помощью команды Объект (меню Вставка), команды Специальная вставка (меню Правка) или кнопки на панели инструментов.
Поле EMBED недоступно в диалоговом окне Поле (меню Вставка) и не может быть вставлено пользователем. Однако пользователю предоставляется возможность изменять ключи в существующем поле EMBED.
Имя приложения-контейнера, например Microsoft Excel. Этот элемент нельзя изменить.
Восстанавливает исходные размеры внедренного объекта при обновлении поля. Чтобы сохранить установленные размеры или обрезку внедренного объекта, удалите этот ключ (при наличии).
Применяет установленные ранее размеры или обрезку к обновленному внедренному объекту. Чтобы сохранить установленные размеры или обрезку внедренного объекта, не удаляйте этот ключ.
Часть 2. Работа с OLE-сервером Word.
Аналогично как и в части 1 - поставим целью из приложения (контроллера автоматизации) создать документ изображенный на Рис 2.1. Он также типичен с точки зрения созданя прикладных программ, использующих для вывода информации Word и содержит три наиболее часто используемых составных элемента: текстовую информацию, таблицу и диаграмму.
Путь создания данного документа - это шаги, которые позволят освоить работу с OLE сервером Word.
Рис 2.1 Итоговый документ, сформированный контроллером.
2.1 Получение доступа к интерфейсу Application для Word.
1. Включить в проект модули:
2. Определить - лучше глобально (для наглядности и удобства) - переменные, отражающие иерархию объектов Word
Приложение->Набор документов->документ->Набор парагрофов-> Параграф->Строки
3. создать объект автоматизации:
Чтение значения свойства.
2.2 Интерфейсы и константы
Список интерфейсов и констант получаем при просмотре библиотеки типов Microsoft Word Object Library, открыв например файл MSWord9.olb (или другой в зависимости от версии Microsoft Offise). О пользовании библиотекой см. Ч 1. P 1.2.
Аналогично будем пользоваться сохраненным файлом MSWord9.idl и использовать так называемый " хитрый метод ".
1. Запустить Word.
2. Сервис/Maкрос/Начать запись
3. Выполннить последовательность нужных действий.
4. Остановить запись
5. Вызвать Visual Basic (Alt+F11)
2.3 Создание рабочего документа
Создаем новое приложение (File/New/Application) и сохраним его файлы в директории по умолчанию (Projects) c именами по умолчанию Unit1.cpp, Unit1.h, Unit1.dfm, Project1.cpp, Project1.bpr. Имена на данном этапе не цель, хотя не возбраняется создать новую директорию и дать приложению и файлам подходящие имена.
Переменные соответствующие используемым в программе объектам, а именно:
определим сразу все и глобально или в файле Unit1.h (в разделе private:) или перед функциями в Unit1.cpp, хотя для данного этапа требуются пока не все переменные и можно определить нужные и локально.
Переменная fStart служит индикатором того, что сервер запущен.
Разместим на форме как и ранее три кнопки (из вкладки Standart компонент Button). Подписывать кнопки также не будем (сейчас это тоже не цель), но запомним, что по первой кнопке будем работать с таблицей, по второй с диаграммой, а по третьей закрывать сервер и приложение. Выполним два клика по Button1 и Button3, создаем таким образом обработчики события нажатия кнопки.
Вторяя кнопка таким образом служит для выхода из программы и закрытия сервера.
2.3.1 Вывод текстовой информации.
На первом этапе выводим текст. Пусть на данном этапе необходимо вывести следующее.
Рис 2.2 Вывод текстовой информации.
В обработчике нажатия первой кнопки начнем формировать код программы.
Создаем Объект Word.Application.
О использовании try catch мы также уже говорили в Ч 1. п 1.3.
Сделаем приложение видимым.
Переменной vVarDocs присваивается значение Documents - свойство объекта Word.Application, содержащее набор рабочих документов.
Добавляем созданный документ в приложение - для этого надо выполнить вызов, прототип которого:
Пре NewTemplate true создается шаблон при false - документ.
Правильно для конретной версии Word создание документа записать как:
Посколько расположение шаблонов хранится для всех установленных типов документов в реестре, то для создания простого документа можно использовать установки по умолчанию и достаточно записать:
Этот вызов можно повторить столько раз сколько будет создано рабочих документов. Следует обратить внимание, что обратиться к документу после его создания можно по свойству Item следующим образом:
Здесь n=1 соответствует последнему созданному документу, n-1 предпоследнему, и. т.д.
Создаем, например 2 документа:
Проверяем, что создано два документа:
Будем работать с первым документом, как ни странно его Item = 2:
Смотреть будем тоже на первый документ - т.е. активируем его:
Получаем свойство Paragraphs объекта документ:
Задаем текст для вывода:
Работаем с первым параграфом:
Заносим в него текст:
Выравниваем по правому краю (wdAlignParagraphRight - по правому краю), по причинам описанным выше используем константы вместо имен переменных:
Аналогично выводим следующие параграфы, в том числе и пустые:
Результат с достоинствами и недостатками видим на рисунке. Видно, что фон белый, шрифт не такой как хотельсь бы, включена линейка, проверка орфографии и т.п.
Работа с объектами в документе Word. Внешние объекты (OLE)
14 декабря 2020 mob25
На этом шаге мы рассмотрим использование OLE-объектов.
Коллекция Shapes позволяет добавлять в документ объекты, созданные и отображаемые с помощью программ-серверов OLE
(OLE-серверов). OLE-объекты в документах Word могут отображаться так же, как
они отображаются в приложениях, предназначенных для их создания и редактирования. Если приложение, сопоставленное объекту,
не является OLE-сервером, то объект отображается в виде ярлыка. Возможности Word в управлении
такими объектами скудны и ограничиваются заданием координат и размеров. Кроме того, можно активизировать данные объекты.
Чтобы управлять внутренними свойствами OLE-объекта, внедренного в документ, необходимо получить доступ к
объектам и методам этого объекта. OLE-объект создается с помощью метода AddOLEObject. Спецификация вызова
объекта включает ряд аргументов, передаваемых при вызове метода. Аргументами метода являются имя класса, имя
файла, признак связи с файлом на диске и т. д. Есть два синтаксиса вызова метода AddOLEObject. При этом
создаются объекты, имеющие некоторые отличия (вы можете разобраться с этими отличиями самостоятельно). Здесь
мы рассмотрим создание OLE-объекта и его активизацию в документе Word на примере следующего
приложения.
Текст этого приложения можно взять здесь (7,3 Кб).
Третья с конца процедура создает новый лист Excel, предпоследняя создает OLE-объект -
Paint.Picture и загружает реальный рисунок из файла.
Последняя процедура активизирует OLE-объект, что приводит к запуску программы - OLE-сервера.
Создадим несколько OLE-объектов различных типов как с помощью приведенного исходного текста, так и
обычным путем - как это делают пользователи. Запустим приложение и получим список OLE-объектов.
После чего мы можем выбрать и активизировать любой из них.
Результат работы приложения изображен на рисунке 1.
Рис.1. Результат работы приложения
Индивидуальный исследовательский проект по информатике "Технология OLE" направлен на изучение возможности использования программных средств технологии OLE и способов применения данной технологии в ОС Windows. Для испытания было рассмотрено применение OLE в программах MS Word и MS Excel.
Подробнее о проекте:
Творческая работа учащейся техникума о применении технологии MS Word и MS Excel направлена на получение автором общего представления о версиях и истории появления и развития технологии OLE. За основу учащаяся взяла такие версии технологии, как OLE 1.*, OLE 2.0 и ActiveX, и, изучив их, рассмотрела особенности их использования в программах текстовых документов.
Готовая творческая работа по информатике на тему "Технология OLE" демонстрирует этапы работы автора над использованием технологий OLE в работе с MS Word, где рассматривается вставка рисунка, вставка картинки, вставка фигуры, вставка снимка, вставка формулы, внедрение таблицы и внедрение объекта с помощью данной технологии. В рамках работы в MS Excel 2010 исследуется применение OLE в виде вставки надписи и внедрения объекта в файл.
Оглавление
Введение
1. Технология OLE.
2. Версии и история технологии.
2.1 OLE 1.*
2.2 OLE 2.0
2.3 ActiveX.
2.4. Применение OLEв MSWord 2010.
2.4.1 Вставка рисунка.
2.4.2 Вставка картинки.
2.4.3 Вставка фигуры.
2.4.4 Вставка диаграммы.
2.4.5 Вставка снимка.
2.4.6 Вставка формулы.
2.4.7 Внедрение таблицы.
2.4.8 Внедрение объекта.
2.5. Применение OLE в MSExcel 2010.
2.5.1 Вставка надписи.
2.5.2 Внедрение объекта (значок).
2.5.3 Внедрение объекта
Заключение
Литература
Введение
Все мы знаем о том, что при использовании современных редакторов можно воспользоваться сразу несколькими функциями, которые для данного редактора не являются основными. Так, например, установленная на персональном компьютере издательская система может послать некий текст на обработку в текстовый редактор, либо некоторое изображение в редактор изображений с помощью OLE-технологии.
Но не каждый пользователь задумывается, как на самом деле это работает. Здесь задействована особенная технология – OLE, позволяющая работать с данными, не предназначенными для данной программы, а также для работы и связи одной программы-процессора с другой программой-процессором.
Целью работы является: изучение возможности использования программных средств технологии OLE и способы применения данной технологии в ОС Windows.
Для достижения поставленной цели были сформулированы следующие задачи:
- изучить литературу по данной теме;
- изучить различные электронные источники по данной теме;
- изучить теоретические и практические сведениятехнологииOLE;
- определить среды применения данной технологии;
- научиться распознавать и отличать данную технологию;
- подвести итоги работы и сделать выводы.
Предметом исследования является: программная технология OLE.
Методы исследования: теоретический анализ источников, формализация, обобщение, описание.
Технология OLE
Технология OLE (ObjectLinkingandEmbedding) — этотехнология связывания и внедрения объектов в другие документы и объекты. Изначально, технология была разработана корпорацией Microsoft для своего продукта ОС Windows, а также для внедрения в отдельные дополнительные программы для ОС Windows, например, офисный пакет приложений MicrosoftOffice, где данная технология нашла более широкое свое применение.
OLE позволяет передавать часть работы от одной программы редактирования к другой и возвращать результаты этой работы.Например, несмотря на главную цель текстового процессора MicrosoftWord, - работа с текстовыми документами,при использовании данного текстового процессорав документе можно не только вводить данные, но и создавать таблицы, вставлять картинки, фотографии, часть элемента из другой программы MicrosoftOffice (например, таблицу из MicrosoftExcel) и т. д.
Основное преимущество использования OLE (кроме уменьшения размера файла) — в том, что она позволяет создать главный файл, картотеку функций, к которой обращается программа. Этот файл может оперировать данными из исходной программы, которые после обработки возвращаются в исходный документ.
Читайте также: