Здесь есть два способа:
- Использовать любое программное обеспечение, предоставляемое Windows
- Придерживайтесь нативных компонентов Delphi
Мне лично нравитсячтобы сохранить мой источник "все Delphi".Когда дело доходит до показа изображений, Delphi обладает многими сторонними библиотеками, которые предоставляют вам поддержку почти всех мыслимых форматов изображений.
Images
ImageEN - хороший пакет(коммерческий), и вам также может понравиться бесплатная библиотека изображений Vapyre (название немного ... хорошо, но это отличный продукт).GraphicsEX - это быстрое расширение Delphi, которое многие разработчики используют для быстрого добавления поддержки наиболее распространенных форматов.У вас также есть FreeImage, представляющий собой коллекцию DLL-файлов, но с классами-обертками Delphi, чтобы их было легко использовать.Загляните в раздел графики на Delphi Pages компании Torry (Google google), и вы найдете надежную поддержку.
PDF
Для предварительного просмотра / чтения PDF я бы взялпосмотрите на линейку продуктов Gnostice.Они предоставляют собственные компоненты Delphi для создания и просмотра PDF-файлов (http://www.gnostice.com/). В качестве альтернативы (для PDF). Я бы, вероятно, выбрал компоненты ActiveX, которые поставляются с Adobe PDF Reader. Но тогда вам нужно будет проверить, что эти объекты зарегистрированы и доступны для них).ваше приложение при запуске.
Так что для вашего "универсального зрителя" я бы
- создал бы базовую форму просмотра (для предоставления кнопок, строки состояния и т. д.)
- Добавьте виртуальный метод для открытия файла
- . От него зависит 3 формы, каждая из которых имеет дело с различным типом носителя. Таким образом, вы получаете TfrmPDF, TfrmImage и TfrmHTML. В каждой переопределяете метод open (). Таким образом, вашОсновное приложение не должно беспокоиться о деталях каждого формата.
HTML
Для просмотра HTML вам повезло, так как у Delphi есть собственный нативный вебРендерер. Он был написан Стивом Болдуином и называется THTMLViewer. Он был выпущен как open source, и вы найдете его в проектах Google.