Работа с изображениями На главную страницу

Работа с графическими изображениями, увы, не является сильной стороной Access'а. Сохранение картинок как объектов OLE проблематично, так как требует установки набора соответствующих приложений везде, где предполагается использовать такие данные, а элемент управления типа "рисунок" не имеет привязки к полю данных.

И всё же последний вариант предпочтительнее, так как обеспечивает независимость от других программ. Кроме того, для большинства применений достаточно форматов GIF и JPEG, которые туда без труда импортируются. Дальше их можно сохранить в двоичное поле с помощью метода AppendChunk и извлечь обратно методом GetChunk. Только вот при импорте все графические форматы Access преобразует в DIB, а это - тот же BMP. Комментарии, думаю, излишни.

Выходов тут два: либо сжимать то, что получилось с помощью каких-нибудь методов архивации, либо напрямую помещать содержимое графического файла в поле, а уже потом импортировать в элемент управления типа "рисунок" через временный файл. Первый метод не пригоден для полноцветных изображений фотографического качества, которые обычно встречаются в формате JPEG. Второй работает слишком медленно с большими изображениями высокого разрешения, так как каждый раз заново импортирует графический файл в картинку. И оба они неприменимы для ленточных форм.

Не очень оптимистично, однако в качестве примера реализации второго способа всё же привожу простенькую базу (Access'97), большинство решений которой навеяно материалами с сайта www.lebans.com.

© SSY 2001 На главную страницу