Как сделать электронную книгу? Программа htm2chm. Chm файл как создать


Создание файла CHM средствами HTML Help Workshop – Saqwel

Поделиться с друзьями

Процесс создания chm значительно облегчает такой инструмент как HTML Help Workshop, разработанный Microsoft. Качаем HTML Help Workshop с сайта Microsoft. Устанавливаем HTML Help Workshop на свой компьютер. Создаем на локальном диске D: папку и называем ее chm. Запускаем HTML Help Workshop, выбираем в контекстном меню «File» -> «New» -> «Project». Откроется окно мастера проекта.

Рис. 1. Первая страница мастера создания справки

Необходимо указать, где будет храниться проект файла chm. Я указал созданную нами папку.

Рис. 2. Окно выбора расположения проекта

На следующем шаге ничего не меняем, так как у нас нет никаких файлов, которые можно было бы уже добавить в проект HTML Help Workshop.

Рис. 3. Окно указания какие файлы, необходимые для создания справки уже есть у вас

Нажимаем «Готово». У нас получился пустой проект. Теперь нужно подготовить файлы, без которых невозможно создание chm. Главное – это сами страницы, содержащие справку. Для их создания необходимо выбрать в контекстном меню «File» -> «HTML File», в появившемся окне набрать название страницы, которую будем создавать. Я назвал ее «Intro».

Рис. 4. Создание первого файла HTML

После того как вы вбили свое название и нажали «OK», перед вами будет окно, в котором уже есть пустая html страница, если мы сохраним ее в таком виде, то это будет просто пустая html страница c заголовком «Intro». Наберите что-нибудь между тегами <body></body> и сохраните страницу, нажав на изображение дискеты, в папке D:\CHM.

Рис. 5. Редактор HTML страниц

Также создайте еще пару страниц, чтоб можно было немного поэкспериментировать. Я создал страницы «FolderIntro.htm» и «Help In Folder.htm»

Рис. 6. Файлы в папке проекта

Теперь у нас есть 3 файла, которые необходимо скомпилировать в один файл chm. Но для того, чтобы созданный chm был полноценным важно наличие дерева каталогов и страниц справки, хранящихся внутри файла. Это дерево всегда располагается слева от текста справки. Для создания этого дерева нам нужно перейти на вкладку «Contents» в окне HTML Help Workshop. При нажатии на эту вкладку появится вопрос:

Рис. 7. Создание файла контента (в котором хранится древовидная структура справки)

Мы, конечно же, соглашаемся и создаем новый файл контента. Примем то имя файла, которое предложит нам HTML Help Workshop – «Table of Contents.hhc». С левой стороны обращаем внимание на вертикальный ряд кнопок, ими мы будем пользоваться при создании файла контента. Нажмем верхнюю из них – «Contents Properties».

Рис. 8. Окно в котором создается дерево контента

Появится такое вот окошко «Table of Contents Properties», можете в будущем поиграться с настройками стилей и видов, но сейчас мы не будем тут ничего менять, закроем окно. Рассмотрим кнопки немного ниже, чем кнока «Contents Properties», первая (с изображением папки) – создает каталог внутри файла chm, в который можно помещать страницы, вторая (с изображением исписанного листа бумаги) – создает страницу внутри файла chm, третья (карандаш) – редактирует страницу или каталог внутри файла chm, четвертая – удаляет страницу или каталог из списка страниц внутри файла chm. Еще ниже, расположены кнопки, которые позволяют перемещать страницы и каталоги вверх и вниз по списку, также передвигать правее и левее. Предпоследняя кнопка для просмотра HTML кода страницы и последняя, чтоб сохранить всю эту беду.

Итак, давайте приступим к созданию дерева каталогов. Нажмем на кнопку с изображением листика, перед нами появится окно, в котором заполняем поле «Entry title» (у меня набрано Intro). Нажимаем кнопку «Add…», появляется окно «Path or URL», набираем в поле «File or URL» название нашей первой созданной html страницы. Так как страница хранится в той же папке, что и сам проект – D:\CHM, то нет необходимости указывать полный путь к файлу.

Рис. 9. Добавление страницы в таблицу контента

Рис. 10. Добавление страницы в проект

Затем нажимаем «OK» в обоих окошках. Теперь нажимаем на кнопку с изображением папки. Появится окно, которое интересуется вставить ли каталог в начало таблицы контента. Мы согласимся, а потом, если надо, изменим.

Рис. 11. Указание расположения записи в дереве контента

Здесь появляется такое же окошко, как и при добавлении отдельной страницы, то есть надо дать название каталогу и указать, какой html файл будет отображаться при выделении этого каталога. После того, как каталог настроен, выделяем этот каталог и нажимаем на кнопку с изображением страницы. На вопрос о том вставить ли страницу в начало, мы отвечаем «Нет». И, таким образом, после настройки этой страницы она будет помещена внутрь только что созданного каталога. Теперь можно переместить каталог ниже, нажав на кнопку со стрелкой, направленной вниз.

Рис. 12. Что-то похожее на дерево контента

Сохраним таблицу контента.

Теперь создадим «Индекс» для файла chm. Для этого перейдем на вкладку «Index» и согласимся создать новый индексный файл «index.hhk». В появившемся окне нажимаем на кнопку с изображением ключа, набираем в поле «Keyword» ключевое слово, при поиске которого по индексу (когда файл справки будет уже создан) будет открываться определенная страница. После того, как указали ключевое слово, также как и при создании таблицы контента, нужно указать файл, который будет соответствовать этому ключевому слову.

Рис. 13. Окно создания индекса

После того как созданы таблица контента, индекс и сами html файлы можно приступить к непосредственно настройке файла chm. Для этого переходим на вкладку «Project», и тут нажимаем на самую верхнюю в вертикальном ряду кнопку. Настраиваем все как на скриншотах.

Рис. 14. Настройка проекта вкладка General

Рис. 15. Настройка проекта вкладка Files

На вкладке «Files» видно, что необходимо указать какие файлы мы используем как Contents file и Index file, а также Full text search stop list file. Первые два файла мы создали ранее, а последний создадим, нажав кнопку «Browse…» и указав имя «search». После этого нажимаем «OK».

Для создания поиска по файлу chm необходимо на вкладке «Compiler» поставить галку «Compile full-text search information».

Теперь жмем на кнопку с изображением папки (вторая сверху), в появившемся окне нажимаем кнопку «Add…», выделяем все html файлы, которые хотим добавить в справку и нажимаем «Открыть». Все файлы будут добавлены в файл справки. Теперь у нас должна быть такая картина.

Рис. 16. Добавления файлов HTML

Остается только скомпилировать файл chm. Нажимаем на самую нижнюю кнопку в вертикальном ряду кнопок.

Рис. 17. Компиляция

Появляется лог, того что проделано. Открываем папку D:\CHM, и видим там готовый файл «MyProject.chm». На этом создание chm завершено.

www.saqwel.ru

Создание CHM с поиском и индексом / Хабр

Думаю многие из вас сталкивались с такой проблемой. Заходишь на сайт — видишь кучу полезной информацию, но при этом на сайте не организован полноценной поиск, нет указателя, а пользоваться каждый раз гуглом, мягко говоря, напрягает. Да и плюс ко всему хотелось бы иметь возможность иметь информацию под другой даже когда нет интернета. Формат CHM известен практически всем. Легкий, удобный и функциональный. Работает, правда, официально он только в Windows. У этого формата есть очень большой плюс — после создания такого файла в будущем будет возможность его отредактировать.

Что нам нужно для создания полноценного (с поиском, указателем, содержанием) файла chm? 0. скачанная копия сайта (здесь рассматривать не будем — получить копию сайта можно множеством способов, например, воспользовавшись программами типа Teleport Pro, WebCopier). 1. htm2chm — позволяет удобно создавать файлы содержания и указателя (там есть компилятор, но без поиска) 2. Microsoft HTML Help WorkShop — сам компилятор, которым будем создавать chm-ки.

