Teraz jest 20 lut 2019 12:28:42




Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 180 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5, 6, 7 ... 12  Następna strona
epubQTools - skrypt do walidacji i konwersji ebooków 
Autor Wiadomość
Użytkownik

Dołączył(a): 07 maja 2013 10:27:48
Posty: 80
eCzytnik: KindlePaperwhite
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
czyli szukanie igły w stogu siana... Przy ebookach Mayfly nie ma w ogóle nagłówków h1, h2, h3....


15 kwi 2014 13:08:23
Zobacz profil WWW
Użytkownik
Avatar użytkownika

Dołączył(a): 22 sty 2014 19:44:49
Posty: 183
eCzytnik: Kindle Voyage, Paperwhite, Classic
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Jeszcze skróciłem test case:
Kod:
<?xml version='1.0' encoding='utf-8'?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <link href="../Styles/stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
  <h1>test</h1>
  <p>test</p>
</body>
</html>


i style CSS:
Kod:
@font-face {
  src: url(../Fonts/Lobster.otf);
  font-family: "Lobster 1.4";
  }

p {
  font-family: "Lobster 1.4";
}


Wystarczy np. dać np.

Kod:
p, h1 {
  font-family: "Lobster 1.4";
}

A font nie zostanie wycięty

_________________
Robert Błaut
http://blog.blaut.biz
poczta: listy małpa blaut kropa biz


15 kwi 2014 13:37:31
Zobacz profil WWW
Użytkownik

Dołączył(a): 07 maja 2013 10:27:48
Posty: 80
eCzytnik: KindlePaperwhite
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Próbuje znaleźć analogię do pliku css który znaleźć można we "wszystko za Everest". tam żaden plik w środku nie ma nagłówków, a każdy zaczyna się jakimś div-em.
W sumie to zastanawia mnie ten brak nagłówków, który pozwala automatycznie stworzyć spis treści. czy nie łatwiej jest zdefiniować nagłówki niż potem przy każdej zmianie musieć edytować plik "toc.ncx"...?


15 kwi 2014 14:10:04
Zobacz profil WWW
Użytkownik
Avatar użytkownika

Dołączył(a): 22 sty 2014 19:44:49
Posty: 183
eCzytnik: Kindle Voyage, Paperwhite, Classic
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
UncleLion napisał(a):
czy nie łatwiej jest zdefiniować nagłówki niż potem przy każdej zmianie musieć edytować plik "toc.ncx"...?
A to pytanie akurat do programu, który wygenerował ten plik: <meta content="Adobe InDesign" name="generator" /> ;)

_________________
Robert Błaut
http://blog.blaut.biz
poczta: listy małpa blaut kropa biz


15 kwi 2014 14:16:14
Zobacz profil WWW
Użytkownik

Dołączył(a): 07 maja 2013 10:27:48
Posty: 80
eCzytnik: KindlePaperwhite
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
quiris napisał(a):
UncleLion napisał(a):
czy nie łatwiej jest zdefiniować nagłówki niż potem przy każdej zmianie musieć edytować plik "toc.ncx"...?
A to pytanie akurat do programu, który wygenerował ten plik: <meta content="Adobe InDesign" name="generator" /> ;)


Jakoś małomówny jest ten program :)

Zatem dochodzimy do miejsca w którym cieżko wskazać co tak naprawdę może powodować wywalanie się czcionek. Może sam Amazon nie wie co im w systemie krzaczy (skoro nie odpowiedział Ci wcześniej na zgłoszenie)....


EDIT:
Wszystko za Everest rozgryzłem. Ale nie sądzę by to było regułą przy problemie znikania "publisher font" przy wysyłce do chmury. Oto co zrobiłem:
- Usunąłem nieużywane arkusze stylów (Sigil robi to automatycznie), a sporo ich tam.
- Podmieniłem czcionkę na jakąś sprawdzoną (co wcześniej pisaliśmy), czyli usunąłem stare fonty, dodałem nowe i uaktualniłem zapis w pliku CSS
- z racji, że w tym ebooku jest używany tylko jeden typ czcionki dodałem w CSS "body":
Kod:
body{
   font-family: "czcionka xxx";
}

