Статьи

iBooks Bootcamp: настройка проекта с фиксированным макетом

В первой части серии iBooks Bootcamp мы поговорили о том, как получить учетную запись поставщика контента iBooks от Apple, и обсудили платформу iBooks на высоком уровне. Во второй части мы рассмотрим, как на самом деле создать свой первый проект iBooks с фиксированным макетом.


Первое, что нам нужно сделать, это настроить необходимые папки.

Начните с создания основной папки проекта, в которой будет храниться все.

Снимок экрана: имя основной папки

Вы можете назвать папку как угодно. Для этого урока я назову наш «iBookDemo».

Внутри главной папки мы создадим две новые папки. Первый должен называться «META-INF», а второй — «OEBPS».

Снимок экрана: имена папок META-INF и OEBPS

Папка META-INF будет содержать метаданные, которые iBooks может использовать для идентификации книги. Папка OEBPS будет содержать весь контент и вспомогательные файлы для книги. Эти две папки являются обязательными. Если не указано иное, книга не будет считаться iBook и не откроется в приложении iBooks.


Помимо папок META-INF и OEBPS, единственным другим файлом, который должен присутствовать на главном уровне папки, является файл mimetype. Запустите ваш текстовый редактор и выберите новый файл. Введите следующий код в первой строке:

1
application/epub+zip

Этот файл mimetype сообщает iBooks, что это сжатое приложение EPUB. Убедитесь, что нет возврата каретки и что код отображается в первой строке. Нажмите «Сохранить», а затем назовите файл «mimetype». Обратите внимание, что файл не имеет расширения после имени.

Снимок экрана: размещение файла mimetype

Давайте уточним некоторые параметры iBooks. Создайте еще один новый файл в текстовом редакторе и введите следующий код:

1
2
3
<?xml version=»1.0″ encoding=»UTF-8″?>
<display_options>
</display_options>

Приведенный выше код устанавливает файл для добавления параметров отображения книги. Мы добавим конкретные параметры для каждого чуть позже. Сохраните файл как «com.apple.ibooks.display-options.xml» в папке META-INF .

Как мы обсуждали в первой части этого руководства, файл container.xml указывает iBooks в направлении файла .opf, который содержит метаданные для книги. Создайте новый файл в вашем текстовом редакторе и добавьте следующий код:

1
2
3
4
5
6
7
<?xml version=»1.0″?>
<container version=»1.0″ xmlns=»urn:oasis:names:tc:opendocument:xmlns:container»>
  <rootfiles>
    <rootfile full-path=»OEBPS/content.opf»
     media-type=»application/oebps-package+xml» />
  </rootfiles>
</container>

Если вы всегда называете свой файл .opf одним и тем же именем и сохраняете его в одном и том же месте, вы можете повторно использовать один и тот же файл container.xml при каждом создании новой книги iBook. Сохраните файл как «container.xml» и обязательно поместите его в ту же папку META-INF .

Файл .opf — это самый большой файл в группе, в котором вы будете перечислять содержимое и порядок своей книги. Создайте новый файл в вашем текстовом редакторе и добавьте следующий код:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
<?xml version=’1.0′ encoding=’utf-8′?>
<package xmlns=»http://www.idpf.org/2007/opf»
            xmlns:dc=»http://purl.org/dc/elements/1.1/»
            unique-identifier=»bookid» version=»2.0″>
  <metadata>
  </metadata>
   
  <manifest>
  </manifest>
   
  <spine toc=»ncx»>
  </spine>
   
  <guide>
  </guide>
</package>

Файл .opf начинается с необходимых пространств имен и сопровождается четырьмя основными разделами. Первый раздел — метаданные для книги. Это включает в себя такие вещи, как название, автор и авторское право. Второй — это манифест, в котором подробно описан каждый файл, используемый в содержании книги. Все файлы XHTML, шрифты, изображения, CSS, JavaScript, аудио и видео; каждый бит контента, используемого в книге, должен быть указан здесь. Третий раздел — это позвоночник, и здесь каждая страница книги указана в том порядке, в котором она будет отображаться. Последний раздел — это руководство, в котором указаны важные разделы книги, такие как указатель, глоссарий или оглавление. Руководство является необязательным, однако, если ваша книга имеет официальное оглавление или указатель, рекомендуется добавить эти ссылки в руководство. Сохраните файл как «content.opf» и убедитесь, что он находится в папке OEBPS .

Последний конкретный файл EPUB — это файл .ncx, каталог закладок в вашей книге. Создайте новый файл в вашем текстовом редакторе и добавьте следующий код:

01
02
03
04
05
06
07
08
09
10
11
12
13
<?xml version=’1.0′ encoding=’utf-8′?>
<!DOCTYPE ncx PUBLIC «-//NISO//DTD ncx 2005-1//EN»
                 «http://www.daisy.org/z3986/2005/ncx-2005-1.dtd»>
<ncx xmlns=»http://www.daisy.org/z3986/2005/ncx/» version=»2005-1″>
  <head>
  </head>
   
  <docTitle>
  </docTitle>
   
  <navMap>
  </navMap>
</ncx>

Как и почти все конкретные файлы EPUB, которые мы создали, этот файл также основан на XML. Сохраните файл как «toc.ncx» в папке OEBPS .


Хотя вы можете использовать внешний, внутренний или встроенный CSS с iBooks, для организационных целей мы будем придерживаться внешнего связанного CSS. Создайте новый файл в вашем текстовом редакторе и добавьте следующий код:

1
2
3
4
5
body {
    width: 612px;
    height: 792px;
    margin: 0;
}

Мы добавим только один тег на данный момент, и это тег body . Размер страницы определяется в iBook в двух местах: тег body в CSS и тег viewport в файле XHTML. Сохраните файл и назовите его «cssstyles.css». В этом примере мы сохраним файлы CSS непосредственно в папке OEBPS , однако вы можете захотеть иметь отдельную папку в папке OEBPS в своем собственном проекте, если вы планируете использовать отдельный файл CSS для каждой страницы.

Каждая страница iBook с фиксированным макетом представляет собой отдельный файл XHTML. Это означает, что если ваша книга имеет десять страниц, у вас будет десять отдельных файлов XHTML. Самый простой способ создать такое количество страниц — начать с создания шаблона, содержащего код, который будет присутствовать на каждой странице, и нажать «Сохранить как», чтобы сохранить файл как другие страницы XHTML, которые вам понадобятся. Начнем с создания шаблона для нашего проекта. Создайте новый файл в вашем текстовом редакторе и добавьте следующий код.

01
02
03
04
05
06
07
08
09
10
11
12
13
<?xml version=»1.0″ encoding=»utf-8″?>
<!DOCTYPE html PUBLIC «-//W3C//DTD XHTML 1.1//EN» «http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd»>
<html xmlns=»http://www.w3.org/1999/xhtml» xmlns:epub=»http://www.idpf.org/2007/ops»>
    <head>
        <title>iBooks Demo</title>
        <meta name=»viewport» content=»width=612, height=792″ />
        <link rel=»stylesheet» type=»text/css» href=»cssstyles.css» />
    </head>
 
    <body>
    </body>
 
</html>

В этом коде есть несколько важных частей. Первый раздел включает в себя пространства имен XHTML и EPUB и соответствующие URI. Внутри title тега находится название книги и тег для viewport . Как и тег body в файле CSS, область viewport позволяет iBooks знать размер страницы книги в пикселях. Мы также связываем недавно созданный внешний файл CSS. Последний раздел, body , где находится весь наш контент. Сохраните файл как «page01.xhtml» и убедитесь, что он сохранен в папке OEBPS .

С открытым «page01.xhtml» нажмите « Файл»> «Сохранить как» и сохраните файл как «page02.xhtml» в папке OEBPS . Снова нажмите « Файл»> «Сохранить как» и сохраните файл как «page03.xhtml» в папке OEBPS . Теперь у вас есть три страницы для демонстрационной версии iBook без необходимости писать один и тот же код три раза!


Ваш проект настроен, но контента пока нет и нечего проверять, загружаем ли мы на устройство. В следующей части этой серии мы добавим некоторый контент для создания рабочего примера iBook.