Как сделать вложение в access?
Поле Вложение Access (Attachment) можно использовать для хранения нескольких файлов в одном поле, причем в этом поле можно хранить файлы разных типов. Например, в таблице ТОВАР можно в поле с типом данных Вложение добавить несколько файлов со сведениями о товаре: сертификат происхождения, сертификат качества, инструкцию по эксплуатации, ции, фотографии, схемы и т. д.
Вкладывать файлы можно только в базы данных, созданные в приложении Access 2007/2010 в новом формате файла accdb.
Поле Вложение Access (Attachment) предлагается для хранения изображений и документов вместо типа данных Поле объекта OLE (OLE Object). Вложениям необходимо значительно меньше места для хранения и не требуется применения программ, называемых OLE-серверами.
В соответствии с правилами нормализации каждое поле в реляционной базе данных должно содержать только один элемент данных. В противном случае поиск данных будет затруднен или даже невозможен. Вложения нарушают правила разработки базы данных, поскольку в поле можно добавлять несколько файлов — элементов данных. Чтобы избежать этих нарушений, Access по мере добавления файлов вложения создает системные таблицы, которые неявно используются для нормализации данных.
Далее читаем про поле MEMO в Access.
Тип данных (Attachment) — это новый тип, появившийся в программе Access 2007. Он позволяет вставлять файлы в запись БД почти так же, как вы вкладываете файлы в
ваши сообщения электронной почты. Access хранит файлы, вставленные в поле типа как часть вашей таблицы, встроенную в файл вашей БД.
Тип данных хорошо подходит для вставки в запись изображения, короткого звукового файла или документа из другого приложения пакета Office, такого как Word или Excel. Вы можете создать таблицу People (люди) с изображением каждого человека, включенного в список контактов, или каталог изделий с изображением товаров, которые вы пролаете. В этом случае у данных типа — очевидные преимущества, поскольку они хранятся в файле вашей БД, и вы никогда не потеряете их след.
Но данные типа не так привлекательны в случае больших файлов или файлов, требующих частой корректировки. Если вы поместите часто корректируемый документ в БД Access, он не будет доступен для быстрого редактирования, печати и поиска. Вам придется запустить программу Access и найти соответствующую запись, прежде чем вы сможете открыть ваш документ. Если же нужно внести изменения, вы должны оставить программу Access открытой, чтобы она могла забрать измененный файл и вставить его снова в БД.
Предупреждение
Дважды подумайте, прежде чем связываться с вложенными файлами. Как вы уже знаете, объем, который может занимать БД Access, ограничен двумя гигабайтами. Если вы начнете сохранять большие файлы в ваших таблицах, то можете просто превысить его. Лучше хранить большие документы в отдельных файлах, а затем записывать имя файла в текстовое поле или поле с типом данных Гиперссылка (Hyperlink).
Применяя тип данных , убедитесь в том, что задано свойство поля Подпись (Caption), определяющее текст, который появляется в заголовке столбца для этого поля. (Часто для заголовка используется имя файла.) Если свойство не задано, в заголовке столбца отображается скрепка, но без текста.
На листе данных поле с типом данных легко узнать, т. к. рядом с ним расположена пиктограмма скрепки (рис. 2.17).
Рис. 2.17. Вложения помечаются пиктограммой скрепки и числом в скобках, сообщающим о количестве вложенных файлов. В данном примере все значения в поле Picture с типом данных пустые за исключением Count Chocula, у которого оно равно двум
Для вложения файла или просмотра списка вложенных файлов дважды щелкните кнопкой мыши пиктограмму скрепки. Вы увидите диалоговое окно Вложения (Attachments) — рис.2.18.
Рис. 2.18. В диалоговом окне Вложения показаны все файлы, связанные с вашим полем
Далее перечислены действия, которые можно выполнить с помощью окна Вложения (Attachments).
¦ Вставить новый вложенный файл. Щелкните мышью кнопку Добавить (Add). Затем найдите и укажите новый файл и нажмите кнопку ОК. Вы увидите новый файл в конце списка файлов.
¦ Удалить вложение файла. Выберите в списке нужный файл и щелкните мышью кнопку Удалить (Remove).
Сохранить копию вложенного файла. Выберите нужный вложенный файл, щелкните мышью кнопку Сохранить как (Save As) и затем укажите место на вашем компьютере для сохранения копии. Или щелкните мышью кнопку Сохранить все (Save All) для сохранения копий всех вложенных в это поле файлов. Если вы меняете данные копии, содержимое вложенного файла в вашей БД не меняется.
¦ Редактировать и просматривать вложенный файл. Выберите вложенный файл и щелкните мышью кнопку Открыть (Open). Программа Access скопирует вложенный файл во временную папку па вашем компьютере, ту, в которой сохраняется кэшируемая интернет-информация. Если вы сохраняете файл, Access отслеживает изменения, автоматически обновляет вложенный файл и затем удаляет временный файл. Если вы закроете окно Вложения (Attachments) до того, как закрыли файл, то Access предупреждает о том, что ваши корректировки не будут отражены в вашей БД. На рис. 2.19 показано, что происходит.
К сожалению, у типа данных мало параметров управления. Далее перечислены некоторые ограничения этого типа данных.
¦ Вы не можете ограничить количество разрешенных вложений файлов в поле типа . У всех полей этого типа практически нет ограничения на количество вложенных файлов (хотя вы не можете вложить два файла с одним и тем же именем).
§Вы также не можете ограничить типы файлов, предназначенных для вложения.
§Вы не можете ограничить и размер файлов, предназначенных для вложения.
Рис. 2.19. Вверху: в данном примере файл «The Story of the Count.doc» все еще открыт.
Если вы продолжите, то все изменения, которые вы вносите (или любые изменения, которые вы внесли к данному моменту и не сохранили), не будут отражены в БД.
Внизу: если программа Access замечает, что вы сохраняли ваш файл с тех пор, как открыли его впервые, она спрашивает вас о том, хотите ли вы обновить БД последней сохраненной версией файла. (Для того чтобы избежать подобных треволнений, вкладывайте только те файлы, которые вы не собираетесь редактировать.)
Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.
За время работы разработчиком Access набралась куча полезностей, которую считаю своим долгом выложить на Хабр. Многие из этих сниппетов находятся в сети, а некоторые находятся с трудом или безнадежно затеряны.
1. При работе с Access во время выполнения запроса возникают предупреждающие сообщения. Они довольно полезны во время отладки приложения, но для пользователей, как правило, не нужны. Отключить/включить их можно с помощью небольшого кода VBA:
Application.SetOption "Confirm Action Queries", 0 Application.SetOption "Confirm Document Deletions", 0 Application.SetOption "Confirm Record Changes", 0
Указав в виде параметра 0 для отключения и 1 для включения.
2. Для того, чтобы защитить базу данных от посторонних глаз и разграничить права доступа используется файл рабочей группы ( формата .MDW ). Путь к файлу рабочей группы можно указать вручную, но если в сети много пользователей, то гораздо удобнее иметь файлик Access с кнопкой, по нажатию которой отрабатывает одна строка кода, задающая путь к MDW:
Application.SetDefaultWorkgroupFile Path:="D:путь к файлуfile.MDW"
3. Не знаю, как бы я работал (наверное, работал бы так же, но гораздо медленнее), если бы не создал себе форму с поиском текста в содержимом запросов или форм. Очень часто необходимо производить какой-то рефакторинг или определять область применения таблицы или поля.
Для поиска по запросам поможет форма с кодом, который выполняет поиск в тексте запросов:
For i = 0 To CurrentDb.QueryDefs.Count - 1 If InStr(CurrentDb.QueryDefs(i).sql, strSearchWord) > 0 Then ' здесь можно организовать вывод на консоль или в текст CurrentDb.QueryDefs(i).Name End If Next Или можно пройтись только по всем полям запросов: For i = 0 To CurrentDb.QueryDefs.Count - 1 For j = 0 To CurrentDb.QueryDefs(I).Fields.Count ' и здесь можно организовать вывод на консоль или в текст CurrentDb.QueryDefs(i).Name Next Next
Для поиска по формам код немного объемнее:
Dim strSearchWord As String ' текст, который мы будем искать в формах strSearchWord=”цена” Dim oAO As object Dim frm As Form Dim ctrl As object For Each oAO In CurrentProject.AllForms DoCmd.OpenForm oAO.Name, acDesign Set frm = Forms(oAO.Name) For Each ctrl In frm.Controls Select Case ctrl.ControlType Case acTextBox, acComboBox, acListBox, acCheckBox ‘ поиск только по определенным контролам If InStr(1, ctrl.ControlSource & "", strSearchWord) Then ' здесь вывод на консоль или куда хотите frm.Name и ctrl.Name End If End Select Next DoCmd.Close acForm, oAO.Name, acSaveNo Next Set oAO = Nothing Set frm = Nothing Set ctrl = Nothing
4. Для того, чтобы сделать нашу работу чуть более солидной с точки зрения программирования и для возможности поиска ошибок при работе в режиме production на рабочей базе данных очень желательно добавить модуль VBA (tracing модуль) для записи происходящих событий в текстовый файл лога. Простая функция записи в текстовый файл будет очень полезна при отладке.
Sub Trace(ByVal txtinfo As String) On Error Resume Next MyFile = "D:" & "logfile.txt" fnum = FreeFile() Open MyFile For Append As fnum txtinfo = CStr(Now()) + " " + txtinfo Print #fnum, txtinfo Close #fnum End Sub
5. Этот код (из пункта 4) вполне можно вынести в отдельный файл базы данных Access и добавить во все существующие базы данных через References/Ссылки редактора VBA.
Если у вас имеется несколько файлов баз данных Access, то любой повторяющийся код можно вынести в отдельный файл. Единственное изменение, которое может быть необходимо сделать — в случае если в коде используется объект CurrentDb, то заменить его на CodeDb, дабы обращение шло к объектам той базы, которая используется в качестве хранителя общего кода.
6. Зачастую в запросах указывают в качестве параметра значение какого-либо поля открытой формы. Например, таким образом:
WHERE demotable.infonumber>Forms!Form1!Field25
Но иногда необходимо указать параметр непосредственно в самом запросе. Сделать это можно так:
PARAMETERS val Text ( 255 ), fldID Long; UPDATE demotable SET demofield = val WHERE =fldID;
И далее из кода Access задать эти параметры и выполнить запрос:
With CurrentDb.QueryDefs("demoquery") .Parameters("fldID") = 2 .Parameters("val") = "newvalue" .Execute End With
Альтернативой может быть создание модуля VBA и добавление в него глобальной переменной, а также функции, возвращающей эту переменную.
Global start_ID As Long Public Function get_global() As Long get_global = start_ID End Function
Перед запуском запроса необходимо задать значение глобальной переменной (можно задать при открытии основной формы):
start_ID=3 ' для примера задал значение глобальной переменной равное трем
И в самом запросе указать параметром название возвращающей значение функции:
SELECT * FROM demotable WHERE (demotable.infonumber>get_global());
6.1 Этот способ получения параметра запроса можно использовать для частичного ограничения доступа к информации таблицы (в случае использования рабочей группы). При загрузке формы в зависимости от текущего пользователя установим значение глобальной переменной:
Private Sub Form_Load() If (CurrentUser = "Buh") Then start_ID = 1 Else start_ID = 1000 End If End Sub
Далее установим запрет на просмотр и изменение таблицы demotable, а на запрос установим разрешение. Но так как запрос у нас использует таблицу, на которую нет прав, то данных он нам не вернет. Для того, чтобы он вернул данные необходимо к sql запроса добавить в конце
WITH OWNERACCESS OPTION
В результате пользователь Buh сможет иметь доступ ко всем строкам таблицы, а все остальные пользователи ко всем строкам за исключением первой 1000.
7. Для того, чтобы открыть форму из кода используется код:
DoCmd.OpenForm "FormName", View, "FilterName", "WhereCondition", DataMode, WindowMode, "OpenArgs"
В качестве «WhereCondition» можно указать условие, на какой записи формы необходимо её открыть (в случае, если форма привязана к данным). Указав, например, «ZakazID=56325», можно открыть форму именно со значением данных ZakazID равным 56325.
В качестве значения «OpenArgs» можно указать какие-либо параметры, которые на открываемой форме можно будет считать
в Private Sub Form_Load() с помощью Me.OpenArgs. Если необходимо передать несколько параметров, то можно передать их в виде текстовой строки, разделив символом. И далее в Private Sub Form_Load() разбить на части:
If Len(Me.OpenArgs) > 0 Then x = Split(Me.OpenArgs, "|") ' разрезаем параметры на массив строку, разделенную символом | param1 = x(0) param2 = x(1) param3 = x(2) End If
8. Многие забывают, что Access работает не только таблицами из файлов mdb/accdb, но и с таблицами других баз данных. Для экспорта уже существующих таблиц есть бесплатная утилита SQL Server Migration Assistant, хотя можно воспользоваться и встроенным функционалом или найти стороннее решение.
И напоследок небольшой хинт из разряда «Это знает каждый ребенок, но я вот этого не знал…»:
Знаете ли вы, что для того, чтобы при открытии файла Access не срабатывали макросы и не открывалась форма по умолчанию, необходимо держать нажатой клавишу Shift?
В Microsoft Access существует возможность вставки рисунков в формы и отчеты. Использование рисунков может улучшить внешний вид создаваемых форм и отчетов. Например, в отчеты можно включать логотип фирмы, а в форме предоставлять возможность просмотра не только данных о сотрудниках фирмы, но и их фотографий. Для вставки рисунков в формы и отчеты используются специальные элементы управления — свободная и присоединенная рамки объектов (Unbound Object Frame, Bound Object Frame), а также элемент управления Рисунок (Image).
Способ вставки рисунка зависит от того, как предполагается его использовать.
- Объект OLE можно хранить в одном из полей таблицы Access, например в таблице «Сотрудники» (Employee) базы данных «Борей» хранятся фотографии сотрудников. Можно в полях таблицы Access хранить также документы Word. В таком случае для отображения этих объектов в формах или отчетах следует использовать элемент управления Присоединенная рамка объекта (Bound Object Frame).
- Объекты OLE могут храниться не в таблицах Access, а прямо в форме или отчете. С помощью такого способа в форме или отчете можно, например, сохранить логотип фирмы. В этом случае для отображения объекта OLE следует использовать элемент управления Свободная рамка объекта (Unbound Object Frame) или Рисунок (Image).
- Можно также для добавления рисунка в форму или отчет использовать свойство Рисунок (Picture) этой формы или отчета. Обычно так поступают, когда требуется включить фоновый рисунок (подложку), занимающий часть окна или все окно формы или отчета.
Чтобы добавить фоновый рисунок в форму:
- Откройте форму в режиме Конструктора.
- В окне свойств формы на вкладке Макет (Format) найдите свойство Рисунок (Picture). В поле ввода этого свойства введите путь и имя файла рисунка. Для этого можно нажать кнопку Построителя и выбрать в окне Выбор рисунка (Insert Picture) необходимый файл рисунка (рис. 15.1).
Замечание
Несколько стандартных файлов для фоновых рисунков находятся в папке MICROSOFT OFFICEOFFICEBITMAPSSTYLES.
- Установите значение свойства Тип рисунка (Picture Type). Значений может быть два: Внедренный (Embedded) или Связанный (Linked). Если рисунок внедренный, он сохраняется в файле базы данных (mdb). Связанный рисунок хранится в отдельном файле на диске. О преимуществах и недостатках того и другого способа мы уже говорили выше. Если один и тот же рисунок вставляется во много форм или отчетов, то внедрение его приведет к «распуханию» файла mdb, т. к. храниться будет столько копий рисунка, сколько раз вы его внедряли. Если вы решите сделать его связанным, необходимо заботиться о том, чтобы его случайно не удалили или не переместили.
- С помощью следующих свойств настройте отображение фонового рисунка.
- Свойство Масштабы рисунка (Picture Size Mode) имеет три значения: Фрагмент (Clip), Вписать в рамку (Stretch), По размеру рамки (Zoom). Значение Фрагмент отображает рисунок в его исходном размере. Если размер рисунка превышает размер окна формы, то изображение рисунка обрезается. Значение Вписать в рамку изменяет размер рисунка так, чтобы он соответствовал окну формы. Использование данного значения может привести к искажению изображения рисунка. Значение По размеру рамки изменяет размер рисунка так, чтобы он соответствовал окну формы либо по ширине, либо по высоте. Использование данного значения не приведет ни к обрезанию рисунка, ни к искажению его пропорций.
Рис. 15.1. Диалоговое окно Выбор рисунка
- Если вставляется рисунок, занимающий не всю форму, свойство Выравнивание рисунка (Picture Alignment) позволяет определить положение его в форме: Сверху слева (Top Left), Сверху справа (Top Right), По центру (Center), Снизу слева (Bottom Left), Снизу справа (Bottom Right), По центру формы (Form Center).
- Свойство Мозаичное заполнение (Picture Tiling) позволяет выводить повторяющееся изображение рисунка.
Пример использования рисунка в качестве фона в форме приведен на рис. 15.2.
Аналогично вставляется фоновый рисунок в отчет. Пример использования рисунка в качестве фона в отчете приведен на рис. 15.3.
Рисунок может быть вставлен в форму и в виде элемента управления формы. Для этого можно использовать два типа элементов управления: Рисунок (Image) и Свободная рамка объекта (Unbound Object Frame).
Рис. 15.2. Использование фонового рисунка в форме Microsoft Access
Рис. 15.3. Фоновый рисунок в отчете Microsoft Access
Если не требуется прямое изменение рисунка в форме или отчете, то лучше использовать Рисунок (Picture) (форма будет работать быстрее). Если же предполагается часто изменять рисунок, нужно вставить его с помощью свободной рамки объекта.
Чтобы вставить элемент управления Рисунок (Image), необходимо:
- Открыть форму в режиме Конструктора формы или отчет в режиме Конструктора отчета.
- Нажать кнопку Рисунок (Image) на панели элементов (кнопка Мастера элементов должна быть нажата, чтобы запустился Мастер рисунков).
- Выбрать в форме или отчете место, в которое помещается рисунок, и щелкнуть на нем левой кнопкой мыши.
- В раскрывшемся окне Вставка рисунка (Insert Picture) выбрать имя файла, содержащего добавляемый рисунок, и нажать кнопку ОК. Будет создан элемент управления, в котором помещается рисунок (рис. 15.4).
- Установить значения свойств, которые влияют на то, как рисунок будет отображаться в форме или отчете. Эти свойства аналогичны соответствующим свойствам формы.
Рис. 15.4. Использование элемента Рисунок для вставки рисунка в форму
Чтобы вставить рисунок в форму или отчет с помощью свободной рамки объекта, необходимо:
- Открыть форму в режиме Конструктора формы или отчет в режиме Конструктора отчета.
- Нажать кнопку Свободная рамка объекта (Unbound Object Frame) на панели элементов.
- Выбрать в форме или отчете место для вставляемого объекта и щелкнуть на нем левой кнопкой мыши. Появится диалоговое окно мастера Вставка объекта (Insert Object). С помощью мастера можно вставить уже готовый рисунок из файла или сначала создать его в соответствующем приложении, а затем вставить. Поэтому дальнейшие шаги могут быть разными.
Если вам еще предстоит создать рисунок, проделайте следующие операции.
- В диалоговом окне Microsoft Access выбрать переключатель Создать новый (Create New), а затем в списке Тип объекта (Object Type) выбрать приложение, с помощью которого будет создаваться рисунок (рис. 15.5).
Рис. 15.5. Окно Microsoft Access, используемое для вставки рисунка с помощью свободной рамки объекта
- Объект может отображаться в виде значка — это удобно, когда он содержит сведения, которые не должны все время выводиться на экран. В таком случае нужно просто установить флажок В виде значка (Display as Icon).
- Нажать кнопку ОК.
- Создать объект с помощью приложения, выбранного на шаге 1.
- Закончив создание объекта, выбрать команду Закрыть (Close) в меню Файл (File) приложения, чтобы вернуться в Microsoft Access. Microsoft Access создает элемент управления Свободная рамка объекта (Unbound Object Frame) и отображает в ней рисунок.
Если же файл с рисунком у вас уже готов, чтобы вставить его прямо из файла, вам необходимо:
- В диалоговом окне Microsoft Access выбрать переключатель Создать из файла (Create From File), а затем указать путь к файлу. Если точный путь вы не знаете, используйте кнопку Обзор (Browse) (рис. 15.6).
Рис. 15.6. Окно Microsoft Access при вставке рисунка из файла в отчет с помощью свободной рамки объекта
Рис. 15.7. Вставка рисунка Microsoft Paint в отчет с помощью свободной рамки объекта
- Если нужно отобразить объект в виде значка, установить флажок В виде значка (Display As Icon).
- Для нахождения связи с объектом установить флажок Связь (Link). Если флажок сброшен (по умолчанию), объект будет внедрен.
- Нажать кнопку ОК.
Пример вставки рисунка, созданного с использованием Microsoft Paint, в форму с помощью свободной рамки объекта приведен на рис. 15.7.
После вставки объекта можно изменять его размеры и пропорции с помощью свойства Установка размеров (Size Mode). В большинстве случаев изменения в свободный объект могут вноситься в режиме Конструктора формы или отчета. Для того чтобы иметь возможность изменять объект в режиме формы, необходимо задать для свойства Доступ (Enabled) свободной рамки объекта значение Да (Yes), а для свойства Блокировка (Locked) — значение Нет (No). Чтобы отредактировать объект, дважды щелкните на нем мышью. Для этого только необходимо, чтобы на вашем компьютере было установлено приложение, в котором может редактироваться файл данного типа. Пример редактирования внедренного точечного рисунка представлен на рис. 15.8.
Рис. 15.8. Пример редактирования точечного рисунка с помощью Microsoft Paint
Для того чтобы выйти из режима редактирования, достаточно щелкнуть мышью за пределами рисунка.
В отличие от других элементов управления в форме, которые связаны с записями в таблице-источнике, рисунок в свободной рамке объекта не меняется при перемещении по записям в форме — он связан с самой формой, а не с данными, которые отображаются в форме. Рисунки, которые хранятся в записях таблицы, отображаются в форме с помощью присоединенной рамки объекта.
Для хранения рисунков и других объектов OLE в таблицах Access используется специальный тип поля: Объект OLE (OLE Object). Элемент управления Присоединенная рамка объекта (Bound Object Frame) создается одним из стандартных способов:
- перемещением с помощью мыши нужного поля из списка полей таблицы-источника. В этом случае будет сразу создан элемент управления, связанный с полем в таблице;
- с помощью кнопки Присоединенная рамка объекта (Bound Object Frame) на панели элементов. В данном случае будет создан элемент управления, для которого нужно сразу установить свойство Данные (RecordSource) — имя поля, содержащего объект OLE (рис. 15.9).
Рис. 15.9. Создание присоединенной рамки объекта в режиме Формы
Вставить рисунок в поле таблицы можно как в таблице, открытой в режиме Таблицы, так и в форме. Для этого нужно:
- Открыть таблицу в режиме Таблицы или форму в режиме Формы.
- Перейти на запись, в которую требуется вставить рисунок, и выбрать поле объекта OLE.
- Выполнить команду Объект (Object) из меню Вставка (Insert).
- В диалоговом окне Microsoft Access (см. рис. 15.5) выбрать переключатель Создать новый (Create New), а затем в списке Тип объекта (Object Type) выбрать тип приложения, в котором будет создаваться объект. Если файл с рисунком уже готов, то нужно выбрать переключатель Создать из файла (Create From File), a затем указать путь к файлу.
- Для того чтобы отобразить объект в виде значка, установить флажок В виде значка (Display As Icon).
- Нажать кнопку ОК.
- Если вы создаете новый рисунок, то нужно создать его с помощью приложения выбранного на шаге 4.
- Закончив создание объекта, выбрать команду Закрыть (Close) в меню Файл (File) приложения для возвращения в Microsoft Access.
Рисунок будет вставлен в запись в таблице. При этом в режиме Формы рисунок или иной объект автоматически будут отображаться на экране. В режиме Таблицы будет отображаться только тип объекта, например Растровый рисунок.
Вставка графических файлов происходит либо напрямую, либо при помощи отдельных графических фильтров. Эти фильтры устанавливаются при инсталляции Microsoft Access. Для вставки файлов формата Enhanced Metafile (EMF), точечных рисунков Windows (BMP, RLE, DIB), метафайлов Windows (WMF) и значков (ICO) графический фильтр не требуется. Однако такие фильтры необходимы для вставки всех остальных файлов графических.форматов, перечисленных ниже:
AutoCAD Format 2-D (DXF) Computer Graphics Metafile (CGM)
CorelDRAW (CDR) Encapsulated PostScript (EPS)
Graphics Interchange Format (GIF) JPEG File Interchange Format (JPG)
Kodak Photo CD (PCD) Micrografx Designer/Draw (DRW)
PC Paintbrush (PCX) Portable Network Graphics (PNG)
Tagged Image File Format (TIFF) Targa (TGA)
WordPerfect Graphics (WPG) HG Graphics Language (HGL, PLT) Macintosh PICT (PCT)