После установки htm2chm делаем интеграцию с оболочкой.

Далее пользуясь контекстным меня создаем файлы указателя (TOC.hhc) и содержание (Index.hhk).

С помощью редактора содержания htm2chm мы можем создать удобную древовидную структуру представления информацию.

Теперь нам осталось только создать файл проекта и откомпилировать проект в HTML Help WorkShop.

Опытным путем я создал несколько шаблонов для проектов.1. Шаблон с содержанием и избранным, без указателя (кодировка — Win1251):

[OPTIONS] Compatibility=1.1 or later Compiled file=Project.chm Contents file=TOC.hhc Default Window=ProjectType Default topic=Index.htm Display compile progress=No Full-text search=Yes Language=0x419 Русский

[WINDOWS] ProjectType="???",«TOC.hhc»,,«Index.htm»,«Index.htm»,,,,,0x63520,,0x184e,,,,,,,,0

[FILES] Sample.hhp

[INFOTYPES]

здесь: Project.chm — имя файла на выходе. Index.htm — начальная/домашняя страница для файла помощи

Все необходимые файлы для компиляции подхватятся из файла содержания (TOC.hhc).

2. Шаблон с содержанием и указателем, а также кнопкой изменения шрифта: [OPTIONS] Compatibility=1.1 or later Compiled file=Project.chm Default Window=WindowType Default topic=Index.htm Display compile progress=No Full-text search=Yes Language=0x419 Русский

[WINDOWS] WindowType="???",«TOC.hhc»,«Index.hhk»,«Index.htm»,«Index.htm»,,,,,0x60520,250,0x10184e,[10,10,700,500],,0x200,1,,,,0

[FILES] Sample_FIT.hhp

[INFOTYPES]

3. Шаблон с содержанием и указателем, а также кнопкой изменения шрифта и доп. кнопкой («About»): [OPTIONS] Compatibility=1.1 or later Compiled file=Project.chm Default Window=WindowType Default topic=Index.htm Display compile progress=No Full-text search=Yes Language=0x419 Русский

[WINDOWS] WindowType="???",«TOC.hhc»,«Index.hhk»,«Index.htm»,«Index.htm»,,,«About.htm»,«About»,0x60520,250,0x18184e,[10,10,700,500],,0x200,1,,,,0

[FILES] Sample_FITJ2.hhp

[INFOTYPES]

здесь: About — название кнопки About.htm — файл, на который ссылается кнопка

Если внимательно посмотреть файл TOC.hhc, то можно заметить, что это обычный xml-файл, в котором идет перечисление параметров, а также настройки отображения файла помощи. Вот про эти настройки и поговорим. Можно увидеть примерно вот такие строки: PARAM name=«Window Styles» value=«0x800627» PARAM name=«ImageType» value=«Folder» PARAM name=«ExWindow Styles» value=«0x2200»

Значение для Window Styles имеет 16-ричный формат. Вот расшифровка: PARAM name=«Window Styles» value=«0xb0daec» где: c: бит 1 — Plus/Minus squares | Квадраты плюса/минуса бит 2 — Draw lines between items | Рисовать линии между элементами бит 4 — Start line from the root | Начинать линию из корневого элемента e: бит 2 — Show selection when focus lost | Показывать выбор при потере фокуса Лучше ставить — иначе при комбинации Скрыть/Показать текущий топик показываться не будет. a: бит 4 — Only expand a single heading | Разворачивать только одиночный заголовок Т.е. автоматическое разворачивание заголовков, имеющих разделы, при выборе. бит 2 — Automatically track selection | Автоматически подчеркивать элемент бит 1 — Ставит чекбоксы (но зачем?)… d: бит 1 — Select entire row | Выделение полной строки (полезная штука) только если не выбран стиль Draw lines between items b: бит 8 — Border | Рамка (имеет смысл только для Dialog Frame) бит 4 — Dialog Frame | Диалоговая рамка

Итого для 0x800627 имеем: 8 — (Border) 6 — 4+2 (Only expand a single heading, Automatically track selection) 2 — (Show selection when focus lost ) 7 — 4+2+1 (Plus/Minus squares, Draw lines between items, Start line from the root)

Дополнительно: Right-to-left reading order | Порядок чтения справа налево (чистый бит) param name=«ExWindow Styles» value=«0x2200» Raised edge | Рельефный край (разницы вместе с ним не видно) (чистый бит) param name=«ExWindow Styles» value=«0x100» Scroll bar on left side | Полоса прокрутки на левой стороне (чистый бит) param name=«ExWindow Styles» value=«0x4200»

PARAM name=«ImageType» value=«Folder» Если этот параметр указан, то значки представляются в виде файлов.

На этом описание окончано. Для компиляции используем: "%PROGRAMFILES%\HTML Help Workshop\hhc.exe" <ИМЯ ПРОЕКТА.HHP>

В конце увидим примерно такой отчет: Compiling ..\bacula_24\Bacula_24.chm

Compile time: 0 minutes, 3 seconds 70 Topics 5,168 Local links 74 Internet links 34 Graphics

PS. Для декомпиляции можно использоваться множество средств, лично я использую примочку для FAR manager — CHMView.

habr.com

Как создать CHM файл с помощью HTM2CHM и HTML Help Workshop - О том о сем... - Каталог статей

Источник http://www.oszone.net/3789

CHM - это расширение файла в формате Compressed HTML Help. Формат был разработан Microsoft для гипертекстовых справочных систем. Для просмотра CHM файлов достаточно наличия в системе Internet Explorer. У CHM файлов, как правило, есть Содержание - отдельная панель со списком статей для упрощения навигации. В наличии содержания, пожалуй и заключается главное отличие CHM файлов от использовавшихся ранее HLP файлов справки Windows.

Несколько человек интересовались процессом создания моего учебника по автоматической установке Windows в формате CHM, а в двух словах это не описать. Изложенное ниже руководство применимо к созданию любого CHM файла, обладающего древовидной структурой отображения страниц в содержании, индексом, полнотекстовым поиском с поддержкой логических операторов и возможностью добавления страниц в избранное. Рассказ отражает мой личный опыт, и не исключено, что есть более простой путь (особенно при использовании специализированных и недешевых программных продуктов). Предполагается, что все HTML страницы, которые вы хотите включить в CHM уже подготовлены: в них работают все внутренние ссылки и отображаются картинки и прочие объекты. Речь в рассказе пойдет в основном о создании и компиляции CHM файла.

Давид и Голиаф (HTM2CHM и HTML Help Workshop)

Для создания оффлайн версии сайта использовались две бесплатные программы: Microsoft HTML Help Workshop и HTM2CHM По ходу рассказа я объясню, почему не удалось обойтись лишь одной из них.

HTM2CHM - маленькая программа, написанная Ярославом Кирилловым. Программа обладает русским интерфейсом и интуитивно понятна. Если вы не планируете снабжать свой CHM файл полнотекстовым поиском и индексом, a расширенные настройки внешнего вида CHM файла вам не нужны, то наверное не стоит городить огород с HTML Help Workshop. Создать файл Содержания и выстроить страницы в желаемом порядке, назначив им различные иконки можно и в HTM2CHM.

Мне же возможностей этой программы не хватило - я посчитал, что для почти сотни страниц учебника нужен полнотекстовый поиск, а также не помешает индекс.

Поэтому пришлось задействовать HTML Help Workshop - творение программистов Microsoft. В отличии от HTM2CHM, программа не очень интуитивно понятна и русского интерфейса у нее тоже нет. Зато функционально она меня устроила всем, кроме того что не сумела корректно сформировать файл содержания из кириллических заголовков страниц. В заключение этого мини-сравнения хочу сказать, что у HTML Help Workshop получился намного более компактный учебник (у HTM2CHM размер выходного файла оказался в 1.5 раза больше).

