Lista winnt@man.lodz.pl
[Lista archiwów] [Inne Listy]

Re: [WINNT] [ot] MS Word/open office - zmiana kodowania dokumentu

To: winnt@man.lodz.pl
Subject: Re: [WINNT] [ot] MS Word/open office - zmiana kodowania dokumentu
From: "1634Racine" <mnjfmr@j.cbqebml>
Date: Thu, 8 Feb 2024 10:55:42 +0100
Grzegorz Niemirowski w news:uq0to1$3v7$1$grzegorz@news.chmurka.net
Otrzymałem oba dokumenty. I już na początku niespodzianka: oba pliki są w formacie RTF, w tym ten z rozszerzeniem .doc. Więc problem w ogóle nie dotyczy formatu .doc.
Otwieramy więc plik w Notatniku lub podobnym programie i patrzymy na
jakieś  miejsce, gdzie jest źle zakodowana polska literka, np.:
{\cf1\afs24\rtlch \ltrch\loch\fs24\loch\f7
co pomy\'9cl\'b9
Widać więc kody 9C i B9 w miejscu literek ś i ą. Szybkie przejrzenie
stron  kodowych pokazuje, że są to kody ze strony Windows1250.  Dlaczego
więc użyta  jest jakaś azjatycka? Przed tekstem widzimy znaczniki, w tym
ostatni  znacznik \f7. Oznacza on, że do tekstu ma być zastosowana
czcionka 7 z  tabeli czcionek. Tabela czcionek jest na początku pliku, w
znaczniku  \fonttbl. Szukamy tam definicji \f7:
{\f7\froman\fprq2\fcharset128 Bookman Old Style;}
Widzimy, że ma być użyta czcionka Bookman Old Style wraz ze stroną kodową 128. Z tabelki na https://en.wikipedia.org/wiki/Rich_Text_Format widać,
że  to strona Windows-932, czyli japońska. Tymczasem strona Windows-1250
ma kod  238. Czyli ktoś pomylił strony kodowe dla czcionek. Widać, że
taki sam błąd  jest w przypadku czcionki \f10, czyli Mangal. Wystarczy
więc w tym dwóch  miejscach podmienić 128 na 238. Analogicznie w drugim
pliku. Naprawa tych  plików jest więc bardzo prosta i sprowadza się do
zamiany jednej liczby na  drugą w kodzie RTF.

ups, faktycznie, oba sa rtf.
i wow, jaka mistrzowska analiza/metoda, dzieki :) Pozniej te chwyty przepracuje na plikach, bowiem koniecznie chce z nich mobi wykonac w calibre, czyli niech najpierw rtf-y beda doprowadze do jadalnej postaci. I rozumiem (+ widze, sprawdzilem), ze jesli takim pogruchotanym plikiem bylby (faktyczny) doc, to trzeba go najpierw zapisac/przekonwertowac do rtf.
btw:
ta metoda, com opisal wczesniej, dawala mi co prawda postac pliku typu "....{\cf1\afs24\rtlch \ltrch\loch\fs24\loch\f7...." (mam na mysli "wyglad" tekstu) i widzialem jakies zagadkowe nazwy czcionek, typu mangal wlasnie, zaczalem nabierac przekonania, ze jest jakies "pomieszane" kodowanie,moze inaczej: pomieszanie stron kodowania. Ale nie czulem, co z tym zrobic.
zobacze, jak bedzie problem, dopytam.
thx

<Pop. w Wątku] Aktualny Wątek [Nast. w Wątku>