Pierwszym sposobem na rozwiązanie problemów z czytnikiem, który nie ma wbudowanych standardowo czcionek z polskimi literkami (tak jak na przykład nook), jest włączenie takich czcionek do każdej książki czy dokumentu w których polskich liter potrzebujemy. Sam próbowałem skorzystać z kilku znalezionych w sieci opisów mówiących jak tego dokonać, ale żaden nie zadziałał. Metodą prób i błędów, bazując na tym co znalazłem w sieci, wypracowałem sobie sposób, który dla mnie zawsze się sprawdza.
Poniżej lista kroków, które należy wykonać, aby otrzymać książkę/dokument w formacie EPUB z włączonymi w treść dokumentu czcionkami (ang. embeded fonts):
- Wciągnąć książkę do Calibry (przycisk Dodaj książki)
- Nawet jeśli nasza książka jest już w formacie EPUB, zaznaczyć książkę na liście i uruchomić konwersję do formatu EPUB (przycisk Konwertuj książki)
- Upewnić się, że Format wyjściowy ustawiony jest na EPUB (prawy górny róg ekranu konwersji)
- W ramce kart wybrać kartę Wygląd i zachowanie i do pola Dodatkowa stylizacja kodem CSS wprowadzić CSS definiujący nasze czcionki, np.:
@font-face { font-style: italic; font-family: 'Liberation', serif, sans-serif; font-weight: normal; src: 'url(LiberationSans-Italic.ttf)'; } @font-face { font-style: normal; font-family: 'Liberation', serif, sans-serif; font-weight: normal; src: 'url(LiberationSans-Regular.ttf)'; } @font-face { font-style: italic; font-family: 'Liberation', serif, sans-serif; font-weight: bold; src: 'url(LiberationSans-BoldItalic.ttf)'; } @font-face { font-style: normal; font-family: 'Liberation', serif, sans-serif; font-weight: bold; src: 'url(LiberationSans-Bold.ttf)'; } body { font-family: 'Liberation', sans-serif; }
- Następnie można zmienić inne ustawienia konwersji (lub nie) i wybrać przycisk OK aby konwersję w końcu uruchomić
- Po zakończeniu konwersji ponownie zaznaczyć książkę na liście i z menu kontekstowego wybrać opcję Tweak EPUB (lub wcisnąć literkę 'T')
- Kliknąć w nowo otwartym okienku przycisk Explode ePub
- Otwiera się kolejne okno nautilisa z tymczasową, rozpakowaną zawartością książki. Kopiujemy do tego okna czcionki w formacie TrueType. U mnie (Fedora) pliki czcionek siedzą sobie tutaj:
/usr/share/fonts/liberation/LiberationSans-BoldItalic.ttf
/usr/share/fonts/liberation/LiberationSans-Bold.ttf
/usr/share/fonts/liberation/LiberationSans-Italic.ttf
/usr/share/fonts/liberation/LiberationSans-Regular.ttf - Wyszukujemy w tym samym oknie nautiliusa plik
content.opf
i otwieramy go geditem czy innym ulubionym edytorem tekstu - Dodajemy do niego linijki z informacją o czcionkach, np.:
<item href="LiberationSans-Regular.ttf" media-type="application/octet-stream" id="id1"/> <item href="LiberationSans-Italic.ttf" media-type="application/octet-stream" id="id2"/> <item href="LiberationSans-BoldItalic.ttf" media-type="application/octet-stream" id="id3"/> <item href="LiberationSans-Bold.ttf" media-type="application/octet-stream" id="id4"/>
- Zapisujemy zmiany i zamykamy edytor.
- Możliwe, że arkusze stylów będą odwoływać się gdzieś do innych czcionek. W tym celu należy znaleźć i otworzyć plik
stylesheet.css
i wyszukać w nim ustawiania właściwościfont-family
. Jeśli ta właściwość występuje gdzieś z wartościami różnymi odserif
,sans-serif
czy nazwą "rodziny" załączanej czcionki (w moim przykładzie będzie to'Liberation'
) należy rozważyć zmianę tych ustawień. Po ewentualnej edycji, należy plik zapisać i zamknąć. - W okienku w którym wcześniej wcisnęliśmy Explode ePub, teraz klikamy w Rebuild EPUB.
- Teraz naszą książkę czy dokument można już wysyłać na nooka czy inny czytnik.
Uwagi
Zdarzyło mi się kiedyś, że załączona czcionka działa tylko dla tekstów z czcionką normalną, to znaczy niepogrubioną i nie kursywą (regular
). Wszystkie teksty, które używały czcionki pogrubionej lub stylu kursywy lub obu z tych formatowań na raz, używały nie załączonej czcionki ale aktualnie ustawionej w opcjach czytnika i oczywiście bez polskich liter. Co dziwniejsze polskie litery działały prawidłowo dla wszystkich krojów tylko wtedy gdy ustawiałem czcionkę na nooku na Light Classic
. Taki przypadek miałem tylko raz, nie wiem niestety z jakiej przyczyny. Mogę tylko podejrzewać, że:
- stało się tak z powodu mojego błędu w CSSie (ale czemu działało z czcionką
Light Classic
?) - stało się tak ponieważ miałem uszkodzone pliki czcionek - były to pliki ściągnięte z sieci, potem zacząłem używać plików z mojego systemu (nadal nie wyjaśnia czemu działało z ustawioną czcionką
Light Classic
) - przez błąd Calibre (używałem wtedy jakiejś jej starej wersji - nadal nie wyjaśnia czemu działało z ustawioną czcionką
Light Classic
) - przez błąd samego czytnika (czy też aplikacji do e-książek), gdzieś w międzyczasie wgrałem aktualizację do wersji 1.5.
Niestety książkę z tym objawem już skasowałem. Znalazłem gdzieś plik źródłowy, ale kolejna konwersja (w nowej Calibrze i na zaktualizowanego nooka) nie przyniosła takich samych rezultatów, tym razem wszystko działało prawidłowo.
* * *
Znalazłem też informację o tym, że ktoś napisał prosty plugin do Calibry, który umożliwia automatyczne załączanie czcionek do EPUB (http://www.mobileread.com/forums/showthread.php?t=61587&page=2#post789034) ale go osobiście nie testowałem i mam silne podejrzenie, że nie będzie chciał bez przeróbek działać na Linuksie.
Przykładowe książki w formacie EPUB z załączonymi czcionkami
Dla celów testowych, stworzyłem sobie dwa dokumenty w formacie EPUB z załączonymi czcionkami. Pierwszy z nich tylko z czcionką Liberation (normalna, pogrubiona kursywa i w różnych rozmiarach) a drugi z kilkoma innymi - moim zdaniem najładniejszymi ze standardowych czcionek Fedory. Poniżej kilka obrazków poglądowych. Oba dokumenty można znaleźć i pobrać sobie z pobieralni.