Как скомпилировать файлы HTML в файл CHM? - PullRequest
6 голосов
/ 24 января 2011

Как в моем коде (Delphi) сделать файлы CHM из набора HTML (со связанными файлами изображений)? Подробности нужны, спасибо!

Ответы [ 3 ]

8 голосов
/ 24 января 2011

Обычный способ сделать это - использовать hhc из Microsoft HTML Help Workshop для создания проекта справки, указанного в файле .hhp. Вы можете написать файл .hpp самостоятельно и все его вспомогательные файлы. Или, чаще всего, вы можете использовать сторонний инструмент для создания справки, которых много.

Я не вижу, откуда Delphi входит в сборку файла .chm, но если я что-то пропустил, обновите свой вопрос, чтобы добавить больше деталей.

6 голосов
/ 24 января 2011

Может быть, есть библиотеки / компоненты для этого.Personnaly, я сделал это сам, так как это довольно просто.

Ваше приложение должно

  • перечислить все файлы для включения
  • Создать содержимое файлов HHC + HHP + HHK-
  • вызов командной строки hhc.exe с параметром HHP

В качестве примера рассмотрим генератор DelphiCodeToDoc CHM.
Чтение uDocGenCHM_Tools.pas иuDocGeneratorChm.pas в репозитории svn моего проекта (слишком велик, чтобы размещать здесь!).https://dephicodetodoc.svn.sourceforge.net/svnroot/dephicodetodoc/trunk/DelphiCodeToDoc/Source/Generator/Chm/

3 голосов
/ 24 января 2011

Free Pascal включает в себя библиотеку чтения / записи CHM (без зависимостей), а версии SVN также содержат базовый компилятор командной строки CHM. Лицензия такая же, как и у остальной библиотеки FPC, LGPL, за исключением статического связывания, поэтому отлично подходит для коммерческого использования.

Я думаю, что довольно легко портировать на Delphi.

Несколько устаревшая страница пакета для этого пакета

http://wiki.freepascal.org/chm

Пакет изначально был разработан для инструмента документирования библиотеки FPC fpdoc. (В некоторых случаях документация генерируется ночью, и все серверы FPC / Lazarus работают на Unix)

...