Итак, перейдем к делу. Я изложу тонкости создания CHM в файла том порядке, в котором я создавал свой учебник. Рассказ о HTML Help Workshop будет длинным, но лишь потому, что первый раз требуется указать много настроек проекта (в дальнейшем изменить уже имеющийся проект намного проще).

Давид (HTM2CHM)

Работа с программой не должна вызвать затруднений даже у чайников - настолько все понятно и просто. Я рассмотрю создание содержания и компиляцию CHM файла.

Создание содержания

Содержание - это фактически обязательная часть любого CHM файла. На этой закладке отображается список статей (страниц), входящих в файл. Будет ли этот список линейным или древовидным, зависит от структуры информации и в каком виде вы ее хотите преподнести читателю. За содержание отвечает файл с расширением .HHC, который иногда для краткости именуют TOC файлом (Table of Contents). С создания TOC файла мы и начнем.

Как правило, названия статей для содержания генерируются из заголовков HTML страниц (тег TITLE). Для создания исходного файла содержания я как раз и использовал HTM2CHM, поскольку мне не удалось преодолеть проблему некорректного отображения кириллицы в TOC файле, сгенерированном HTML Help Workshop.

Создание файла содержания в HTM2CHM - дело нехитрое. Запускаем HTM2CHM и видим список режимов работы программы.

Выбрав Содержание, мы попадаем в окно генератора содержания, в котором нужно указать папку с HTML файлами, а также имя и расположение результирующего TOC файла.

После генерации файла содержания откроется редактор, в котором все статьи, вошедшие в содержание будут отображаться вертикальным линейным списком.

HTM2CHM позволяет отсортировать статьи в алфавитном порядке автоматически или сделать это вручную. Названия статей можно редактировать, а также назначать статьям индивидуальные иконки. Отмечу, что создание древовидной структуры и назначение иконок можно сделать и в HTML Help Workshop, однако в HTM2CHM это реализовано поудобнее.

Например, в HTM2CHM для перемещения статей можно просто перетаскивать их мышью или делать это с нажатой клавишей CTRL, что намного удобнее, чем тыкать курсором в кнопку, перемещая за раз всего на одну позицию. Иконки тоже назначаются легко - трудно придумать что-то проще, чем выпадающее меню (у HTML Help Workshop смена иконки находится в свойствах страницы, да еще и на второй закладке).

Короче говоря, я рекомендую привести файл содержания к желаемому виду в HTM2CHM, а уж если вам понадобятся дополнительные настройки CHM файла, то использовать для этого HTML Help Workshop.

Компиляция

После того как файл содержания готов, можно переходить к компиляции CHM файла. В главном окне программы жмем большую кнопку Создать.

И заполняем все поля, не забывая про только что созданный файл содержания. Через несколько секунд у вас будет готовый CHM файл.

К сожалению, HTM2CHM не обладает возможностью создания полнотекстового поиска (или я не нашел такой опции), так что покончив с Содержанием, я продолжил работу над CHM файлом в HTML Help Workshop, в котором мне также открылись и другие возможности.

Голиаф (HTML Help Workshop)

За неказистым (и иногда не очень удобным) интерфейсом HTML Help Workshop скрывается очень мощный инструмент создания CHM файлов. Насколько мне известно, у программы нет русского лица (однако, русификаторы существуют), да и английский интерфейс не слишком информативен - иконки не имеют подписей и пока их не "выучишь", приходится наводить курсор мыши для получения всплывающей подсказки. Однако, функционально HTML Help Workshop превосходит HTM2CHM. Я опишу лишь те функции программы, которые использовал сам. Вообще, HTML Help Workshop снабжен достаточно подробной справкой (EN).

Создание нового проекта

Первое что нужно сделать - это создать новый проект (File | New).

Выбираем Project и нам открывается мастер создания проекта.

На первом этапе предлагается конвертировать существующий WinHelp проект. Поскольку мы ничего не конвертируем, то флажок ставить не надо.

Указываем имя файла проекта (*.HHP) и папку, в которой он будет сохранен.

На этом этапе можно указать HTML файлы, которые мы включаем в проект, а также файл содержания и индекса (HHK). Я указываю только HTML файлы, а TOC файл, созданный в HTM2CHM, добавляю потом.

Добавляем HTML файлы. И на этом работа мастера завершается.

По завершении работы мастера левая часть рабочего окна HTML Help Workshop выглядит примерно так.

Настройка внешнего вида

Займемся настройкой будущего CHM файла. На своем опыте я уяснил, что сначала лучше настроить внешний вид, а потом уже остальные свойства проекта. Итак, сначала определимся, какие закладки мы хотим видеть в навигационной панели (например, Содержание, Индекс, Поиск, Избранное), какие кнопки мы хотим видеть в верхней панели, настроим размер окна и т.д.

В вертикальной панели инструментов HTML Help Workshop есть ряд иконок - нас интересует третья сверху (Add/Modify Windows Definitions).

Если это ваш первый щелчок на иконку, то появится такое диалоговое окно, в котором нужно напечатать Navigation Pane.

Нам откроется окно Window Types, в котором можно выставить немало настроек. На закладке Navigation Pane нужно отметить следующее:

  • Window with navigation pane, topic pane, and button - обязательно ставим флажок, чтобы навигационная панель отображалсь в скомпилированном CHM файле. Поставив флажок, мы видим остальные опции.
  • Тabs - закладки навигационной панели
  • Default Tab - активная закладка по умолчанию (при открытии файла)
  • Search Tab и Advanced - закладка поиска и возможность расширенного поиска с использованием логических операторов
  • Favorites tab - закладка Избранное

Закладка Buttons контролирует какие кнопки будут доступны на верхней панели скомпилированного файла. Выбор оставляю на ваше усмотрение.

Закладка Position позволяет задать размер окна и его расположение на экране. Рекомендую дать пользователю возможность автоматически запомнить размер и позицию после первого запуска CHM файла (Save user defined window position after first use). Можете также поиграть с кнопкой Autosizer.

На закладке Files указываем ряд важных файлов:

  • Window - фокус по умолчанию при запуске (я выбираю Навигационную панель)
  • TOC - файл содержания. Здесь я указываю файл, который ранее создал в HTM2CHM (путь нужно указывать, если только TOC не в одной папке с файлом проекта)
  • Index - индексный файл (если вам нужен индекс - впишите туда index.hhk; о создании индекса я расскажу ниже)
  • Default - страница, отображаемая при открытии CHM файла
  • Home - домашняя страница (кнопка Home на панели)

Остальные закладки диалогового окна Window Types изучите самостоятельно.

Свойства проекта

Чтобы попасть в свойства проекта, делаем двойной щелчок на слове [Options] (в левой верхней части главного окна программы под закладкой Project) и идем по закладкам по порядку. Может я не уловил логики программы, но мне показалось, что часть настроек дублируются. Т.е. ниже вы увидите некоторые настройки, которые мы уже установили, ковыряясь во внешнем виде.

На закладке General нас интересуют:

  • Title - название CHM файла (отображается в заголовке окна скомпилированного файла)
  • Default File - страница (статья), которая отображается при открытии CHM файла
  • Default Window - я выбираю Navigation Pane (навигационная панель с закладками в левой части CHM файла)
  • Language - Russian (обязательно, если в Содержании кириллица)

На закладке Files мы указываем следующие параметры:

  • Compiled File - имя и расположение скомпилированного файла
  • Contents File - вот тут я и указываю TOC файл, созданный в HTM2CHM
  • Index file - (если вам нужен индекс - впишите туда index.hhk; о создании индекса я расскажу ниже)
  • Include keywords from HTML file - эта опция предполагает наличие заранее сформированных ключевых слов в HTML файлах для создания индекса.
  • Full text search stop file - текстовый файл с расширением STP, содержащий слова, которые вы хотите исключить из полнотекстового поиска.

Едем дальше - закладка Compiler. Здесь мы отмечаем лишь Compile full-text search information (если, конечно, нужен полнотекстовый поиск).