- z pozostałych stylów usunąłem "font-family" bo zostało zdefiniowane w "body"

I zadziałało.

Spróbowałem z drugą książką "Helikopter w ogniu" i także zadziałało. Ale tutaj także nie wystarczyło dodać "body" ze zdefiniowaną czcionką. Ruszyło dopiero gdy usunąłem "font-family" z innych klas.


15 kwi 2014 16:24:58
Zobacz profil WWW
Użytkownik
Avatar użytkownika

Dołączył(a): 22 sty 2014 19:44:49
Posty: 183
eCzytnik: Kindle Voyage, Paperwhite, Classic
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Dzięki za sprawozdanie. Podejrzewałem, że problem jest związany z miksowaniem różnych rodzajów fontów (definicji) w stylach, no ale to i tak nie usprawiedliwia Amazonu, bo takie miksowanie jest dozwolone w świetle standardu CSS. W moim test casie też jest miksowanie fontów (domyślnego nieosadzonego i tego osadzonego lobster.otf)

PS. Przypomniałem się z problemem w Amazonie. Niestety gość z którym rozmawiałem kompletnie nie miał pojęcia o technicznych aspektach. Mam nadzieję, że pchnie to co mu napisałem do jakiejś banglajacej osoby.

_________________
Robert Błaut
http://blog.blaut.biz
poczta: listy małpa blaut kropa biz


15 kwi 2014 19:03:36
Zobacz profil WWW
Użytkownik

Dołączył(a): 07 maja 2013 10:27:48
Posty: 80
eCzytnik: KindlePaperwhite
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Nie ma sprawy - choć raz nie tylko pytam ale udało mi się rozkminić jakiś problem (nawet jeżeli będzie dotyczył tylko ebooków wspomnianego wydawnictwa....) Zresztą z wydawnictwem próbuje się skontaktować aby wskazać im rozwiązanie.

Trzymam kciuki - może tym razem Amazon nie oleje problemu....


15 kwi 2014 19:14:04
Zobacz profil WWW
Użytkownik
Avatar użytkownika

Dołączył(a): 22 sty 2014 19:44:49
Posty: 183
eCzytnik: Kindle Voyage, Paperwhite, Classic
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Zgodnie z sugestią Artiiego i w oparciu o rozwiązania z calibre dodałem wsparcie odszyfrowania zaszyfrowanych fontów. Niestety, zauważyłem, że w paru plikach, które posiadam, m. in. Wszystko za Everest fonty zostały zaszyfrowane innym kluczem niż ten w książce. Podejrzewam, że osoba przygotowująca plik niefrasobliwie skopiowała zaszyfrowane pliki fontów z innej publikacji, bądź zmieniono później klucz szyfrujący w pliku OPF.

PS. Jeszcze nie zaktualizowałem pliku exe, więc na razie można testować tylko przy pomocy pythona.

_________________
Robert Błaut
http://blog.blaut.biz
poczta: listy małpa blaut kropa biz


24 kwi 2014 15:04:24
Zobacz profil WWW
Użytkownik

Dołączył(a): 07 maja 2013 10:27:48
Posty: 80
eCzytnik: KindlePaperwhite
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Przy dwóch tytułach zauważyłem że może pojawić się problem ze sprawdzeniem i przygotowaniem ebooka poprzez skrypt.
Pierwszy to Jestem bardzo w rękach Bożych: Notatki osobiste 1962-2003
Drugi: Żelazny kostur

Program przestaje przygotowywać ebooka (funkcja -e ) i daje komunikat o Entity '....' not defined. Dla przykładu w przypadku pierwszej książki jest to "&harr;"


30 kwi 2014 15:07:03
Zobacz profil WWW
Użytkownik
Avatar użytkownika

