FMXPixie - HTML-интерфейс для Inno Setup через DLL
В основе лежит уже существующий проект Pixie - HTML-рендерер на Delphi. Я сделал DLL-обёртку, чтобы можно было использовать его из Inno Setup и отображать HTML прямо в окне установщика.
Идея в том, чтобы делать интерфейс не из отдельных FMX-контролов, а на обычном HTML и CSS. При этом сама установка, работа с файлами, задачами и прочая логика остаётся в Inno Setup.
Что уже работает:
1. Загрузка HTML из строки или файла.
2. Оформление через CSS, обработка кликов и ссылок.
3. Изменение содержимого страницы прямо во время работы.
4. Изображения, включая анимированные GIF и WebP, а также SVG.
5. Сохранение результата в PNG и PDF.
Можно сделать свою страницу приветствия, шапку окна, кнопки, карточки и другие элементы. Внешний вид при этом проще менять средствами HTML/CSS, не собирая каждый элемент отдельно в FMX.
Ещё один момент - здесь нет Chromium или WebView2. Не нужно встраивать в установщик отдельный браузерный движок со всеми его зависимостями. Поэтому решение должно быть легче по размеру, чем варианты с полноценным браузером. Насчёт скорости запуска и конкретного размера пока не буду приводить цифры - замеров не проводил.
Ограничения, конечно, тоже есть. Это не полноценный браузер: поддерживаются не все возможности HTML/CSS, а страницы со сложным JavaScript могут работать неправильно. Проект больше подходит для создания собственного интерфейса, чем для открытия произвольных сайтов. Кроме того, пока не все возможности самого Pixie доступны через DLL.
Пока продолжаю тестировать этот вариант и постепенно добавлять возможности (если они еще остались).
В основе лежит уже существующий проект Pixie - HTML-рендерер на Delphi. Я сделал DLL-обёртку, чтобы можно было использовать его из Inno Setup и отображать HTML прямо в окне установщика.
Идея в том, чтобы делать интерфейс не из отдельных FMX-контролов, а на обычном HTML и CSS. При этом сама установка, работа с файлами, задачами и прочая логика остаётся в Inno Setup.
Что уже работает:
1. Загрузка HTML из строки или файла.
2. Оформление через CSS, обработка кликов и ссылок.
3. Изменение содержимого страницы прямо во время работы.
4. Изображения, включая анимированные GIF и WebP, а также SVG.
5. Сохранение результата в PNG и PDF.
Можно сделать свою страницу приветствия, шапку окна, кнопки, карточки и другие элементы. Внешний вид при этом проще менять средствами HTML/CSS, не собирая каждый элемент отдельно в FMX.
Ещё один момент - здесь нет Chromium или WebView2. Не нужно встраивать в установщик отдельный браузерный движок со всеми его зависимостями. Поэтому решение должно быть легче по размеру, чем варианты с полноценным браузером. Насчёт скорости запуска и конкретного размера пока не буду приводить цифры - замеров не проводил.
Ограничения, конечно, тоже есть. Это не полноценный браузер: поддерживаются не все возможности HTML/CSS, а страницы со сложным JavaScript могут работать неправильно. Проект больше подходит для создания собственного интерфейса, чем для открытия произвольных сайтов. Кроме того, пока не все возможности самого Pixie доступны через DLL.
Пока продолжаю тестировать этот вариант и постепенно добавлять возможности (если они еще остались).