На этом начальную настройку проекта можно считать завершенной. Теперь можно уже переходить к компиляции. Если вас интересует создание индекса и исключение слов из поиска, то читайте дальше.

Создание индекса

Где-то в тексте справки к HTML Help Workshop мне встретилась фраза, что пользователи чаще обращаются к индексу, чем к поиску. Не знаю насколько это верно, но мне вообще хотелось иметь индекс, чтобы было все профессионально :) Добавить ключевые слова для индекса в каждую страницу можно через интерфейс HTML Help Workshop или вручную в каждую страницу. Я изложу оба способа.

Добавление ключевых слов через интерфейс Workshop

Через интерфейс программы ключевые слова добавляются на закладке Index. Я обойдусь без скриншотов, так как там трудно промахнуться (окна будут фактически аналогичны тем, что приведены в рассказе о редактировании проекта). Нажимаем на вторую сверху иконку с изображением ключа и получаем окно в котором нужно ввести ключевое слово и кнопкой Add выбрать страницу, к которой слово будет относиться. Одно ключевое слово может относиться к нескольким страницам - просто добавляйте их все в том же окне. В итоге индекс будет сохранен в файл index.hhk, который несмотря на расширение является текстовым файлом, содержащим гипертекстовую разметку (HTML).

Я, однако, избрал другой способ, и теперь уже точно не помню почему. Если память мне не изменяет, кириллические ключевые слова, добавленные через GUI, впоследствии некорректно отображались в CHM файле. Так что прежде чем наполнять индекс тысячами слов проверьте как у него дела с кириллицей :)

Внесение ключевых слов в HTML код

В код HTML страницы после тега BODY вносится следующий текст (приводится скриншот, т.к. данный HTML код вырезается скриптом сайта):

Непроизносимый набором символов лучше скопировать :) Вообще, это одна строка, просто на скриншоте сделан перевод строки.

object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e"

Очевидно, что можно указать несколько ключевых слов - они все будут указывать на статью, в текст которой они были внесены. В итоге я методом Search&Replace внес эту абракадабру во все страницы, а потом потихоньку добавлял ключевые слова.

Ни один из способов особо быстрым не назовешь. Так или иначе приходится назначать ключевые слова страницам вручную, и как это автоматизировать непонятно. Если вам известен более простой способ, то я буду рад о нем узнать.

Исключение слов из полнотекстового поиска

Исключить слова из полнотекстового поиска можно, поместив их в обычный текстовый файл (одно слово на строку) и сохранив файл с расширением STP. В виде исключений я использовал слова, которые часто упоминаются на страницах, но вряд ли нужны при поиске. Фрагмент файла:

АвторввасвседлядоиИcточникизилиимнаненоОпубликованапереведенопоприРаспечатаностактоучтоэтиэтотяXPWindowsunattendedзагрузитьссылкассылке

Не скажу, что мне удалось реально сэкономить на размере файла таким образом. Используя список на 70 слов я сэкономил 30 кб. Однако, для больших CHM файлов с длинным списком слов-исключений это вполне может иметь смысл.

Компиляция

Если у вас есть по крайней мере файл содержания и список страниц, можно попробовать запустить компиляцию и посмотреть, что получается. Делается это через меню File | Compile или по нажатию третьей кнопки слева на верхней панели инструментов.

Получаем предложение сохранить все файлы и показать скомпилированный файл по окончании компиляции. Через несколько секунд или минут (в зависимости от кол-ва материала и/или скорости компьютера) получаемый желаемый и любимый CHM файл. Смотрим что получилось. Если чего-то не хватает, проверяем настройки и компилируем снова.

Редактирование существующего проекта

Ну вот примерно такая картина наблюдается у меня на закладке Contents. Сразу видно, что файл содержания из HTM2CHM был принят как родной.

Слева панель инструментов, кнопки которой означают:

  1. Свойства содержания
  2. Добавить заголовок (секцию). Предварительно нужно выбрать страницу, после которой будет вставлен заголовок.
  3. Добавить страницу. Предварительно нужно выбрать страницу, после которой вставляется новая.
  4. Редактировать выбранную страницу или заголовок
  5. Удалить выбранную страницу или заголовок
  6. Перемещение страниц (перетаскивания нет)
  7. Посмотреть исходный код HTML (и внести изменения)
  8. Сохранить файл

Допустим, нам нужно добавить статью. Нажимаем на иконку с изображением вопросительного знака (3) и видим диалог добавления статьи.

Здесь все делается в таком порядке:

  1. Название статьи
  2. Добавить статью
  3. Выбрать статью
  4. Статья добавлена

На этом же скриншоте видна закладка Advanced, перейдя на которую можно назначить странице иконку. Однако, она недоступна в режиме создания новой статьи. А вот после создания - в режиме редактирования (кнопка с изображением карандаша (4)) иконку статье уже можно назначить.

Все изменения сохраняются в файле проекта с расширением HHP. По сути это текстовый файл в формате INI - его можно даже поправить руками (например, внести новые страницы в список).

Так победил ли Давид Голиафа?

Все зависит от поля боя :) Я вот наоборот пытался их подружить. И в связке эти две программы неплохо сработали. Другое дело, что сгенерировав содержание в HTM2CHM, я больше к ней не возвращался, а продолжаю редактировать проект в HTML Help Workshop, но на то у меня были свои причины.

А вообще, создание CHM файла не такая уж и сложная задача. Простой CHM файл можно создать при помощи HTM2CHM за три-четыре минуты. Потом можно потратить еще час на доводку, если редактировать меню и баловаться иконками страниц. HTML Help Workshop займет побольше времени, особенно на начальном этапе. Однако разобравшись с настройками и меню, вы будете тратить совсем немного времени на создание более функциональных и компактных файлов.

mneniya.ucoz.ru

Как создать CHM файл

Форум: "Потрепаться";Поиск по всему сайту: www.delphimaster.net;Текущий архив: 2003.08.14;Скачать: [xml.tar.bz2];

Вниз

Как создать CHM файл 
Феликс Мантилья   (2003-07-28 18:41) [0]

Друзья! Как из своей Delphi-программы создавать chm файлы? (наподобие утилитки html2chm)

Может компоненты есть готовые?

Или линки на теорию вопроса?

Феликс Мантилья   (2003-07-28 21:06) [1]

Никто не знает что ли?

y-soft   (2003-07-28 21:33) [2]

Ничего трудного тут нет.

Сначала динамически во временном каталоге создается весь HTML контент, потом так же формируется файл проекта *.hhp и необходимые файлы *.h, а затем программно запускается компилятор hhc.exe с необходимыми параметрами командной строки.

Необходимо, что бы в путях был доступен также HHA.dll

Получается прекрасно.

Делается так, а не напрямую, потому что внутренняя структура .chm не документирована, а доступных неофициальных достоверных полных расшифровок не существует.

Указанные файлы hhc.exe и hha.dll входят в свободно распространяемый M$ пакет для компиляции файлов *.chm (HtmlHelp.exe)

Beginner3000   (2003-07-28 23:35) [3]

Замечательно верю Но только почему html2chm без этих файлов устанавливается? наверное парень в ms работает (инсайдер)

Феликс Мантилья   (2003-07-28 23:48) [4]

Устанавливаться-то она может и устанавливается, а вот работает ли она без этих файлов - вот в чем, собственно гря, вопрос.

Beginner3000   (2003-07-28 23:52) [5]

У меня работает

RIMMER   (2003-07-28 23:57) [6]

в html2chm есть chm.dll. Запроси у автора заголовки, может откликнется.

Феликс Мантилья   (2003-07-29 00:08) [7]

> RIMMER © (28.07.03 23:57)

А чье авторство на chm.dll?

y-soft   (2003-07-29 07:27) [8]

Честно говоря кое-что про внутренний формат все же известно - это компаундный файл, в секциях которого и хранится HTML контент, который обычно сжат CAB (но может быть и не сжат), а также оглавление, настройки окна, точки вызова контекстной помощи и т.д.

Добровольцы накопали довольно много:

http://www.speakeasy.org/~russotto/chm/chmformat.html http://savannah.nongnu.org/projects/chmspec

Но IMHO использовать официальный компилятор hha.dll проще и надежнее, что, кстати, абсолютное большинство утилит и делает...

y-soft   (2003-07-29 07:58) [9]

Вот еще (специально для желающих изобретать усовершенствованные велосипеды)- OpenSource проекты по созданию альтернативных средств работы с CHM:

http://bonedaddy.net/pabs3/hhm/index.html http://66.93.236.84/~jedwin/projects/chmlib/

[NIKEL]   (2003-07-29 10:10) [10]

chm это тот же compound файл

и создавать его можно также через интерфейс IStorage просто надо создавать несколько специальных потоков в корне (описание окон, дерева, меню, поиска и т.д) сжимается он недокументированным методом Compact

Форум: "Потрепаться";Поиск по всему сайту: www.delphimaster.net;Текущий архив: 2003.08.14;Скачать: [xml.tar.bz2];

Наверх

Память: 0.75 MBВремя: 0.016 c

www.delphimaster.net

Как сделать электронную книгу? Программа htm2chm | Техника и Интернет

Программа htm2chm позволяет быстро и без проблем конвертировать файлы в формат Compiled HTML (CHM). Этот формат удобен тем, что он очень мало «весит» и его намного легче просматривать, чем тот же PDF.

Интерфейс программы так же прост и практически лишён дизайна, как и две предыдущие программы. Всё, что умеет htm2chm — компилировать HTML файлы, на большее она не рассчитана. Но то, для чего её создали, делает она качественно. Из всего дизайна в программе есть только анимация, изображающая крутящуюся мясорубку. Когда программа в работе, мясорубка крутится.

Начнём с того, что файлы, которые вы хотите сконвертировать в CHM, должны быть в формате HTML. И не в любом HTML, а в веб-странице с фильтром, другие программа просто не увидит.

Если вы сохранили веб-страницу командой браузера «Сохранить как», то для того, чтобы скомпилировать файл, можно, не запуская htm2chm, кликнуть на файл правой кнопкой мыши и в появившемся контекстном меню выбрать пункт «htm2chm:Компилировать». Запустится программа, и в открывшемся окне вы увидите браузер, в котором так же, как и в программе STDU Converter, будет два окна — одно для поиска исходного файла, другое — для того, чтобы показать выходной CHM. Нажмите на кнопку «Собрать», что находится рядом с адресным окном исходного файла, и через пять секунд можете проверять качество нового.

Если у вас не один HTML файл и вы хотите все сразу компилировать, то для этого предусмотрен пакетный режим. Делается это так: нажимаем на кнопку «Меню», находим там вкладку «Пакетный режим». Верхнее адресное окно преобразилось — теперь оно является не поиском исходного файла, а исходной папки. Находим в нём папку, в которой сложены все требуемые HTML файлы, открываем и нажимаем кнопку «Собрать». Закрутилась мясорубка — значит, мы всё сделали правильно. Файлы CHM сохраняются в исходной папке, но, если вы часто пользуетесь htm2chm, можно и перенастроить программу, переадресовав выходные файлы в одну папку, чтобы не искать их по разным.

Если у вас есть несколько HTML файлов и вы не просто хотите преобразовать их в файлы CHM, а сшить в один файл, то для этого надо воспользоваться опцией «индексировать». Откроется окно, в адресном окне «Входная папка», выбираем исходную папку, где лежат наши HTML файлы. Сразу замечаем отличие окна от предыдущих. Под окном «Входная папка» мы видим графу «Название», где уже набрано имя исходной папки. Если мы хотим, чтобы выходной файл назывался иначе, надо сразу переписать.

Под этой графой ещё одно окно, в котором отображены все наши HTML файлы. В выходном файле эти названия станут ссылками на страницы, так что потрудитесь изменить их, чтобы не было написано «Page1» вместо «Глава Первая». Кстати, здесь файлы могут стоять не в том порядке, который вы задумали, поэтому стоит их расставить так, как вам нужно. Изменяя название, помните, что любая программа лучше всего расставляет данные по порядку, если обозначить их цифрами, иначе в новом файле не будет никакой дисциплины.

Разобравшись с порядком, нажимаем на кнопку «Создать» и в уже знакомом окне запускаем процесс компиляции. Несколько секунд, и мы можем посылать по электронной почте целую кучу статей в одном файле.

Я думаю, все знают, как конвертировать вордовские файлы в веб-страницу с фильтром. Для этого надо открыть файл в программе МS Word, затем в меню «Файл» найти вкладку «Сохранить как…» и выбрать веб-страницу с фильтром.

Вот и всё по программе htm2chm. Она проста, надёжна, с ней легко обращаться. Надеюсь, что кому-нибудь из читателей понравится описание программы и он захочет ею воспользоваться.

shkolazhizni.ru

Как создать CHM файл (HTM2CHM и HTML Help Workshop в действии) - Для дома и офиса - Полезные программы - Каталог файлов

CHM - это расширение файла в формате Compressed HTML Help. Формат был разработан Microsoft для гипертекстовых справочных систем. Для просмотра CHM файлов достаточно наличия в системе Internet Explorer. У CHM файлов, как правило, есть Содержание - отдельная панель со списком статей для упрощения навигации. В наличии содержания, пожалуй и заключается главное отличие CHM файлов от использовавшихся ранее HLP файлов справки Windows.

Несколько человек интересовались процессом создания моего учебника по автоматической установке Windows в формате CHM, а в двух словах это не описать. Изложенное ниже руководство применимо к созданию любого CHM файла, обладающего древовидной структурой отображения страниц в содержании, индексом, полнотекстовым поиском с поддержкой логических операторов и возможностью добавления страниц в избранное. Рассказ отражает мой личный опыт, и не исключено, что есть более простой путь (особенно при использовании специализированных и недешевых программных продуктов). Предполагается, что все HTML страницы, которые вы хотите включить в CHM уже подготовлены: в них работают все внутренние ссылки и отображаются картинки и прочие объекты. Речь в рассказе пойдет в основном о создании и компиляции CHM файла.

Давид и Голиаф (HTM2CHM и HTML Help Workshop)

Для создания оффлайн версии сайта использовались две бесплатные программы: Microsoft HTML Help Workshop и HTM2CHM . По ходу рассказа я объясню, почему не удалось обойтись лишь одной из них.

HTM2CHM - маленькая программа, написанная Ярославом Кирилловым. Программа обладает русским интерфейсом и интуитивно понятна. Если вы не планируете снабжать свой CHM файл полнотекстовым поиском и индексом, a расширенные настройки внешнего вида CHM файла вам не нужны, то наверное не стоит городить огород с HTML Help Workshop. Создать файл Содержания и выстроить страницы в желаемом порядке, назначив им различные иконки можно и в HTM2CHM.

Мне же возможностей этой программы не хватило - я посчитал, что для почти сотни страниц учебника нужен полнотекстовый поиск, а также не помешает индекс.

Поэтому пришлось задействовать HTML Help Workshop - творение программистов Microsoft. В отличии от HTM2CHM, программа не очень интуитивно понятна и русского интерфейса у нее тоже нет. Зато функционально она меня устроила всем, кроме того что не сумела корректно сформировать файл содержания из кириллических заголовков страниц. В заключение этого мини-сравнения хочу сказать, что у HTML Help Workshop получился намного более компактный учебник (у HTM2CHM размер выходного файла оказался в 1.5 раза больше).

Итак, перейдем к делу. Я изложу тонкости создания CHM в файла том порядке, в котором я создавал свой учебник. Рассказ о HTML Help Workshop будет длинным, но лишь потому, что первый раз требуется указать много настроек проекта (в дальнейшем изменить уже имеющийся проект намного проще).

Давид (HTM2CHM)

Работа с программой не должна вызвать затруднений даже у чайников - настолько все понятно и просто. Я рассмотрю создание содержания и компиляцию CHM файла.

Создание содержания

Содержание - это фактически обязательная часть любого CHM файла. На этой закладке отображается список статей (страниц), входящих в файл. Будет ли этот список линейным или древовидным, зависит от структуры информации и в каком виде вы ее хотите преподнести читателю. За содержание отвечает файл с расширением .HHC, который иногда для краткости именуют TOC файлом (Table of Contents). С создания TOC файла мы и начнем.

Как правило, названия статей для содержания генерируются из заголовков HTML страниц (тег TITLE). Для создания исходного файла содержания я как раз и использовал HTM2CHM, поскольку мне не удалось преодолеть проблему некорректного отображения кириллицы в TOC файле, сгенерированном HTML Help Workshop.

Создание файла содержания в HTM2CHM - дело нехитрое. Запускаем HTM2CHM и видим список режимов работы программы.

Выбрав Содержание, мы попадаем в окно генератора содержания, в котором нужно указать папку с HTML файлами, а также имя и расположение результирующего TOC файла.

После генерации файла содержания откроется редактор, в котором все статьи, вошедшие в содержание будут отображаться вертикальным линейным списком.

HTM2CHM позволяет отсортировать статьи в алфавитном порядке автоматически или сделать это вручную. Названия статей можно редактировать, а также назначать статьям индивидуальные иконки. Отмечу, что создание древовидной структуры и назначение иконок можно сделать и в HTML Help Workshop, однако в HTM2CHM это реализовано поудобнее.

Например, в HTM2CHM для перемещения статей можно просто перетаскивать их мышью или делать это с нажатой клавишей CTRL, что намного удобнее, чем тыкать курсором в кнопку, перемещая за раз всего на одну позицию. Иконки тоже назначаются легко - трудно придумать что-то проще, чем выпадающее меню (у HTML Help Workshop смена иконки находится в свойствах страницы, да еще и на второй закладке).

Короче говоря, я рекомендую привести файл содержания к желаемому виду в HTM2CHM, а уж если вам понадобятся дополнительные настройки CHM файла, то использовать для этого HTML Help Workshop.

Компиляция

После того как файл содержания готов, можно переходить к компиляции CHM файла. В главном окне программы жмем большую кнопку Создать.

И заполняем все поля, не забывая про только что созданный файл содержания. Через несколько секунд у вас будет готовый CHM файл.

К сожалению, HTM2CHM не обладает возможностью создания полнотекстового поиска (или я не нашел такой опции), так что покончив с Содержанием, я продолжил работу над CHM файлом в HTML Help Workshop, в котором мне также открылись и другие возможности.

Голиаф (HTML Help Workshop)

За неказистым (и иногда не очень удобным) интерфейсом HTML Help Workshop скрывается очень мощный инструмент создания CHM файлов. Насколько мне известно, у программы нет русского лица (однако, русификаторы существуют), да и английский интерфейс не слишком информативен - иконки не имеют подписей и пока их не "выучишь", приходится наводить курсор мыши для получения всплывающей подсказки. Однако, функционально HTML Help Workshop превосходит HTM2CHM. Я опишу лишь те функции программы, которые использовал сам. Вообще, HTML Help Workshop снабжен достаточно подробной справкой (EN).

Создание нового проекта

Первое что нужно сделать - это создать новый проект (File | New).

Выбираем Project и нам открывается мастер создания проекта.

На первом этапе предлагается конвертировать существующий WinHelp проект. Поскольку мы ничего не конвертируем, то флажок ставить не надо.

Указываем имя файла проекта (*.HHP) и папку, в которой он будет сохранен.

На этом этапе можно указать HTML файлы, которые мы включаем в проект, а также файл содержания и индекса (HHK). Я указываю только HTML файлы, а TOC файл, созданный в HTM2CHM, добавляю потом.

Добавляем HTML файлы. И на этом работа мастера завершается.

По завершении работы мастера левая часть рабочего окна HTML Help Workshop выглядит примерно так.

 

Настройка внешнего вида

Займемся настройкой будущего CHM файла. На своем опыте я уяснил, что сначала лучше настроить внешний вид, а потом уже остальные свойства проекта. Итак, сначала определимся, какие закладки мы хотим видеть в навигационной панели (например, Содержание, Индекс, Поиск, Избранное), какие кнопки мы хотим видеть в верхней панели, настроим размер окна и т.д.

В вертикальной панели инструментов HTML Help Workshop есть ряд иконок - нас интересует третья сверху (Add/Modify Windows Definitions).

Если это ваш первый щелчок на иконку, то появится такое диалоговое окно, в котором нужно напечатать Navigation Pane.

Нам откроется окно Window Types, в котором можно выставить немало настроек. На закладке Navigation Pane нужно отметить следующее:

  • Window with navigation pane, topic pane, and button - обязательно ставим флажок, чтобы навигационная панель отображалсь в скомпилированном CHM файле. Поставив флажок, мы видим остальные опции.
  • Тabs - закладки навигационной панели
  • Default Tab - активная закладка по умолчанию (при открытии файла)
  • Search Tab и Advanced - закладка поиска и возможность расширенного поиска с использованием логических операторов
  • Favorites tab - закладка Избранное

Закладка Buttons контролирует какие кнопки будут доступны на верхней панели скомпилированного файла. Выбор оставляю на ваше усмотрение.

Закладка Position позволяет задать размер окна и его расположение на экране. Рекомендую дать пользователю возможность автоматически запомнить размер и позицию после первого запуска CHM файла (Save user defined window position after first use). Можете также поиграть с кнопкой Autosizer.

На закладке Files указываем ряд важных файлов:

  • Window - фокус по умолчанию при запуске (я выбираю Навигационную панель)
  • TOC - файл содержания. Здесь я указываю файл, который ранее создал в HTM2CHM (путь нужно указывать, если только TOC не в одной папке с файлом проекта)
  • Index - индексный файл (если вам нужен индекс - впишите туда index.hhk; о создании индекса я расскажу ниже)
  • Default - страница, отображаемая при открытии CHM файла
  • Home - домашняя страница (кнопка Home на панели)

 

Остальные закладки диалогового окна Window Types изучите самостоятельно.

Свойства проекта

Чтобы попасть в свойства проекта, делаем двойной щелчок на слове [Options] (в левой верхней части главного окна программы под закладкой Project) и идем по закладкам по порядку. Может я не уловил логики программы, но мне показалось, что часть настроек дублируются. Т.е. ниже вы увидите некоторые настройки, которые мы уже установили, ковыряясь во внешнем виде.

На закладке General нас интересуют:

  • Title - название CHM файла (отображается в заголовке окна скомпилированного файла)
  • Default File - страница (статья), которая отображается при открытии CHM файла
  • Default Window - я выбираю Navigation Pane (навигационная панель с закладками в левой части CHM файла)
  • Language - Russian (обязательно, если в Содержании кириллица)

На закладке Files мы указываем следующие параметры:

  • Compiled File - имя и расположение скомпилированного файла
  • Contents File - вот тут я и указываю TOC файл, созданный в HTM2CHM
  • Index file - (если вам нужен индекс - впишите туда index.hhk; о создании индекса я расскажу ниже)
  • Include keywords from HTML file - эта опция предполагает наличие заранее сформированных ключевых слов в HTML файлах для создания индекса. См. ниже.
  • Full text search stop file - текстовый файл с расширением STP, содержащий слова, которые вы хотите исключить из полнотекстового поиска. См. ниже.

Едем дальше - закладка Compiler. Здесь мы отмечаем лишь Compile full-text search information (если, конечно, нужен полнотекстовый поиск).

На этом начальную настройку проекта можно считать завершенной. Теперь можно уже переходить к компиляции. Если вас интересует создание индекса и исключение слов из поиска, то читайте дальше.

Создание индекса

