sonyps4.ru

Справочное руководство по Delphi - OLE.

Компонент TOleContainer позволяет поместить OLE-документ на поверхность формы. Наиболее часто используемыми свойствами этого компонента являются AutoActivate, определяющее, каким образом активизируется OLE-докумеит, State, определяющее состояние OLE-контейнера, и OleClassName, определяющее имя класса (CLSID) OLE-объекта, содержащегося в контейнере. Наиболее часто используются следующие методы этого компонента:

Ш InsertObjectDialog - выводит стандартное диалоговое окно Object для выбора типа документа или загрузки его из файла; ш CreateObject - создает OLE-объект; Я CreateObjectFromFile - создает OLE-объект на основе существующего файла, содержащего OLE-документ, и помещает его в OLE-контейнер;

В DestroyObject - уничтожает объект, содержащийся в OLE-контейнере.

Создадим простейшее приложение, иллюстрирующее использование компонента TOleContainer. С этой целью поместим на форму компонент TPanel со свойством Align, равным alClient, на него - компонент TOleContainer и главное меню (можно создать в нем пункты New object и Exit). Панель и меню нужны для отображения панелей инструментов и меню OLE-серверов, обслуживающих отображаемые в компоненте TOleContainer объекты. Если на форме, содержащей компонент TOleContainer, имеется меню, то меню сервера будет присоединено к меню приложения согласно правилам слияния меню, принятым в Windows. Если компонент TOleContainer помещен на компонент TPanel, последний будет отображать панель инструментов сервера (рис. 5.1).

Рис. 5.1. Форма с компонентом TOleContainer

Создадим обработчик события, связанный с выбором пункта меню New Object:

Procedure TForml.NewlClick(Sender: TObject); begin 01eContai nerl.InsertObjectDi alog: end:

Запустив приложение и щелкнув на кнопке, получим диалоговое окно Insert Object (рис. 5.2).


Рис. 5.2. Диалоговое окно вставки объекта

В списке, представленном в этом диалоговом окне, перечислены все серверы ОЕЕ-документов, зарегистрированные на данном компьютере. Можно выбрать один из них (например, Microsoft Excel Worksheet). Теперь после двойного щелчка на компоненте TOleContainer компонент TPanel будет содержать панель инструментов Microsoft Excel и їлавное меню этого приложения, а сам OLE-контейнер - новую рабочую книгу Excel (рис. 5.3).


Рис. 5.3. Активный объект в OLE-контейнере

Если тип объекта, отображаемого в OLE-контейнере, известен заранее, можно использовать метод CreateObject компонента TOleContainer:

Procedure TForml.NewExcelworksheetlClick(Sender: TObject). begin 01eContainerl.CreateObjectC"Excel.Sheet". False): end;

Второй параметр этого метода указывает, отображать ли в виде значка объект внутри OLE-контейнера.

ВНИМАНИЕ -

Хотя что в диалоговом окне Insert Object содержатся только имена серверов OLE-документов, отображать в подобных компонентах можно в принципе любые СОМ-серве-ры, обладающие пользовательским интерфейсом, в частности многие из элементов управления ActiveX. В случае если необходимо отобразить в OLE-коптейпсре пользовательский интерфейс СОМ-сервера, не являющегося сервером OLE-докумсп-тов, следует указать его идентификатор CLSID в качестве первого параметра метода CreateObject

Модифицируем приложение, добавив еще несколько пунктов меню (рис. 5.4). Создадим соответствующие обработчики событий:

Procedure TForml.ShowPropertieslClickCSender: TObject); begin if 01 eCOntainerl.01eObjectInterface <> nil then 01eContai nerl.ObjectProperti esDi alog else ShowMessage ("OleContainer is empty"); end; procedure TForml.PastespeciallClick(Sender: TObject). begin 01eContai nerl.PasteSpeci alDialog: end

Рис. 5.4. Меню приложения, использующего компонент TOIeContainer

Скомпилируем приложение и на этапе выполнения добавим какой-нибудь объект в OLE-контейнер. Выбрав команду Action Show Properties нашего приложения, получим стандартное диалоговое окно с описанием свойств OLE-объекта (рис. 5.5).


Рис. 5.5. Диалоговое окно с описанием свойств объекта

Поместив какие-либо данные в буфер обмена, выберем команду Action PasteSpecial нашего приложения и получим диалоговое окно специальной вставки объекта из буфера обмена Paste Special (рис. 5.6).


Рис. 5.6. Диалоговое окно специальной вставки

Выбрав тин вставляемого объекта в предложенном списке, мы можем поместить его в ОЬЕ-контейпер (рис. 5.7).


Рис. 5.7. Результат вставки объекта из буфера обмена

    OLE Automation технология компании Microsoft, позволяющая обращаться к COM объектам из интерпретаторов скриптовых языков, таких, как VBScript (на настоящий момент поддержка обращений к OA объектам есть в Windows версиях всех популярных… … Википедия

    команда OLE - Выводятся на экран при установке курсора на OLE объект и нажатии правой кнопки мыши. Тематики информационные технологии в целом EN verb …

    OLE (англ. Object Linking and Embedding, произносится как oh lay [олэй]) технология связывания и внедрения объектов в другие документы и объекты, разработанная корпорацией Майкрософт. В 1996 году Microsoft переименовала технологию в ActiveX … Википедия

    Объект в архитектуре Microsoft COM. Описание Моникер является неизменяемым объектом, инициализируемым строкой, и имеющим операцию «создать экземпляр объекта из сохраненных данных, которые находятся в месте, указанном данной строкой». Иными… … Википедия

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

    Класс языка: объектно ориентированное программирование Появился в: 1992 Автор(ы): Кристен Нюгорд, Ole Lehrmann Madsen, Birger Møller Pedersen и Bent Bruun Kristensen Типизация данных: строгая, статическая Основны … Википедия

    У этого термина существуют и другие значения, см. библиотека (значения). TLB (англ. Type Library библиотека типов) иерархическое хранилище информации о возможностях ActiveX сервера в OLE Automation. Библиотека типов одно из … Википедия

    - (обычно просто VBScript) скриптовый язык программирования, интерпретируемый компонентом Windows Script Host. Он широко используется при создании скриптов в операционных системах семейства Microsoft Windows. VBScript был создан компанией Microsoft … Википедия

    У этого термина существуют и другие значения, см. .NET. .NET Remoting компонент, созданный компанией Microsoft. API для межпроцессного взаимодействия. Реализация от Microsoft протокола SOAP (веб сервисы). Выпущен в 2002 году вместе с… … Википедия

    связывание и внедрение объектов - Технология фирмы Microsoft. Позволяет сочетать различные прикладные программы компоненты в среде Windows. Связывание и внедрение являются двумя способами включения программируемых объектов в составной документ. При связывании исходные данные… … Справочник технического переводчика

    Windows PowerShell … Википедия

Обзор

Основы OLE

Объект TOLEContainer

Пример OLE приложения

Сохранение OLE объекта в базе данных

  1. Обзор
  2. Из статьи Вы узнаете основные сведения об OLE, некоторые вещи относительно OLE 2 и OLE Automation. В статье рассказывается об использовании объекта TOLEContainer для построения OLE приложения в Delphi.
  3. Основы OLE
  4. Прежде, чем перейти к рассмотрению основ OLE, потребуется изучить терминологию.

    Аббревиатура OLE обозначает Objects Linked and Embedded (Присоединенные И Встроенные Объекты - ПИВО J ). Данные, разделяемые между приложениями называются OLE объектом. Приложение, которое может содержать OLE объекты, называют OLE контейнером (OLE Container). Приложение, данные из которого можно включить в OLE контейнер в виде OLE объекта, называют OLE сервером.

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

    Как следует из названия, OLE объекты можно либо присоединить к OLE контейнеру, либо включить в него. В первом случае данные будут храниться в файле на диске, любое приложение будет иметь доступ к этим данным и сможет вносить изменения. Во втором случае данные включаются в OLE контейнер и только он сможет просматривать и модифицировать эти данные.

    OLE является дальнейшим развитием идеи разделяемых между приложениями данных. Если с помощью DDE можно было работать с текстом, то OLE позволяет легко встроить в приложение обработку любых типов данных. Как и в случае с DDE, для правильной работы приложения-клиента (OLE контейнера) требуется наличие приложения OLE сервера. Каждый раз, когда в программе-клиенте пользователь обращается к OLE объекту с целью просмотра или редактирования данных (обычно двойной щелчок мышкой на объекте), запускается приложение-сервер, в котором и происходит работа с данными.

    В природе существует несколько видов OLE, отличающихся по способу активации OLE сервера. OLE версии 1 запускает сервер в отдельном окне. OLE 2 реализует то, что называется in-place activation and editing. В данном случае сервер запускается “внутри” приложения-клиента, модифицирует вид системного меню, линейки инструментов и др. Развитие идеи OLE привело к появлению OLE automation - приложение-клиент может выполнить часть кода сервера. Тип OLE объекта, помещенного в программу-клиент, определяется тем, какую версию OLE поддерживает сервер.

  5. Объект TOLEContainer
  6. Объект TOLEContainer находится на странице System Палитры Компонент и нужен для создания приложений OLE-контейнеров. TOLEContainer скрывает все сложности, связанные с внутренней организацией OLE и предоставляет программисту достаточно простой интерфейс. Построим простейшее приложение с использованием OLE объекта. Создайте новый проект и поместите на форму TOLEContainer, в Инспекторе Объектов дважды щелкните мышкой на свойство ObjClass или ObjDoc - появится стандартный диалог Windows “Insert Object” (см. рис.1)

    В этом диалоге есть список всех зарегистрированных в системе OLE-серверов (регистрация происходит при инсталляции программы). Тип OLE-объекта определяется как раз тем сервером, который Вы укажете. Если Вы создаете новый объект (Create New), то при нажатии кнопки OK запустится программа OLE-сервер, в которой и формируется новый объект. После выхода из программы-сервера новый OLE объект включается (embedded object) в программу. OLE объект можно создать используя уже имеющийся файл в формате одного из OLE-серверов. Для этого нужно выбрать пункт Create from File (см. рис.2)


    Выбранный объект можно как включить в приложение, так и присоединить, отметив пункт Link.

    Итак, давайте при создании нашего проекта создадим новый объект, выбрав для этого, например, Microsoft Word Document (рис.1). Нажмите OK и после того, как запустится MS Word, наберите там любой текст (“Это OLE-объект Microsoft Word document ”). Для завершения работы в меню есть специальный пункт “File|Close and Return to Form1” (Win’95+MS Word 7.0). Запустите проект, он будет выглядеть примерно так:

    Щелкните дважды мышкой на OLE-контейнер - запустится MS Word с документом из OLE-объекта, который можно редактировать, при этом все изменения сохраняются в OLE-объекте.

    Если во время дизайна Вы выбираете объект для включения в OLE-контейнер, то он полностью записывается в файл формы (FORM1.DFM) и в дальнейшем прикомпилируется к EXE файлу. В случае очень больших объектов это может привести во время дизайна к длительным паузам и даже к возникновению ошибки “Out of resource”. Поэтому рекомендуется большие объекты делать присоединенными (linked).

  7. Сохранение OLE объекта в базе данных

Иногда необходимо хранить OLE объекты не в файлах, а в базе данных (BLOB поле в таблице). Конечно, в данном случае OLE объект должен быть присоединенным (embedded) в целях переносимости. К сожалению, в стандартной поставке Delphi нет специального объекта типа TDBOLEContainer для данных целей, но OLE объект можно сохранять и восстанавливать с помощью методов SaveToStream и LoadFromStream. Например:

procedure TOLEForm.SaveOLE(Sender: TObject);

BlSt: TBlobStream;

begin

With Table1 do

BlSt:=TBlobStream.Create(BlobField(FieldByName("OLE")),

bmReadWrite);

OLEContainer.SaveToStream(BlSt as TStream);

BlSt.Free;

Библиотека OLE-объектов

OLE-объектом называется любой документ, сформированный с использованием технологии OLE (Object Linking and Embedding). Многие программные приложения, работающие под управлением Windows, поддерживают данную технологию и формируют документы, которые могут быть переданы другому программному приложению в качестве объекта. Примерами таких объектов являются: рисунок Painbrush, документ WinWord, рабочий лист Excel, формула Equation, картинка Clip Gallary.

Библиотекой OLE-объектов называется совокупность всех OLE-объектов, создаваемых Вами в процессе работы с конкретным НТЗ. Доступ к Библиотеке OLE-объектов осуществляется из основного окна Конструктора тестов или в МТЗ при нажатии командной кнопки "Добавить объект" или "Вставить объект".

За один сеанс обращения к OLE-Библиотеке можно создать или изменить несколько объектов. В дальнейшем, при формировании тестовых заданий Вам останется только выбрать нужный объект в качестве элемента задания.

Интерфейс Библиотеки OLE-объектов обеспечивает:

  • Просмотр OLE-объектов;
  • Ввод нового OLE-объекта;
  • Удаление OLE-объекта;
  • Модификацию OLE-объекта;
  • Копирование OLE-объекта;
  • Переход к конкретному OLE-объекту;
  • Изменение формы отображения OLE-объекта;
  • Отображение инструкции по работе с Библиотекой OLE-объектов.

При активизации Библиотеки OLE-объектов (осуществляется в МТЗ при выполнении функции "Вставить объект") открывается окно (Рис. 3), состоящее из поля просмотра, функционального меню и индикатора списка OLE-объектов.

Индикатор списка

Индикатор списка отображает общее количество OLE-объектов, порядковый номер представленного в поле просмотра объекта и его уникальный идентификационный номер (состоит из дефиса OLE- и числа, заключенного в фигурные скобки). Идентификационный номер объекта формируется автоматически, не изменяется и не присваивается вновь даже в случае удаления объекта, владеющего им. С помощью индикатора списка можно выполнять следующие операции: переход к началу списка, переход к предыдущему по списку объекту, переход к концу списка, переход к следующему по списку объекту.

Поле просмотра (также носит название "OLE-контейнер") предназначено для отображения выбранного объекта. При входе в Библиотеку OLE-объектов из основного окна Конструктора тестов выбранным является первый элемент из списка, а при входе из Мастера тестовых заданий выбранным является:

  • При вводе нового элемента ТЗ - первый из списка объектов;
  • При модификации элемента ТЗ - объект, отображаемый в окне просмотра МТЗ.

Находясь в среде OLE-библиотеки выбор объекта можно осуществить двумя способами:

Путем нажатия управляющих кнопок индикатора списка

Выполняя команду меню "Объект / Перейти к …" и указав уникальный номер OLE-объекта в списке библиотеки. Например, для выбора объекта, изображенного на рисунке необходимо ввести значение 25.

Выбранный элемент называется активным.

Формирование Библиотеки

Допустим, Вы имеете содержание тестовых заданий, предоставленных Вам автором.

Можно последовательно вводить тестовые задания, формируя объекты по мере необходимости.

Предварительно, до ввода тестовых заданий, Библиотека наполняется объектами, которые в дальнейшем могут быть использованы в качестве элементов тестовых заданий.

Одновременно используются оба вышеперечисленных способа. Часть объектов создается непосредственно в ходе формирования заданий, другая формируется вне Мастера тестовых заданий.

После окончательного формирования Накопителя тестовых заданий удалите неиспользуемые объекты в режиме диагностики НТЗ. “Лишние” объекты увеличивают размер базы данных НТЗ.

Создание нового объекта допустимо двумя способами:

Первый способ

Для создания нового объекта необходимо выбрать команду меню "Объект \ Новый", при этом открывается окно "Вставка объекта", где необходимо установить переключатель "Создать новый \ Создать из файла" в нужную Вам позицию.

Выбрав переключатель "Создать из файла" Вы можете задать имя файла одним из следующих способов:

  • написать в появившемся рядом окне полный путь файла с нужным объектом
  • нажать кнопку Обзор (Browse), при этом активизируется стандартное окно Windows для выбора файла.
  • до тех пор, пока Вы не выполнили конвертацию, выбранный файл не должен менять своего месторасположения;
  • любые изменения в файле повлекут автоматическое изменение и в OLE-объекте (при его активизации).

Нажмите кнопку ОК. При успешном внедрении выбранный Вами объект отображается в окне просмотра Библиотеки OLE-объектов.

Выполните команду меню "Вернуться" или дважды щелкните левой кнопкой мыши по отображению объекта.

Примечание. Если Вы используете связные объекты, то необходимо следить за тем, чтобы файлы не меняли своего расположения до момента конвертации НТЗ в asq-файл. После конвертации связь с объектом системой не отслеживается. Если Вы выбрали технологию использования связных файлов (что в некоторых случаях целесообразно) рекомендуем Вам держать все такие файлы в отдельном каталоге. При переносе НТЗ (файл с расширением ast) на другой компьютер не забывайте перенести и данный каталог.

При выборе переключателя "Создать новый" появляется окно с перечнем программных приложений, которые зарегистрированы на данном компьютере в каталоге \Windows\System или System32.

Сделайте выбор приложения, в котором будет создан новый объект. Нажмите кнопку "ОК".

Загрузится выбранное программное приложение, в котором Вы формируете объект.

После выхода из программного приложения Вы возвращаетесь в окно OLE-библиотеки. Выполните команду меню "Вернуться" или дважды щелкните левой кнопкой мыши по отображению объекта.

Созданный Вами объект должен отображаться в поле просмотра. Отсутствие изображения означает, что выбранное вами программное приложение не позволяет внедрить объект. Причины могут быть различны. Стабильное повторение такой ситуации с конкретным программным приложением означает, что данное приложение не может быть использовано для создания OLE-объекта. В некоторых случаях следует посоветоваться с системным программистом, так как причины некорректной обработки OLE-объектов могут быть обусловлены сбоями в работе операционной системы и приложений, установочными параметрами самих приложений.

Если со вставкой объекта ничего не получилось (к сожалению не каждый объект может быть вставлен), об этом Вы узнаете по чистому полю просмотра (OLE-контейнеру). Не стоит беспокоиться о пустых или неиспользованных объектах OLE-библиотеки. Их можно удалить в любое время.

Второй способ

Выбираете из OLE-Библиотеки объект, наиболее близкий по изображению и копируете его. В поле просмотра отображается созданная Вами копия объекта и указатель индикатора устанавливается на номер вновь созданного путем копирования объекта.

Выбираете команду "Изменить". Активизируется программное приложение, в среде которого Вы доводите изображение объекта до нужного Вам.

После выхода из программного приложения вы возвращаетесь в окно OLE-библиотеки. Выполните команду меню "Вернуться" или дважды щелкните левой кнопкой мыши по отображению объекта.

Замечание. Вы можете сократить количество операций, выполнив команду "Копировать и изменить".

Просмотр объектов

Последовательный просмотр всех объектов осуществляется при нажатии управляющих кнопок индикатора списка. При этом меняется содержимое поля просмотра.

Выборочный просмотр объекта возможен при выполнении команды меню "Объект / Перейти к". Вводить нужно уникальный идентификационный номер объекта без дефиса "OLE-", т.е. только цифровое значение, отображаемое в фигурных скобках.

Номер отображаемого в конкретный момент времени объекта указан на индикаторе списка.

Изменение существующего объекта

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

Выполните команду меню "Объект / Изменить" или дважды щелкните левой кнопкой мыши по отображению объекта. Открывается редактор, в котором был создан выбранный объект. Выполните необходимые изменения; порядок действий определяется средой редактирования. По окончании редактирования необходимо выйти из редактора (например, Word), не забыв сохранить изменения. После закрытия редактора Вы возвращаетесь в окно Библиотеки OLE-объектов. Доступна только команда меню Вернуться.

Выполните команду меню Вернуться или дважды щелкните левой кнопкой мыши по отображению объекта.

Технология OLE (Object Linking and Embedding) ― технология управления и обмена информацией между программным интерфейсом других приложений. Связывание и внедрение объектов (Object Linking and Embedding).
OLE позволяет создавать объекты (рисунки, чертежи и текст) в одном приложении, а затем отображать эти объекты в других приложениях. Например, при помощи технологии OLE можно создать диаграмму в электронной таблице, а затем отобразить ее в CorelDRAW. Объекты, помещенные в приложение, использующее OLE, называются OLE-объектами. Для того, чтобы технология OLE действовала, приложение, используемое для создания OLE-объекта, и приложение, в которое помещается OLE-объект, должны поддерживать режим OLE. CorelDRAW поддерживает все функции OLE, однако некоторые приложения поддерживают лишь часть этих функций.

Приложение-сервер и приложение-клиент
При использовании OLE в обмене информацией участвуют два приложения - приложение-сервер и приложение-клиент.
Приложение-сервер используется для создания и редактирования OLE-объектов (рисунков, чертежей, текстов). После того как объект создан, он помещается в приложение-клиент. Например, при создании диаграммы в электронной таблице и размещении ее в CorelDRAW при помощи OLE. В этом случае электронная таблица являются приложением-сервером, а CorelDRAW - приложением-клиентом. Некоторые приложения могут действовать и как серверные, и как клиентские, другие такой способностью не обладают. Например, CorelDRAW может быть и серверным, и клиентским приложением, в то же время, Corel PHOTO-PAINT может выступать только как приложение-сервер.

Связывание и внедрение
OLE-объекты могут связываться с приложениями клиента или внедряться в них. OLE-связанный объект подключается к отдельному файлу. Управление появлением OLE-объекта в приложении-клиенте осуществляется на основе информации, хранящейся во внешнем файле. Когда этот внешний файл изменяется в серверном приложении, OLE-объект соответствующим образом обновляется. Внедренный OLE-объект полностью содержится в файле приложения-клиента, поэтому он не связан с внешним файлом.

Буфер обмена
Буфер обмена представляет собой временную область памяти, используемую для хранения информации. Реализована возможность копирования в буфер обмена элемент или его часть из приложения-сервера, а затем размещения его в приложение-клиент. Этот элемент становится OLE-объектом. При простом копировании и вставке информации этот элемент становится OLE-внедренным объектом. При создании OLE-связанного объекта с помощью буфера обмена используется команда "Специальная вставка". При использовании буфера обмена вставляемый элемент не всегда становится OLE-объектом. Например, простой текст из текстового редактора ASCII становится при вставке просто текстом CorelDRAW. Для осуществления полного контроля над вставленными элементами следует пользоваться командой "Специальная вставка".

Буксировка
Буксировка представляет собой самый простой способ создания OLE-объекта. При помощи мыши можно выбрать элемент в приложении-сервере, разместить его в приложение-клиент, после чего он автоматически становится OLE-объектом. При обычной буксировке выделенного объекта он становится OLE-внедренным объектом. Если буксировка выделенного объекта будет осуществляться при нажатой клавише CTRL или SHIFT, он становится OLE-связанным объектом. При буксировке файлов в CorelDRAW с рабочего стола Windows 95, CorelDRAW, прежде чем создать OLE-связанный объект, попытается сначала их импортировать. Для увеличения возможностей контроля за процессом, нажмите при буксировке правую кнопку мыши для вызова контекстного меню. Это меню позволяет задать способ, с помощью которого указанные элементы будут помещены в документ.

Ограничения, накладываемые на использование OLE-объектов в CorelDRAW
В большинстве случаев редактировать OLE-объекты можно только при помощи приложения-сервера. На редактирование OLE-объекта непосредственно с помощью CorelDRAW наложены следующие ограничения: Объекты CorelDRAW нельзя вращать Если OLE-объект помещен в группу или в PowerClip, его можно вращать, однако, это может привести к непредвиденным последствиям и не рекомендуется делать. Наклонять клонировать к ним нельзя применить эффекты из меню "Эффекты", за исключением случаев работы с PowerClip соединять, объединять, осуществлять пересечение и исключение с другими объектами. Имеется ограниченное число способов изменения OLE-объекты, не прибегая к помощи приложения-сервера.
Над OLE-объектами можно производить следующие действия: изменять их размеры и перемещать копировать Копии связанных объектов соотносятся с тем же файлом, что и исходный объект. Помещать в контейнеры PowerClip импорт и экспорт файлов. Фильтры импорта и экспорта представляют собой трансляторы, которые обеспечивают согласование двунаправленной связи между приложениями.

Форматы файлов
Для хранения данных в компьютерных файлах, могут применяться различные системы. Используемая в данном файле система определяет его формат. Файлы различного типа, например, растровые, векторные, звуковые, текстовые и т.п., используют различные форматы. Формат можно часто определить по расширению, добавляемому к имени файла при его записи в указанном формате. Например, .CMX, .BMP, .DOC, .AVI, .TIF, и т.п. В приложениях Windows 95 в Проводнике или в диалоговых окнах, сходных с окном диалога Открытие изображения в Corel PHOTO-PAINT, для отображения различных форматов используются различные значки. Часто форматы файлов создаются специально для работы в определенных приложениях. Например, изображения, созданные в CorelDRAW хранятся в файлах с расширением.CDR. Другие форматы являются более общими, например, формат.TXT, который представляет собой файл ASCII, не связанный с конкретными приложениями.

Сжатие файлов
В целях экономии пространства на жестком диске файлы часто хранят в сжатых форматах. Как правило, чем сильнее сжат файл, тем дольше он записывается или считывается. Сжатие файлов бывает двух типов: с потерями и без. При сжатии без потерь все исходные данные в процессе сжатия и расширения сохраняются. Сжатие без потерь рекомендуется для хранения текста или числовых данных, например, электронных таблиц. В методах RLE, LZW и CCITT применяется техника сжатия без потерь. Сжатие с потерями обеспечивает более высокую степень уплотнения информации и, следовательно, может оказаться полезным, когда фактор экономии дискового пространства является критичным. При использовании этого типа сжатия происходит потеря некоторых исходных данных, однако если они не представляют интереса для пользователя, их потеря не окажет существенного влияния на конечные результаты работы. Метод JPEG использует технику сжатия с потерями и применяется главным образом для сжатия цветных и двухцветных изображений в оттенках серого. Отбрасываемая при сжатии информация не сказывается существенно на качестве изображения.

Глубина цвета
Глубина цвета (называемая также разрядностью цвета) определяет число цветов, которое поддерживает данный файл. 1-разрядный файл поддерживает два цвета (как правило, черный и белый), 2-разрядный файл - 4 цвета, 4-разрядный - 16 цветов, 8-разрядный - 256 цветов и 24-разрядный - 16 миллионов цветов.
Изображение в оттенках серого содержится в 8-разрядном файле, дающем 256 градаций между белым и черным. Чем большую глубину цвета поддерживает файл, тем больше места он займет на жестком диске. Часто глубину цвета можно задавать при сохранении или экспорте файла. Если исходное изображение использует лишь несколько цветов, то сохранение его при более высокой глубине цвета (например, от 16 до 256 цветов) даст изображение очень близкое по цвету к исходному. В то же время, если исходное многоцветное изображение будет преобразовано с использованием меньшей глубины цвета (например, при преобразовании 24-разрядного файла в файл, поддерживающий 256 цветов), то файл создаст цветовую палитру и будет использовать комбинации ее цветов для моделирования цветов исходного изображения. Цвета этой палитры будут зависеть от цветов исходного изображения.
Различные приложения поддерживают разную глубину цвета. В то же время некоторые форматы поддерживают определенное количество цветов. При выборе формата, в котором будет храниться файл, следует учитывать все цветовые ограничения, которые накладываются этим форматом, а также и приложением, использующим этот файл.
Примечания. Дополнительную информацию по форматам конкретных файлов, содержащую технические замечания по их использованию можно получить в разделе оперативной справочной системы, посвященном вопросам технической поддержки. Формат файла, который поддерживает большое количество цветов, не обязательно должен поддерживать глубину всех цветов, лежащую ниже его максимальной разрядности цвета. Например, формат может поддерживать 24-разрядный цвет, но при этом не поддерживать черного и белого. В любом случае при обмене информацией с другим приложением, необходимо убедиться в наличии нужного фильтра. При выборочной установке приложения Corel необходимо добавить к списку активных фильтров нужный фильтр.

Диспетчер фильтров
Диспетчер фильтров Corel содержит фильтры форматов файла, которые поддерживаются всеми приложениями Corel. Если при работе в CorelDRAW требуется открыть файл в формате, отличном от.CDR или.CMX (исходные форматы файлов CorelDRAW), диспетчер файлов оттранслирует эти файлы таким образом, что программа сможет их открыть. При необходимости сохранения изображения в формате, отличном от.CDR или.CMX, диспетчер фильтров предварительно преобразует файл в нужный формат.

Импорт и открытие файлов
Приложения Corel поддерживают различные форматы файлов, но для каждого конкретного приложения только один является собственным. Исключением является CorelDRAW, где осуществляется поддержка двух исходных форматов (.CDR и.CMX). При необходимости загрузки файла, имеющего какой-либо другой формат, его следует импортировать или открыть при помощи фильтра.

Экспорт и сохранение файлов
При необходимости сохранения файла в несобственном формате приложения, его следует экспортировать или сохранить в нужном формате. Команды "Экспорт" и "Сохранить" как находятся в меню "Файл". При вызове любой из этих команд открывается диалоговое окно, в котором следует выбрать дисковод и папку. Необходимо ввести имя файла и выбрать его тип в окне списка "Тип файла".

Литература
1. Inside OLE 2-(2e) by Kraig Brockschmidt (Reviewed May 1995).



Загрузка...