CHM — это расширение файла для формата CompressedHTMLHelp. Этот формат был разработан компанией Microsoft для гипертекстовых справочных систем. Для просмотра файлов CHM в системе должен быть установлен Internet Explorer. Файлы CHM обычно имеют оглавление. Это отдельное окно со списком статей для упрощения навигации. Наличие оглавления — это, пожалуй, главное отличие файлов CHM от ранее использовавшихся файлов справки WindowsHLP.
Несколько человек спросили, как мы создали учебник по автоматизации разработки Windows в формате CHM, но это трудно объяснить в двух словах. Следующее руководство относится к созданию CHM-файла с древовидной структурой для отображения страниц в содержимом, индексирования, полнотекстового поиска с поддержкой логических операторов и возможностью добавления страниц в избранное. Эти истории отражают мой личный опыт, и, возможно, существуют более простые способы (особенно если используется специализированное и более дешевое программное обеспечение). Предполагается, что все HTML-страницы, которые должны быть включены в CHM, уже подготовлены. Это означает, что все внутренние ссылки манипулируются, а изображения и другие объекты отображаются. Этот учебник в основном посвящен компиляции и созданию CHM.
Давид и Голиаф (Практикум по HTM2CHM и HTML Help)
Для создания автономной версии этого сайта были использованы два бесплатных приложения — Microsoft HTML Help Workshop и HTM2CHM (если вам не знакомы эти названия, см. примечание:). Пройдя через весь процесс, я объясню, почему только один из них не смог решить проблему.
HTM2CHM — это небольшая программа, созданная YaroslavKirillov. Она имеет русскоязычный интерфейс и интуитивно понятна в использовании. Если вы не планируете оснащать ваши CHM-файлы полнотекстовым поиском и индексацией, а также не нуждаетесь в расширенных опциях для компоновки ваших CHM-файлов, вам не стоит беспокоиться о HTMLHelpWorkshop. Используя HTM2CHM, можно создать файл оглавления, расположить страницы в любом порядке и назначить различные значки.
Для почти 100 страниц руководства требовался полнотекстовый поиск, а программа не обладала достаточной функциональностью, и мы решили, что сможем использовать индекс.
Поэтому было необходимо использовать HTML Help Workshop, созданный разработчиками Microsoft. В отличие от HTM2CHM, эта программа не очень интуитивно понятна и не имеет русского интерфейса. Однако, за исключением того, что он не смог правильно сгенерировать файлы контента из кириллических названий страниц, мы были удовлетворены его функциональностью. В заключение этого мини-сравнения можно сказать, что учебник HTML Help Workshop гораздо компактнее, чем выходной файл HTM2CHM, который в 1,5 раза больше.
Так что давайте перейдем к делу. В том порядке, в котором создавались учебники, объясняется сложность создания CHM-файла. Лаборатория HTML Help Lab имеет долгую историю, потому что впервые вам нужно указать множество настроек проекта (позже гораздо проще изменить существующий проект).
Дэвид (HTM2CHM).
Работать с программой не сложно даже для дураков — она очень понятна и проста. Она включает в себя создание контента и создание CHM-файлов.
Создание контента.
Оглавление является неотъемлемой частью каждого CHM-файла. На этой вкладке отображается список статей (страниц), содержащихся в файле. Является ли этот список линейным или актом, зависит от структуры информации и способа ее представления читателю. Содержание управляет файлами расширения .HHC. Иногда это называют C ONTENTS (TOC). Начните с создания файла TOC.
Как правило, заголовки статей контента создаются с помощью HTML-заголовков страниц (title labels). Оригинальный файл содержимого был создан с помощью HTM2CHM, так как файл TOC, созданный с помощью HTML Help Workshop, не преодолел проблему неправильного отображения кириллических символов.
Создание файлов содержимого с помощью HTM2CHM — дело простое. Когда вы запустите HTM2CHM, вы увидите список функций.
Выберите Content (Содержание) и введите генератор содержания. Выберите папку, в которой будет создан HTML-файл, и укажите результирующий файл TOC и его местоположение.
После создания файла содержания открывается процессор, и все статьи, содержащиеся в содержании, отображаются в виде вертикального списка в строку.
HTM2CHM может распределять статьи по категориям автоматически или вручную в алфавитном порядке. Можно обрабатывать названия статей и присваивать им отдельные значки. Обратите внимание, что создание древовидной структуры и назначение пиктограмм можно выполнить в HTML Help Lab, но удобнее в HTM2CHM.
Например, в HTM2CHM, чтобы переместить статью, вы можете перетащить ее с помощью мыши или CTRL. Иконки также легко назначать — трудно придумать что-то проще, чем выпадающее меню (в HTML Help Workshop также есть чередующиеся иконки в свойствах страницы и на второй вкладке).
Короче говоря, рекомендуется изменить файл содержимого на желаемую форму HTM2CHM. Если вам нужны дополнительные опции для файла CHM, используйте Мастерскую справки HTML.
Пенсии.
Как только файл содержимого будет готов, вы будете готовы скомпилировать CHM-файл. Нажмите на большую новую кнопку в главном окне.
Заполните все поля, ориентируясь на только что созданный файл. Через несколько секунд у вас будет готовый CHM-файл.
К сожалению, HTM2CHM не может искать полный текст (или я не смог найти такую возможность), поэтому я закончил оглавление и продолжил работу с CHM файлом в HTML Help Workshop, открывая другие варианты.
Голиаф (html-помощь лаборатории).
За уродливой (и иногда очень неполезной) средой HTML Help Workshop скрывается очень мощный инструмент для создания CHM-файлов. Насколько я знаю, в программе нет русского аспекта (но есть деревенский). Английский интерфейс не очень информативен. Значки не выделяются. . Однако функционально HTML Help Workshop лучше, чем HTM2CHM. Я опишу только функциональность, используя себя. В целом, институт HTML Help получил очень широкую поддержку.
Творчество.
Первое, что нужно сделать, это создать новый проект (file|new).
Выберите проект и откройте руководство по созданию проекта.
Первый шаг — преобразование существующего проекта WinHelp. Поскольку ничего не конвертируется, нет необходимости проверять кадры.
Укажите имя файла проекта (* .HHP) и папку, в которой он будет храниться.
На этом шаге вы можете указать HTML-файлы и файлы содержимого и индекса (HHK), которые должны быть включены в проект. Укажите только файлы HTML; файлы TOC, созданные с помощью HTM2CHM, будут добавлены позже.
Добавьте файлы HTML. На этом руководство завершено.
После завершения работы мастера левая часть окна Мастерской HTML-справки будет выглядеть следующим образом
Настройте внешний вид.
Начните с настройки внешнего вида CHM-файла. На своем опыте я понял, что лучше всего сначала настроить внешний вид, прежде чем настраивать остальные свойства проекта. Поэтому сначала решите, какие закладки вы хотите отображать в навигационной панели (содержание, индекс, поиск, избранное и т.д.), какие кнопки вы хотите отображать в верхней панели, какие настройки размера окна вы хотите и т.д.
Вертикальная панель инструментов в HTML Help Lab содержит ряд значков. Нас интересует третий значок сверху (Add/Change Windows Definitions).
Если это первый щелчок по значку, появится диалог с предложением войти в панель навигации.
Откроется окно Тип окна, в котором можно получить доступ к различным настройкам. На вкладке Окно навигации убедитесь, что
- Окно с панелью навигации, панелью темы и кнопками — убедитесь, что панель навигации видна в скомпилированном CHM-файле. Установите этот флажок, чтобы увидеть другие варианты.
- Вкладки — вкладки на панели навигации.
- Вкладка по умолчанию — вкладка, активная по умолчанию (при открытии файла).
- Вкладки Поиск и Расширенный поиск — вкладка Поиск и Расширенный поиск с использованием булевых операторов.
- Вкладка "Избранное" — Избранное вкладка
Вкладка "Кнопки" — управление кнопками, доступными на верхней панели скомпилированного файла. Выбор за вами.
Вкладка Положение позволяет задать размер окна и его положение на экране. Рекомендуется разрешить пользователю автоматически сохранять заданную пользователем позицию окна после первого использования CHM-файла (save user-defined window position after first use). Вы также можете поиграть с кнопкой Autosizer.
На вкладке Файлы укажите некоторые важные файлы.
- Окно — фокус по умолчанию при запуске (выбор окна навигации).
- TOC — файл оглавления. Здесь указывается файл, ранее созданный в HTM2CHM (если только оглавление не находится в той же папке, что и файл проекта, в этом случае необходимо указать путь).
- Index — индексный файл (если вам нужен индекс — поместите туда index.hhk — создание индекса описано ниже).
- По умолчанию — страница, отображаемая при открытии CHM-файла
- Главная страница — Главная страница (кнопка "Главная" на панели инструментов)
Другие вкладки в диалоге Тип окна очевидны с первого взгляда.
Свойства проекта.
Чтобы перейти к свойствам проекта, дважды щелкните на Options (под вкладкой Project в левом верхнем углу главного окна) и поочередно проверьте вкладки. Возможно, логика программы была непонятна, но некоторые настройки повторялись. Тем не менее, ниже приведены некоторые из уже установленных настроек, которые прорезают внешний вид программы.
На вкладке "Общие" нас интересует следующее
- Название — название CHM-файла (отображается в заголовке окна редактора)
- Файл по умолчанию — страница (статья), которая появляется при открытии CHM-файла
- Окно по умолчанию — панель навигации (панель навигации с вкладками в левой части CHM-файла)
- Язык — Русский (требуется, если содержимое на кириллице).
На вкладке Файл определите следующие параметры.
- Файл озвучивания — имя и расположение скомпилированного файла
- Файл содержимого — здесь определяется файл toc, созданный htm2chm
- Индексный файл — (если вам нужен индекс, введите сюда index.hhk — инструкции по индексации ниже)
- Включение ключевых слов из HTML-файла предполагает, что HTML-файл был проиндексирован с предварительным исключением ключевых слов. См. ниже.
- Файлы полного текстового поиска — текстовые файлы, содержащие расширения STP, которые содержат слова, блокируемые из полного текстового поиска. См. ниже.
Перейдите на вкладку — Компилятор. Отметьте здесь только выбор информации для полнотекстового поиска (если, конечно, требуется полнотекстовый поиск).
На этом этапе первоначальный дизайн проекта можно считать завершенным. Теперь можно приступать к компиляции. Если вы заинтересованы в индексировании и блокировании слов из поиска, прочитайте следующее
Индексирование.
Где-то в лаборатории по HTML, справке, я нашел фразу о том, что пользователи могут обращаться к индексу чаще, чем к поиску. Я не знаю, правда это или нет, но я хотел иметь индекс, чтобы все было профессионально:) Вы можете добавить ключевые слова для индекса каждой страницы либо в мастерской помощи HTML, либо вручную на каждой странице. Ниже приведены инструкции по выполнению обоих действий.
Добавьте ключевые слова из рабочей среды
Через интерфейс программы ключевые слова добавляются на вкладку index. Пропустите скриншоты, так как их трудно потерять (на самом деле, окна похожи на окна в истории "Редактировать проект"). Нажмите на второй сверху значок с гаечным ключом, появится окно, в котором нужно ввести ключевое слово, нажмите Добавить и выберите страницу, к которой относится это слово. Ключевые слова могут относиться ко многим страницам — просто добавьте их все в одно окно. Наконец, индекс сохраняется в файле index.hk. Это текстовый файл, содержащий указатели гиперуровня (HTML), несмотря на его расширенную функциональность.
Однако я выбрал другой метод и сейчас не могу точно вспомнить почему. Если память меня не обманывает, кириллические ключевые слова, добавленные через графический интерфейс, не отображались должным образом в CHM-файле. Поэтому, прежде чем заполнять тысячи слов в индексе, проверьте, как он работает с кириллическим текстом:)
Поместите ключевые слова в HTML-код
В HTML-код страницы после метки body вставляется следующий текст (приведен скриншот, так как этот HTML-код был вырезан из сценария сайта):.
Для копирования лучше всего подходит набор непроизносимых символов:) на самом деле это одна строка и просто перевод в скриншот.
Очевидно, что можно указать множество ключевых слов. Все они ссылаются на статьи во входном тексте. Наконец, используя Search and Replace, мы поместили эту абракадабру на каждую страницу и постепенно добавляли ключевые слова.
Ни один из этих двух методов не является очень быстрым. В любом случае, мне приходится вручную подбирать ключевые слова к страницам, и я не знаю, как это автоматизировать. Если вы знаете более простой способ, я буду рад его услышать.
Исключить слова из полнотекстового поиска
Вы можете блокировать слова из полнотекстового поиска, поместив их в простой текстовый файл (по одному слову в строке) и сохранив файл с расширением STP. В качестве исключения я использовал слова, которые часто ссылаются на страницы, но поиск по ним требуется редко. Извлечение файла:.
Таким образом, нельзя сказать, что размер файла был действительно сохранен. Использование списка из 70 слов позволило сэкономить 30 кб. Однако для больших CHM-файлов с большими списками исключенных слов это имеет смысл.
Пенсии.
Если у вас есть список контента и страниц хотя бы для одного фрагмента контента, вы можете запустить компиляцию и посмотреть, что получится. Это делается через меню File|Compile или через третью кнопку на левой стороне панели инструментов.
После завершения компиляции вам будет предложено сохранить все файлы и просмотреть скомпилированный файл. Через несколько секунд или минут (в зависимости от объема материала и/или скорости компьютера) вы получите выбранный вами CHM-файл. Проверьте результаты. Если чего-то не хватает, проверьте параметры и скомпилируйте снова.
Редактирование существующего проекта
На вкладке "Содержание" вы увидите следующее Файлы содержимого HTM2CHM являются родными.
С левой стороны находится панель инструментов, на которой расположены кнопки, означающие
- Содержание.
- Добавьте заголовок (раздел). Предварительно выберите страницу, после которой будет вставлен заголовок.
- Добавить страницу. По умолчанию это страница, на которой затем будет введена новая страница.
- Редактирование выбранных страниц или заголовков.
- Удаление выбранных страниц или заголовков
- Перемещение страницы (не перетаскивание)
- Просмотр исходного кода HTML (и изменений)
- Сохранить файл
Предположим, вам нужно добавить статью. Нажмите на знак вопроса (3), появится диалоговое окно Добавить статью.
Все делается в таком порядке:.
- Название
- Добавить
- Выберите статью
- Статья была добавлена
На этом же снимке вы можете сопоставить значки на странице, щелкнув по ним, вы увидите вкладку Дополнительно. Однако он недоступен для работы с новыми статьями. Однако после его создания — в режиме обработки (кнопка карандаша (4)) — иконка может быть присвоена статье.
Все изменения сохраняются в файле проекта с расширением HHP. По сути, это текстовый файл в формате INI — вы можете даже изменить его вручную (например, добавить новую страницу в список).
Итак, победил ли Давид Голиафа?
Это зависит от поля боя:), наоборот, я старался делать это вместе. И в сочетании эти две программы работают хорошо. Другое дело, что после создания контента в HTM2CHM я больше к нему не возвращался. Я продолжал редактировать проект в HTML Help Workshop, но не просто так.
В целом, создание файлов CHM не так уж сложно. Вы можете создать простой CHM-файл за 3-4 минуты с помощью HTM2CHM. Вы можете потратить еще час на редактирование меню и придумывание иконок страниц. Институт HTML Help требует больше времени, особенно на первых порах. Однако понимание настроек и меню занимает слишком мало времени, чтобы создать функциональный и компактный файл.
Если есть другие бесплатные (и удобные для пользователя) инструменты, позволяющие направлять ум через CHM-файл, спасибо за ссылку на сайт программы.
Согласно библейской истории, во время войны между филистимлянами и израильтянами Голиаф и Давид были выбраны для поединка мужчинами своей расы. Это определит исход битвы. Голиаф был ростом шесть и одной ногой (т.е. более трех метров). Обычный человек Давид, который не носил тяжелых доспехов, использовал в бою пансу. Его камень ударил Голиафа в лоб, проломив ему череп и убив его. Назад к тексту.