Где-то в тексте справки к HTML Help Workshop мне встретилась фраза, что пользователи чаще обращаются к индексу, чем к поиску. Не знаю насколько это верно, но мне вообще хотелось иметь индекс, чтобы было все профессионально :) Добавить ключевые слова для индекса в каждую страницу можно через интерфейс HTML Help Workshop или вручную в каждую страницу. Я изложу оба способа.

Добавление ключевых слов через интерфейс Workshop

Через интерфейс программы ключевые слова добавляются на закладке Index. Я обойдусь без скриншотов, так как там трудно промахнуться (окна будут фактически аналогичны тем, что приведены в рассказе о редактировании проекта). Нажимаем на вторую сверху иконку с изображением ключа и получаем окно в котором нужно ввести ключевое слово и кнопкой Add выбрать страницу, к которой слово будет относиться. Одно ключевое слово может относиться к нескольким страницам - просто добавляйте их все в том же окне. В итоге индекс будет сохранен в файл index.hhk, который несмотря на расширение является текстовым файлом, содержащим гипертекстовую разметку (HTML).

Я, однако, избрал другой способ, и теперь уже точно не помню почему. Если память мне не изменяет, кириллические ключевые слова, добавленные через GUI, впоследствии некорректно отображались в CHM файле. Так что прежде чем наполнять индекс тысячами слов проверьте как у него дела с кириллицей :)

Внесение ключевых слов в HTML код

В код HTML страницы после тега BODY вносится следующий текст (приводится скриншот, т.к. данный HTML код вырезается скриптом сайта):

Непроизносимый набором символов лучше скопировать :) Вообще, это одна строка, просто на скриншоте сделан перевод строки.

object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e"

Очевидно, что можно указать несколько ключевых слов - они все будут указывать на статью, в текст которой они были внесены. В итоге я методом Search&Replace внес эту абракадабру во все страницы, а потом потихоньку добавлял ключевые слова.

Ни один из способов особо быстрым не назовешь. Так или иначе приходится назначать ключевые слова страницам вручную, и как это автоматизировать непонятно. Если вам известен более простой способ, то я буду рад о нем узнать.

Исключение слов из полнотекстового поиска

Исключить слова из полнотекстового поиска можно, поместив их в обычный текстовый файл (одно слово на строку) и сохранив файл с расширением STP. В виде исключений я использовал слова, которые часто упоминаются на страницах, но вряд ли нужны при поиске. Фрагмент файла:

Автор в вас все для до и Иcточник из или им на не но Опубликована переведено по при Распечатано с так то у что эти этот я XP Windows unattended загрузить ссылка ссылке

Не скажу, что мне удалось реально сэкономить на размере файла таким образом. Используя список на 70 слов я сэкономил 30 кб. Однако, для больших CHM файлов с длинным списком слов-исключений это вполне может иметь смысл.

Компиляция

Если у вас есть по крайней мере файл содержания и список страниц, можно попробовать запустить компиляцию и посмотреть, что получается. Делается это через меню File | Compile или по нажатию третьей кнопки слева на верхней панели инструментов.

Получаем предложение сохранить все файлы и показать скомпилированный файл по окончании компиляции. Через несколько секунд или минут (в зависимости от кол-ва материала и/или скорости компьютера) получаемый желаемый и любимый CHM файл. Смотрим что получилось. Если чего-то не хватает, проверяем настройки и компилируем снова.

Редактирование существующего проекта

Ну вот примерно такая картина наблюдается у меня на закладке Contents. Сразу видно, что файл содержания из HTM2CHM был принят как родной.

Слева панель инструментов, кнопки которой означают:

  1. Свойства содержания
  2. Добавить заголовок (секцию). Предварительно нужно выбрать страницу, после которой будет вставлен заголовок.
  3. Добавить страницу. Предварительно нужно выбрать страницу, после которой вставляется новая.
  4. Редактировать выбранную страницу или заголовок
  5. Удалить выбранную страницу или заголовок
  6. Перемещение страниц (перетаскивания нет)
  7. Посмотреть исходный код HTML (и внести изменения)
  8. Сохранить файл

Допустим, нам нужно добавить статью. Нажимаем на иконку с изображением вопросительного знака (3) и видим диалог добавления статьи.

Здесь все делается в таком порядке:

  1. Название статьи
  2. Добавить статью
  3. Выбрать статью
  4. Статья добавлена

На этом же скриншоте видна закладка Advanced, перейдя на которую можно назначить странице иконку. Однако, она недоступна в режиме создания новой статьи. А вот после создания - в режиме редактирования (кнопка с изображением карандаша (4)) иконку статье уже можно назначить.

Все изменения сохраняются в файле проекта с расширением HHP. По сути это текстовый файл в формате INI - его можно даже поправить руками (например, внести новые страницы в список).

Так победил ли Давид Голиафа?

Все зависит от поля боя :) Я вот наоборот пытался их подружить. И в связке эти две программы неплохо сработали. Другое дело, что сгенерировав содержание в HTM2CHM, я больше к ней не возвращался, а продолжаю редактировать проект в HTML Help Workshop, но на то у меня были свои причины.

А вообще, создание CHM файла не такая уж и сложная задача. Простой CHM файл можно создать при помощи HTM2CHM за три-четыре минуты. Потом можно потратить еще час на доводку, если редактировать меню и баловаться иконками страниц. HTML Help Workshop займет побольше времени, особенно на начальном этапе. Однако разобравшись с настройками и меню, вы будете тратить совсем немного времени на создание более функциональных и компактных файлов.

Если у вас есть на примете другие бесплатные (и удобные) инструменты для создания CHM файлов, то я буду признателен за ссылки на сайты программ.

В HTML Help Workshop, поставляемой вместе с Microsoft Office 2000 Developer, можно создавать файлы справки в сжатом формате HTML (.chm). Это существенное изменение в ходе семинара справки, включенный в Microsoft Office 97 Developer Edition. Help Workshop в Microsoft Office 97 Developer Edition создает файлы Winhelp (.hlp).

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

Создание простого файла справки HTML заключается в выполнении следующих разделов:

  • Создание двух HTML-файлы: формы и элемента управления.
  • Создание файла сопоставления для определения контекста идентификаторы.
  • Создание файла псевдоним, который связывает каждый идентификатор раздела с раздела.
  • Компиляция этих файлов в формате HTML Help Workshop в единый сжатый файл HTML (*.chm).
  • Добавление пути к Файл справки Свойство образца формы.
  • Присвоение кодов контекстов в форму и элемент управления на форме.
  • Тестирование формы.
Результатом является форма, на которой можно нажать F1 во время работы конкретного текстового блока, чтобы получить определенный раздел справки. Нажав клавишу F1 в любом месте в форме отображается раздел справки, главной формы.Создание сжатого файла HTML с контекстной справки, выполните следующие действия.
Создание HTML-файлов
  1. Нажмите кнопку Начало, выберите пункт Программы, выберите пункт Семинар по HTML-справки, а затем нажмите кнопку Семинар по HTML-справки.
  2. На Файл меню, нажмите кнопку Новый. Нажмите кнопку Проект, а затем нажмите кнопку ОК. Назовите новый проект MyProject.
  3. На Файл меню, нажмите кнопку Новый.
  4. Нажмите кнопку HTML-файл, а затем нажмите кнопку ОК.
  5. В Заголовок HTML диалоговое окно, тип Форма справки, а затем нажмите кнопку ОК.
  6. Между<body>теги, тип<b00></b00></body>Это раздел справки для формы.
  7. На Файл меню, нажмите кнопку Сохранение файла. В Сохранить как Появится диалоговое окно.
  8. Сохраните файл с именем Test1.htm. Запишите или запомните папку, в которой сохранен этот файл.
  9. Закройте файл Test1.htm.
  10. На Файл меню, нажмите кнопку Новый.
  11. Нажмите кнопку HTML-файл, а затем нажмите кнопку ОК.
  12. В Заголовок HTML диалоговое окно, тип Справка программного обеспечения управления, а затем нажмите кнопку ОК.
  13. Между<body>теги, тип<b00></b00></body>Это раздел справки для элемента управления.
  14. На Файл меню, нажмите кнопку Сохранение файла. В Сохранить как Появится диалоговое окно.
  15. Сохраните файл с именем Test2.htm. Запишите или запомните папку, где был сохранен файл.
Создание файла карты
  1. Нажмите кнопку Добавление и удаление файлов разделов Нажатие кнопки. Это вторая кнопка вниз Проект Вкладка.
  2. Добавление двух файлов, созданных ранее: Test1.htm и Test2.htm.
  3. Нажмите кнопку Начало, а затем нажмите кнопку Запустить.
  4. В Открыть поле типа Блокнот, а затем нажмите кнопку ОК.
  5. В Блокноте введите следующие строки:

    # define 1 1001# define 2 2001

  6. На Файл меню, нажмите кнопку Сохранить как.
  7. В Тип файла Измените тип Все файлы.
  8. Введите имя файла MAP.h, а затем нажмите кнопку Сохранить.
Создание файла псевдонимов
  1. В программе «Блокнот» нажмите кнопку Новый В меню Файл меню.
  2. Введите следующие строки:

    1 = test1.htm;2 = test2.htm;

  3. На Файл меню, нажмите кнопку Сохранить как.
  4. В Тип файла Измените тип Все файлы.
  5. Введите имя файла Alias.h, а затем нажмите кнопку Сохранить.
Компиляция единый сжатый файл HTML
  1. В HTML Help Workshop, нажмите кнопку для Интерфейс API-Интерфейс HTMLHelp. Это четвертая Кнопка вниз на левой стороне Проект Вкладка.
  2. На Карта Щелкните Файл заголовка.
  3. Нажмите кнопку Обзори затем перейдите к файлу Map.h, созданный ранее в программе «Блокнот».
  4. Выделите Map.h и нажмите кнопку Открыть. Обратите внимание, что вы видите # include Map.h в списке.
  5. Нажмите кнопку Псевдоним вкладки, а затем нажмите кнопку Включить.
  6. Нажмите кнопку Обзори найдите файл Alias.h, созданный ранее в программе «Блокнот».
  7. Выделите Alias.h и нажмите кнопку Открыть. Обратите внимание, что вы видите # include Alias.h в списке.
  8. Нажмите кнопку ОК.
  9. На Файл меню, нажмите кнопку Компиляция.
  10. Компиляция файл справки, как MyProject.
  11. Убедитесь, что создан файл MyProject.chm и запишите или запомните его местоположение.
Добавление пути
  1. В Microsoft Access создайте новую базу данных с именем Database1.mdb. Создайте в том же месте, где был создан файл справки.
  2. В файле Database1.mdb создайте следующую форму: Form: Test1 ----------------- Caption: TestForm Text Box ------------ Name: Field1 Text Box ------------ Name: Field2
  3. В представлении «Дизайн» выберите форму, а затем на Представление меню, нажмите кнопку Свойства.
  4. Нажмите кнопку Другие Вкладка.
  5. Установка Файл справки Свойство MyProject.chm.
Присвоение кодов контекстов
  1. Установка Идентификатор справки Свойства формы 1001, а затем нажмите кнопку ОК.
  2. Выберите элемент управления, поле2, а затем на Представление меню, нажмите кнопку Свойства.
  3. Нажмите кнопку Другие Вкладка.
  4. Установка Идентификатор справки свойство элемента управления поле2 Кому 2001. Нажмите клавишу ВВОД.
Тестирование формы
  1. На Представление меню, нажмите кнопку Режим формы.
  2. Нажмите кнопку Поле1 управлять и нажмите клавишу F1. Обратите внимание, что появляется раздел формы. Это обусловлено тем, что не имеет соответствующего раздела и следовательно, по умолчанию в разделе Общие формы управления Field1.
  3. Закройте раздел справки.
  4. Нажмите кнопку Поле2 управлять и нажмите клавишу F1. Обратите внимание, что отображается раздел для управления поле2.

otipb.ucoz.ru

Файл справки в формате CHM

Любой программист, написавший в жизни хотя бы пару программ, по окончании написания программы задумывался, как организовать справочную систему для своей программы. Написать справку в блокноте - это смешно. Составить справочное руководство при помощи мощного текстового процессора типа MS Word - тоже как-то не очень серьезно.

Самый лучший вариант - это сделать справку в современном формате chm, но нужно обладать определенными знаниями для создания справки в этом формате. Как оказывается, эти знания иметь вовсе и не обязательно. На помошь придет программа HelpNDoc, которую Вы можете скачать прямо с сайта по ссылке Скачать HelpNDoc.

Интерфейс программы сделан в ленточном стиле MS Office 2007. Хотя программа на английском языке, разобраться в ней сможет любой, кто хоть раз работал в тектовом редакторе MS Word. Тем не менее кратко опишу процесс создания справки при помощи данной программы и в конце приведу пример справочного руководства, ранее созданного мной для своей программы.

Файл справки в формате CHM. Этап №1. Создание проекта

Итак, при первоначальном запуске программа предложит нам три варианта:

New Project - Новый проектOpen Project - Открыть существующий проектImport... - данная опция позволит импортировать уже скомпилированный файл справки 

Выберем опцию New Project. Откроется окно создания шаблона проекта справки, в котором можно задать имя проекта (Project Title) и язык проекта (Project Language), а также будет отображена таблица первоначального наполнения, которую можно импортировать из уже существующего проекта.

Отредактировав необходимые параметры, жмем кнопку Создать проект (Create Project), после чего будет создан проект по выбранному шаблону. 

 

Файл справки в формате CHM. Этап №2. Задание опций проекта

Далее все делается интуитивно. Щелкнув по первой кнопке Project Options и выбрав вкладку General settings, мы попадем в окно задания опций проекта, в котором можно задать Имя проекта, автора, версию проекта, написать комментарий, добавить строку Copyright, задать топик, который открывается по умолчанию ("топик" - это раздел вашей справки) и т. д.

На вкладке Generation Settings можно задать пути для формирования файлов справок. Кстати, HelpNDoc позволяет создавать справку не только в формате CHM, но и PDF, HTML и Word. 

На вкладках CHM Settings и PDF Settings, можно задать различные параметры файлов справок, формируемых в формате CHM и PDF соответственно. Например, для формата CHM можно задать отображаемые кнопки, размер шрифта и т. д. 

Файл справки в формате CHM. Этап №3. Добавление топиков

Для добавления топиков (разделов справки) служит команда Add topic. Подтопики добавляются командой Add child topic. 

Менять параметры топиков (иконку топика, Help Context и т.д.) можно через контекстное меню самого топика. 

Файл справки в формате CHM. Этап №4. Форматирование текста

На вкладке Write можно задавать различные параметры форматирования текста как в MS Word. 

Вкладка Insert позволяет добавлять различные объекты в файл справки, например картинки, видео, документы, HTML-код и т.д. При добавлении картинки и щелчке по ней сразу же появляется контекстная вкладка Format, которая позволяет изменить параметры отображения картинки. 

Файл справки в формате CHM. Этап №5. Сохранение проекта

При нажатии на кнопку дискеты, предлагается сохранить проект в формате HND - это формат программы HelpNDoc. При необходимости можно будет потом сохраненный таким образом проект открыть и продолжить его редактирование. 

Файл справки в формате CHM. Этап №6. Генерация файла справки

После того, как проект будет полностью закончен, Вам останется только нажать кнопку Generate Help и сгенерировать файл справки. 

Совсем забыл. Сгенерировать проект не получится, если у Вас не установлена программа Microsoft HTML Help WorkShop, которую можно скачать в интернете либо прямо с этого сайта по ссылке Скачать MS HTML Help WorkShop.Ну и напоследок привожу пример файла справки, созданный некогда мной для программы на Delphi Скачать testchop.chm. Удачи.

multiblog67.ru