Dołączył(a): 22 sty 2014 19:44:49
Posty: 183
eCzytnik: Kindle Voyage, Paperwhite, Classic
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Dzięki za info. Rzeczywiście problem encji załatwiłem na razie brzydko - wymieniając te najczęściej występujące na ich unikodowe odpowiedniki, ale widzę, że muszę posiedzieć nad kompleksowym rozwiązaniem.

PS. Sprawdzałeś na najnowszej wersji z githuba, czy na execu? Program się dosyć dynamicznie rozwija, że nie mam nawet czasu siedzieć nad kompilacją execa ;)

_________________
Robert Błaut
http://blog.blaut.biz
poczta: listy małpa blaut kropa biz


30 kwi 2014 15:25:30
Zobacz profil WWW
Użytkownik

Dołączył(a): 07 maja 2013 10:27:48
Posty: 80
eCzytnik: KindlePaperwhite
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
na wersji z githuba ale chyba nie najnowszej. pobrałem jeszcze raz pliki i teraz w ogóle jakaś kaszanka się robi. wystakuje mi komunikat ImportError: No module named PIL


30 kwi 2014 15:31:49
Zobacz profil WWW
Użytkownik

Dołączył(a): 27 mar 2014 2:17:52
Posty: 541
eCzytnik: PB Mini, czasem InkBook
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
W sumie to się dziwie że taka podstawowa biblioteka jaką jest PIL nie jest w standardzie :)

W py3 mamy html.entities a w py2 to było... o jest htmlentitydefs .


30 kwi 2014 15:46:25
Zobacz profil
Użytkownik
Avatar użytkownika

Dołączył(a): 22 sty 2014 19:44:49
Posty: 183
eCzytnik: Kindle Voyage, Paperwhite, Classic
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
UncleLion napisał(a):
na wersji z githuba ale chyba nie najnowszej. pobrałem jeszcze raz pliki i teraz w ogóle jakaś kaszanka się robi. wystakuje mi komunikat ImportError: No module named PIL
Biblioteka PIL jest mi potrzebna do sprawdzenia, czy odszyfrowany font jest prawidłowy. Bibliotekę możesz doinstalować pobierając ją z tego miejsca: http://www.pythonware.com/products/pil/ Pamiętaj, żeby to była wersja dla Pythona 2.7, bo o ile dobrze wiem, taką wersję posiadasz.

Przed chwilą dodałem odpowiednie modyfikacje do kodu, które jeśli stwierdzą, że biblioteki PIL nie ma to pominą tę dodatkową kontrolę, o której pisałem powyżej: https://github.com/quiris11/epubQTools/ ... b4741768f6 Natomiast program będzie już działał prawidłowo.

_________________
Robert Błaut
http://blog.blaut.biz
poczta: listy małpa blaut kropa biz


30 kwi 2014 17:41:12
Zobacz profil WWW
Użytkownik

Dołączył(a): 07 maja 2013 10:27:48
Posty: 80
eCzytnik: KindlePaperwhite
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Zainstalowałem bibliotekę. Z kolei teraz mam komunikat: "The _imagingft C module is not installed"


30 kwi 2014 21:39:59
Zobacz profil WWW
Użytkownik
Avatar użytkownika

Dołączył(a): 22 sty 2014 19:44:49
Posty: 183
eCzytnik: Kindle Voyage, Paperwhite, Classic
Post Re: epubQTools - skrypt do walidacji i konwersji ebooków
Ach… Ten PIL nie ma obsługi freetype. Odinstaluj tę bibliotekę i zainstaluj Pillow 2.4.0 (Pillow‑2.4.0.win32‑py2.7.exe) z tej strony: http://www.lfd.uci.edu/~gohlke/pythonlibs/#pil

_________________
Robert Błaut
http://blog.blaut.biz
poczta: listy małpa blaut kropa biz


30 kwi 2014 21:55:44
Zobacz profil WWW
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 180 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4, 5, 6, 7 ... 12  Następna strona


Kto przegląda forum

Użytkownicy przeglądający to forum: Brak zalogowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów

Skocz do: