2010-11-30 1 views
7

Я использую Delphi 7 и OpenPictureDialog для открытия/просмотра различных изображений. Это отлично работает при открытии BMP, JPG и т. Д .; однако, если я попытаюсь сделать то же самое с gif, я получаю следующую ошибку. Кто-нибудь понял, почему или исправить это?Delphi 7 GIF в картинке Диалог

благодаря

Colin

alt text

+2

Delphi 7 не поддерживает GIF изображений. Для получения дополнительной информации перейдите по этой ссылке http://delphi.about.com/od/graphics/a/delphigif.htm – Bharat

+0

@Bharat: Хорошо, сегодня Delphi делает. Но вернувшись в Delphi 7 дней, это было правдой. –

+0

@Andreas: Вы правы, я изменил свой комментарий – Bharat

ответ

9

Используйте это TGIFImage. Это оригинальный блок, который был пожертвован CodeGear в 2006 году. Он поддерживает Delphi7.

скопируйте GifImage.pas в свой путь проекта (из gifimaged2010b.zip), и добавьте в список использования;

вот и все

Это автоматически добавит GIF в фильтрах для openpicturedialog (* *)

+0

Есть ли способ использовать это, чтобы я мог показать Gif в openpicturedialog? – colin

+0

Не забудьте добавить GifImage в использование – VibeeshanRC

+0

Спасибо, что работает – colin

0

Delphi 7 просто не поддерживает GIF изображений. Это привело к количеству third-party components для чтения файлов GIF. Однако, с Delphi 2006 (IIRC), RTL/VCL может также читать GIF-файлы. Просто укажите GifImg в разделе uses. (На самом деле, с Delphi 2009, RTL/VCL также может читать PNG-файлы. И тогда нет никакой необходимости в поддержке GIF, потому что формат файла PNG превосходит практически все. Единственное, что поддерживается GIF, не поддерживается PNG является (низкое качество (1)) анимации.)

(1) GIF поддерживает только 256 цветов.

4

Просто используйте GraphicEx library Майк Lischke. Просто добавьте пару файлов в список использования, и ваше приложение изначально поддерживает GIF, TIFF, PNG и многие другие. Стандартный TImage будет работать с ними, а также TPictureDialog (наряду со всеми другими стандартными компонентами, использующими TGraphic - обратите внимание, что некоторые функции будут работать только во время выполнения).

2

Если вы используете наш бесплатный модуль syngdiplus, вы сразу получите поддержку изображений GIF, JPEG и TIFF, используя библиотеку gdiplus, доступную на каждой Windows с Windows XP. Он поддерживает загрузку и сохранение изображений и предварительный просмотр в TPictureDialog. И ваш размер exe увеличивается намного меньше, чем с GraphicEx или TGifImage.

Работы от Delphi 6 до Delphi XE.

И вы сможете нарисовать любые TCanvas с антиалиасификацией.

См http://synopse.info/forum/viewforum.php?id=4

Смежные вопросы