eKsiążki
https://forum.eksiazki.org/

„Hyphenate This!” - czyli tekst z przenoszeniem wyrazów
https://forum.eksiazki.org/calibre-f164/hyphenate-this-czyli-tekst-z-przenoszeniem-wyrazow-t14236.html
Strona 1 z 1

Autor:  zajeBEASTY [ 15 lut 2014 11:47:41 ]
Tytuł:  „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Wyjustowany tekst z przenoszeniem wyrazów to już nie problem, wtyczka „Hyphenate This!” w calibre rozwiązuję sprawę i dla mobi i dla epub. Polecam lekturę:

http://swiatczytnikow.pl/jak-podzielic- ... -lub-epub/

Autor:  t3d [ 15 lut 2014 12:52:46 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Przeniosłem z działu Amazona, bo to dotyczy nie tylko kindli...

Autor:  agnen01 [ 21 sty 2015 0:34:27 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

No jednak to nie takie proste. Użycie wtyczki Hyphenate w calibre może spowodować błąd w niektórych epubach. Jeśli tekst pliku html zawarty jest w całości w znaczniku div czyli w bloku to ADE może odwalić page break w dowolnym miejscu. Najczęściej na PB występuje to przed nagłówkami. Tekst bez podziału jest formatowany poprawnie. Po usunięciu wraca do poprawnego formatowania. Rozwiązaniem jest usunięcie tego bloku w arkuszu css, pamiętać jednak trzeba, że każda książka formatowana jest inaczej i trzeba sprawdzić co się stanie jeśli do div przypisana jest jakaś klasa.

Autor:  Artii [ 21 sty 2015 0:53:11 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

agnen01 napisał(a):
Jeśli tekst pliku html zawarty jest w całości w znaczniku div czyli w bloku to ADE może odwalić page break w dowolnym miejscu.


Nie spotkałem się z takim zachowaniem jak opisujesz.
(z chęcią bym zobaczył tego epuba, na priv jeśli można prosić)

Autor:  agnen01 [ 21 sty 2015 10:49:30 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Arti ten epub to np Wschodni Grom Pawełka. Po dodaniu podziału wyrazów PB 626 zrobił sobie page break przed "***". Podobnie zachowywał się PB 903 z innymi epubami, ale nie wiedziałem dlaczego i dlatego używałem FBreadera. Teraz w PB 626 mam tylko ADE i zaczeły mnie wkurzać błędy w HTML. Możliwe, że problem dotyczy tylko PB. Natomiast ja ostatnio składałem reklamację na dwie książki Dardy i przez przypadek odkryłem tą zależność opisując błędy w HTML popełnione przez oficynę.

czyli
<body>
<div> ( z klasą lub bez)
<p></p>
.....
.....
.....
.....
</div>
</body>

+ Hypenhate it

Pytanie: jest to bug Pocketbooka czy ADE? Nie wiem.
Jeśli ktoś zainteresowany to służę zdjęciami ekranu.

Autor:  SwFr [ 21 sty 2015 13:15:22 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

ADE wstawia pagebreak jeżeli w pojedynczym "rozdziale" czyli sekcji *.html jest zbyt dużo znaków.

Nie wiem niestety jaka to ilość.

Jeżeli epub bez podziału wyrazów mieści w sekcji "bezpieczną" ilość znaków, to po dołożeniu łączników (np. przez hyphenate it) - a łącznik jest traktowany jako znak - znaków robi się zbyt dużo.
Wtedy ADE robi podział sekcji czyli strony. Na ekranie. Oczywiście nie zmienia struktury pliku epub, ani nie wstawia fizycznych poleceń w style.css

Są książki, które składają się tylko z jednego rozdziału tekstowego (sekcji) + okładka + strona tytułowa + stopka.
ADA zawsze przełamie strony. Czy wyrazy będą podzielone czy nie - to już bez znaczenia.

Jeszcze inaczej zachowa się jeżeli w epub będzie sekcja z bardzo długim pojedynczym akapitem. Wtedy nie dzieli sekcji (bo nie ma gdzie) ale przerzucanie stron to istny koszmar. Nie tylko w czytniku - w komputerze też. A już nie daj boże zrobić tam zakładkę i wyłączyć czytnik. Powrót do czytania to przynajmniej 5 minutowe wczytywanie książki.

Kto czytał "Wschód" Stasiuka - ten wie o czym mówię.
Mam nadzieję, że autor się nie dowie, ale rozbiłem ten akapit w Sygilu na 3 części i wszystko wróciło do normy.

Tak przy okazji - to piękna książka.

Autor:  agnen01 [ 21 sty 2015 14:01:21 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

SwFr - sprawdź sobie czy w tej książce nie ma właśnie takiego kodu. Widzisz mogę ci przesłać lub udostępnić zdjęcia ekranów PB 626 przed i po usunięciu bloku div; z blokiem jest page-break, bez bloku nie ma. Możliwe, że body ma większą "pojemność" niż div.

Jeśli chodzi o div to taka nowa maniera wydafców polskich. (Gambit - Cholewy zawiera 4 bloki zawarte w sobie w jednym html-u). Ciekawostką jest wykorzystywanie w tych blokach klas, których wartości są zmieniane w poszczególnych (czytaj wszystkich) paragrafach przy pomocy innych klas.

Jeśli ktoś chce zobaczyć totalny bubel w kodowaniu to polecam Czarny Wygon t 1 i 2 Dardy.

W PB warto w epubach dodać w body {orphans:0; widows:0;}, co prawda nie jest to zbyt zgodne z polskimi zasadami, ale wyłącza podziały używane przez ADE i lepiej wygląda na ekranie.

Autor:  Artii [ 21 sty 2015 14:29:57 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

SwFr: takie epuby gdzie jest jeden plik zawierający prawie cała książkę zaczyna się niestety mnożyć. Wcześniej jak panowało stare sony ze swoim ograniczenie po przekroczeniu gdzie się wywalał to sprawa była prosta zrobiliście książkę która "psuje" czytnik - proszę o naprawę albo zwrot kasy.
A teraz to działa wszędzie tylko skakanie po takim "dokumencie" jest wolne. No i jak widać są też inne jazdy.

Doprecyzujmy w przypadku bardzo (ale bardzo) długiego diva display:block i długiego paragrafu (nie mieszczącego się na 1 stronie tekstu wliczając też znaki białe) potrafi złamać stronę w środku wyrazu bez patrzenia na &shy;.
Pytania otwarte:
Dodanie kilku divów(sekcji) pomaga?
Jaki to limit?
Czy obecność pliku reguł dla danego języka coś zmienia.

agnen01 napisał(a):
Pytanie: jest to bug Pocketbooka czy ADE? Nie wiem.

Nie do końca pewne* ale można sprawdzić pobierając Adobe Digital Edition na PC w wersji 3 i tam sprawdzić czy występuje (jeśli tak to ade winne, jeśli nie to nadal pewności nie ma - bo patrz gwiazdka)

* przy zabawie z regułami hyph_pl.dic spotkałem się że limity pamięci pomiędzy wersjami dla PC a na czytnik są inne.

Cytuj:
W PB warto w epubach dodać w body {orphans:0; widows:0;}, co prawda nie jest to zbyt zgodne z polskimi zasadami, ale wyłącza podziały używane przez ADE i lepiej wygląda na ekranie.

gdzieś czytalem że domyślnie w ADE jest {orphans:2; widows:2;}

Autor:  agnen01 [ 21 sty 2015 15:45:24 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Nie wiem, jak to będzie z kilkoma divami ale od dzisiaj likwiduję divy obejmujące cały wyświetlany tekst w pliku html. Najczęściej taki div to sztuka dla sztuki, a epub powinien być jak najprostszy po to by czytniki ( nie kompy) nie miały z nim problemów. Mam troszeczkę oryginałów w j. angielskim i tam takie cuda trudno spotkać.

{ophans:2; widows:2;} oznacza, że jeśli akapit ma 3 linijki tekstu i nie mieści się na stronie to cały zostanie przeniesiony na drugą ponieważ 1:2 i 2:1 jest niepoprawne, a to już dużo wolnego miejsca. Wartość 0 przynajmniej częściowo zablokuje radosną twórczość ADE. Druga sprawa: ADE potrafi złamać też linię w miejscu końca znacznika: patrz oryginalny Harry Potter (nie pamiętam tomu), w którym polskie znaki zostały wyróżnione znacznikami i w miejscu ich występowania linie pięknie się łamały dzieląc słowa.

Autor:  SwFr [ 21 sty 2015 22:53:26 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Artii:

Wzmiankowany "Wschód" oparty jest na div class.
Przed podziałem wyrazów zacina się, ale można wytrzymać - ciśnienia nie podnosi.

Wracam do ilości znaków i tu szukałbym przyczyny kłopotów:

Np. upierdliwa sekcja z dwoma akapitami:
1. akap. 17 000 znaków (ze spacjami 19 800)
2. akap. 20 800 znaków (ze spacjami 24 700)
Jak dołożymy do tego miękkie łączniki (nie chce mi się liczyć dla obu - podaję tylko dla 1 akap.) - przybyło 2400 znaków i od tej chwili zaczyna się jazda z cierpliwością czytelnika.

Żeby sprawdzić Twoją sugestię - przerobiłem epub na body. Liczba znaków się oczywiście nie zmieniła, i... wcale nie jest lepiej.
Dlatego winiłbym raczej ilość znaków/akapit lub znaków/sekcję niż kod. Nie wiem gdzie jest granica i od jakiej ilości znaków pojawiają się problemy - po tym co napisałem wyżej to okolice 20-24000.
Nie winiłbym PB - bo to samo jest na PC (może tutaj ciut lepiej, ale nie ma co porównywać mocy oblicz. procesorów, pamięci, ukł. graf. etc), - prędzej ADE. Widać on też ma swoją wytrzymałość :)

Na marginesie. Mimo, że Ade jest kapryśny (szczerze go nienawidzę za kłopoty z podziałem wyrazów pisanych kursywą czy pogrubioną) i tak uważam go za najdoskonalszy program jaki mamy na PB.

Autor:  agnen01 [ 22 sty 2015 19:49:40 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

SwFr masz rację. Najprawdopodobniej chodzi o ilość znaków. Po przekroczeniu granicy ADE robi page break. Przy wielkich plikach zamiana div na body nic nie zmienia. Jedynym rozsądnym rozwiązaniem jest kontrolowany break page przez podział (w Sigilu) pliku html na mniejsze pliki lub przypisanie do jakiegoś nagłówka h 1-3 klasy np .break{break-page-before:always;}. A jeśli chodzi o ADE to mam takie same odczucia: nienawidzę, ale nie ma nic lepszego.

Autor:  Artii [ 22 sty 2015 20:24:56 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

dla tl;dr tekst techniczny - skocz do następnego posta :D

No to zrobiłem sobie testowego epuba
w sumie sprawa prosta.
kilka htmli w tym jeden typu /body/div:block/p:justify
gdzie p to 130KB tekstu bez &shy; :P
A co!?
Dało to 45 stron adobowych gdzie 5 pierwszysch to inne testy.

ADE4@PC otwiera coś takiego, dostaje częstej zadyszki (nie za długiej) przy randomowym skakaniu po stronach ale działa.
Nie zauważyłem tam dziwnego podziału czy coś.*

ADE@PB otwiera takiego epuba (nie tak wolno jak się spodziewałem)
przejście do tego konkretnego pliku html to ~5-7sec.

Jakiekolwiek skakanie randomowe po stronach (z wyjątkiem następna) to test cierpliwości (czas w minutach) i powyżej ~60-80KB (jump do 25strony) kończąca się wyjściem z programu, sama zmiana kolejnych stron (1/2sec) znośna aczkolwiek łapiąca częste zaciachy, po około 50KB zmiana kolejnych stron nie znośnie wolna i zaciachy częstsze - włącznie z zamieraniem i przeskokiem o 2 strony(bo 2 razy następna). Doszedłem tak do ~100KB (bodaj 40strona) i program wyszedł z siebie.
Na więcej ochoty nie mam :)

I nadal nie zauważyłem problemu ciecia wyrazu gdziekolwiek. Aczkolwiek mam na czytniku reguły podziału dla języka polskiego i te podziały były w tym dokumencie i były raczej poprawne.
* (brak podziałów w PC - bo nie wgrałem odpowiedniego pliku)


Wynik: Paragraf nie powinien być dłuższy niż 2-5 stron adobowych, bo czytanie takiego bloba tekstu jest nie fajne.
Przekroczenie 20-30kB to proszenie się o kłopoty. Max pozwalający na nawigacje to ~50-60KB jeśli lubimy czekać kilka sekund na zmianę strony (dla next, i kilka minut dla random). Powyżej 60KB a do 100KB następuje wyjście z programu przy próbie skoczenia gdzieś. Po przekroczeniu 100KB nie możliwości czytania.

Autor:  agnen01 [ 22 sty 2015 21:21:29 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Artii - jeśli chcesz zobaczyć dzielenie wyrazów, o którym pisałem to weź sobie dłuższy paragraf i podziel w nim kilka wyrazów przy pomocy span , a potem zmieniaj wielkość czcionki.
Np.
<span>Tome</span>k<span>posz<span>e<span>dł</span>

- taki kod to norma dla wielu polskich publikacji. Ten podział nie ma nic wspólnego z regułami tylko ze znacznikami.

Autor:  Artii [ 22 sty 2015 22:02:10 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Cytuj:
<span>Tome</span>k<span>posz<span>e<span>dł</span>

aaaa to znany błąd w ADE wszelakich - to wtedy na dobrą sprawę nie ma znaczenia czy to block,inline
Jednak trzeba przyznać że poza wyjątkami z ozdobną pierwsza litera to już dawno nie miałem okazji zobaczyć spanów w środku wyrazu*

np spany watermarkowe trzymają się całych wyrazów.


* z legalnych źródeł - albo mam takie szczęście

Autor:  agnen01 [ 22 sty 2015 22:10:15 ]
Tytuł:  Re: „Hyphenate This!” - czyli tekst z przenoszeniem wyrazów

Masz szczęście - polecam wyżej wymienione książki Dardy. Muszę jednak ściągnąć je znowu i zobaczyć czy już nie poprawili.

Strona 1 z 1 Wszystkie czasy w strefie UTC + 1 [czas letni (DST)]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/