• Начало
  • Магазин
  • Материали
    • Новини
    • Статии
    • Ревюта
    • Интервюта
  • Форум
  • Каталог
    • Автори
    • Илюстратори
  • Начало
  • Виж новите мнения
  • Правила на форума
  • Търсене
  • Начало
  • Виж новите мнения
  • Правила на форума
  • Търсене

Вход

Забравена парола?
Забравено потр. име?
Регистрация

Форум
/
Книги-игри
/
Работилница
/
Дигитализиране
/
Някои начини за създаване на epub

Някои начини за създаване на epub

  • 1
  • 1
08 Авг 2014 18:06
Offline
systemshock's Avatar
systemshock
Окото на Бога
Окото на Бога
Мнения: 178
Скрий Още
Получени "Благодаря": 44
Topic Author
Някои начини за създаване на epub #94313
В тази тема ще разкажа за няколко варианта за съдаване на epub файлове и ще се спра малко по-подробно на един от тях. На някои места съм дал технически детайли, които може просто да прескочите, ако не са ви интересни и да се съсредоточите върху потребителската част на нещата.

Важно: Текстът е все още на етап чернова. Обемен е и засега не съм имал време да го прегледам по-обстойно и да го редактирам. Пускам го в този вид за обратна връзка и като повод за дискусии. По-късно, ако е нужно ще го допълня/почистя/коригирам.

И така, към момента за създаване на epub има различни варианти. Ето няколко от тях:

Sigil
Ако някой иска WYSIWYG редактор, един не лош избор е Sigil . За него могат да се посочат следните плюсове и минуси:

+ WYSIWYG
+ Може да скрие почти всички детайли по създаването на книгата

- вече не се разработва (не очаквайте нови версии)
- никакви възможности за customize-ване на процеса на работа (не се подържат скриптове, плъгини и т.н.)


Calibre
От известно време насам, Calibre включва и мощен редактор за epub. За него може да се каже следното:

+ Разработва се активно, екипът е силен, непрекъснато се добавят нови опции
+ Редакторът е мощен

- не знам дали е точно минус, но редактирането изисква познаване на HTML+CSS
- отново няма възможности за customize-ване на процеса на работа (не се подържат скриптове, плъгини и т.н.)


Изготвяне на ръка
В нета има доста tutorial-и за това как точно става това, тук ще кажа накратко само някои неща. Накратко, epub файлът всъщност е zip архив с фиксирана структура и по-конкретно: има значение в какъв ред влизат файловете в архива – първо влиза един от тях, другите могат да са в произволен ред.

Какво има в архива? epub форматът е базиран върху XHTML и CSS. Съдържанието на книгата е оформено във вида на това, на което разговорно му казват "статична уеб страница" - един или повече XHTML файла + CSS файл за оформлението + отделни файлове за картинките. Връзките между файловете се дават с относителни пътища и интересното е, че един epub трябва да може да се чете дори и когато е разархивиране, т.е. ако вземете файовете от него и ги разархивирате в една директория, ще можете да си ги гледате през браузъра. (Едно интересно следствие: програмите и четците поддържащи epub всъщност имплементират някакъв модул за рендиране на XHTML или взимат такъв наготово. Например в Win32/64 може да се използва наготово Web Browser компонента, като вземете IHtmlDocument интерфейс и напълните съответното съдържание).

Освен горе-описаните файлове, в архива има и няколко файла, които съдържат специфична за книгата информация - например таблица на съдържанието.

Ако някой се интересува от това как да направи нещата сам от нулата, можем да си поговорим, но този метод изисква влизане в детайлите и няма как да се мине без добро познаване на XHTML, CSS, XML, малко Dublin Core (на ниво обща култура) заради метаданните + някакви соствени скриптове или помощни програмки, защото някои от задачите, като например генериране на съдържанието могат да бъдат невероятна хамалогия, ако се правят на ръка.

+ Пълен контрол върху резултата
+ Интересно и приятно изживяване, ако това ви е интересно и приятно

- не знам дали е точно минус, но изисква добро познаване на споменатите стандарти.
- Множество досадни дейности, които би било по-добре да се автоматизират


(markdown или XHTML) + pandoc
pandoc е програма, която може да преобразува между различни видове формати. В частност може да преобразува от HTML или markdown до epub.

Защо markdown? Защото (Поне на теория) е по-лесно а научиш някой да използва markdown, отколкото да го научиш да изполва HTML. Второ, дори и HTML да не е проблем, markdown е доста по-лесен за писане, отколкото постоянно да вмъкваш тагове.

Защо pandoc? Защото pandoc автоматизира всики онези досадни подробности около създаването на epub книгата и ви оставя само задачата да подготвите текста, картинките и оформлението.

И така, ето малко повече за това как се използва тази комбинация:

Може да мислите за Markdown като за прост заместител на HTML. Идеята отново е същата - създавате текстов файл, в който написвате нужното съдържание и след това можете да маркирате отделни части според семантиката или визуалното представяне (например заглавие, връзка, списък и т.н.).

Синтаксисът на markdown много по-прост и в доста по-свободен стил, отколкото този на HTML. Ето пример за това как би изглеждал текстът на една книга-игра в двата формата. Най-напред HTML:
<h2 id="ep30]30</h2>
<p>Отваряш вратата и какво да видиш – пингвин! Какво ще направиш?</p>
<ol>
   <li>Ще го погледнеш отгоре - премини на <a href="/ep31]31[/url]</li>
   <li>Ще го погледнеш отстрани - премини на <a href="ep32]32[/url]</li>
   <li>Ще го обърнеш и ще го погледнеш отдолу - премини на <a href="/ep32]32[/url]</li>
</ol>

<h2 id="ep31]31</h2>
<p>Хм, пак виждаш пингвин. Върни се на <a href="/ep30]30[/url]</p>

<h2 id="ep32]32</h2>
<p>Хм, пак виждаш пингвин. Върни се на <a href="/ep30]30[/url]</p>

<h2 id="ep33]33</h2>
<p>Обръщаш го и какво да видиш - нивгнип!!!</p>

И сега същият текст в Markdown:
30
----------
Отваряш вратата и какво да видиш – пингвин! Какво ще направиш?

- Ще го погледнеш отгоре - премини на &#91;31&#93;
- Ще го погледнеш отстрани - премини на &#91;32&#93;
- Ще го обърнеш и ще го погледнеш отдолу - премини на &#91;33&#93;

31
----------
Хм, пак виждаш пингвин. Върни се на &#91;30&#93;

32
----------
Хм, пак виждаш пингвин. Върни се на &#91;30&#93;

33
----------
Обръщаш го и какво да видиш - нивгнип!!!

Как става работата така, че от сравително по-простия markdown код да генерирате epub? Отговорът е – чрез Pandoc

Pandoc всъщност може много повече от това, той може да генерира и PDF, DOCX, LaTeX и др. формати от markdown, което пък значи, че ако имате книгата-игра в Markdown, после можете по-лесно да генерирате каквито ви трябват формати. (Донякъде това прави и читанката, само че при тях форматът, в който пазят текста на книгите е друг)

Как става това обаче, ще обясня в друга тема :-)

Тук ще опитам да отговоря на друг въпрос - защо да използваме този вариант, а не някой от другите? Според мен, защото:

1. Спестява се хамалогията от ръното създаване на epub;
2. От изходния файл (markdown или html) можете да генерирате всички други формати и да си ги обработите в последствие на външен вид;
3. Можете да си напишете разни собствени скриптове за обработка на изходния файл.

Точка 3 е най-интересна - например можете да напишете скрипт, който сам номерира епизодите, вместо да го правите вие на ръка. Това може да стане например така:

1. Пишете книгата и давате на епизодите имена, вместо номера. Така ще ви бъде и по-лесно да нагласите препратките, защото имената се помнят по-лесно от числата. Например горният текст можеше да изглежда така:
отваряме вратата
----------
Отваряш вратата и какво да видиш – пингвин! Какво ще направиш?

- Ще го погледнеш отгоре - премини на &#91;гледаме пингвина отгоре&#93;
- Ще го погледнеш отстрани - премини на &#91;гледаме пингвина отстрани&#93;
- Ще го обърнеш и ще го погледнеш отдолу - премини на &#91;гледаме пингвина отдолу&#93;

гледаме пингвина отгоре
----------
Хм, пак виждаш пингвин. Върни се на &#91;отваряме вратата&#93;

гледаме пингвина отстрани
----------
Хм, пак виждаш пингвин. Върни се на &#91;отваряме вратата&#93;

гледаме пингвина отдолу
----------
Обръщаш го и какво да видиш - нивгнип!!!

2. Когато сте готови за публикуване пускате кратък скрипт, който да номерира епизодите. Това може да стане доста лесно:
Минавате веднъж по текста и събирате всички заглавия в хеш (ключът е името, стойността - поредният номер).
Минавате втори път по текста и променяте всички препратки така: ако целта на препратката е в хеша, подменяте я с нужния номер. Ако я няма в хеша, допускате, че е към нещо друго и я запазвате.

(BTW, ако някой пише на Word, това горното може да се реализира с един макрос на VBA, т.е. приложимо е и в други ситуации)

Необходим е Вход или Регистрация, за да се включите в темата.

  • 1
  • 1
Форум
/
Книги-игри
/
Работилница
/
Дигитализиране
/
Някои начини за създаване на epub
Time to create page: 0.044 seconds
Създадено с Kunena форум

Чат към Книги-игри.БГ

Българският сайт за книги-игри!

Дизайн на RocketTheme

Разработен от Victor Atanasov a.k.a. ringlas

Последно от форума

    • Търся да купя Ледената Цитадела (3 Мнения)
    • в Книжна борса / Търся / Разменям / Купувам
    • от logus
    • Today 17:31
    • Юбилеен конкурс 30 години книги-игри в България (13 Мнения)
    • в Събития, конкурси и инициативи / Конкурси
    • от Reiko
    • 18 Мар 2023 01:22
    • Трошача (17 Мнения)
    • в За заглавията от първата вълна / Сим Николов
    • от Der
    • 17 Мар 2023 22:49

За контакти

 
Knigi-Igri.BG
 
info@knigi-igri.bg