M³ody technik-roczniki

Jan 01, 1970 19 Replies

Osoba podpisana jako Dariusz Dorochowicz <dadoro@_wp_._com_>

w artykule <news:5e843b57$0$551$ snipped-for-privacy@news.neostrada.pl> pisze:

Pliki są uszkodzone przez lamera, który pobrał je z chomika, ale się musiał podpisać i dokleił swoją sygnaturkę 4H.Sz.until.End.of.Time! do sygnatury końca pliku.

Poprawnie na końcu pliku PDF jest _linia_ z napisem %%EOF (End Of File). Niektóre czytniki sprawdzają tylko, czy w pliku znajduje się linia _zaczynająca_ się od %%EOF, resztę znaków ignorują. Adobe Reader sprawdza całą linię.

Niestety część programów generuje plik PDF bez znaków końca linii po EOF, więc doklejenie czegoś zmienia zawartość tej linii. Adobe Reader ignoruje kolejne znaki, jeśli są one w _następnej_ linii, a nie w tej samej.

Czyli jak zwykle - jakiś debil popsuł. Dzięki za wyjaśnienie.

sundayman napisał:

Acrobat Reader pisze "The file is damaged and could not be repaired", ale chyba nie wie co pisze. Wystarczy hexedytorem wymieniony wyżej napis zastąpić spacjami -- i już nie jest "repaired" i ani trochę "damaged". W zasadzie to wystarczy jedną spację umieścić zamiast początkowej czwórki w napisie.

Osoba podpisana jako Jarosław Sokołowski snipped-for-privacy@lasek.waw.pl>

w artykule <news: snipped-for-privacy@falcon.lasek.waw.pl> pisze:

Nie tak. To jest ogólny komunikat błędu wyświetlany również, kiedy faktycznie brakuje końca pliku, czego oczywiście nie da się naprawić.

W zasadzie całą lamerską sygnaturkę można obciąć. A jak zastępować, to lepiej zastąpić 4H znakami końca linii: 0x0d0a, żeby się nie okazało, że jakiś czytnik jest jeszcze bardziej gorliwy. Na szczęście nie wszystkie pliki na archive.org pochodzą z tego źródła.

Pan Andrzej P. Wozniak napisał:

Toć przeca mówię: nie wie, co pisze. W swojej ogólności traci rozróżnienie między tym co się da, a czego się nie da.

Jasne, że można obciąć, ale edytor plików binarnych zawsze jakiś pod ręką jest, z obcinaczką bywa gorzej. A czy lepiej -- pewnie tak, ale sam nie wiem, czy gdzieś jest wymagane, by po EOF był koniec wiersza.

"head -c -[długość ogona]" nie wystarczy do obcięcia?

Pan Artur Stachura napisał:

No faktycznie, wystarczy. Ogony trzeba obcinać z głową, warto zapamiętać.

W dniu 2020-04-03 o 16:59, Jarosław Sokołowski pisze:

Wiele nie myśląc (niewątpliwie, choć zainspirowany podaną informacją) pod notepad++, bez żadnych dodatków, zakończyłem linijkę. Wystarczyło. Aż się zdziwiłem. Ale ja Acrobat Readera to rzadko używam.

Pozdrawiam

DD

Osoba podpisana jako Jarosław Sokołowski snipped-for-privacy@lasek.waw.pl>

w artykule <news: snipped-for-privacy@falcon.lasek.waw.pl> pisze:

Po prostu nie wdaje się w szczegóły. Nie widzi poprawnej sygnatury końca pliku, więc zakłada przypadek bardziej prawdopodobny, a równoczesnie gorszy. Komunikat błędu jest dla opornych, bo takie są zalecenia marketoidów.

Nie wiesz, co piszesz. Mylisz hex edytor w trybie edytora dyskowego (zwykle tylko kopiuj i wklej w trybie nadpisywania) z trybem edycji pliku (można też wstawiać i wycinać, obcinać początek lub koniec).

W plikach, które przeglądałem, po EOF był zawsze jakiś EOL (najczęściej Windows, ale czasem też Linux albo Mac) albo nic. Po EOL mogło być jeszcze coś, np. podpis cyfrowy (nie znalazłem takiego pliku, więc nie sprawdziłem) czy kod html z niedorobionego serwera http (takie śmieci pojawiają się regularnie doklejone do różnych plików, w przypadku archiwów program 7-zip rygorystycznie przestrzegający standardów zawsze o tym ostrzega).

Pan Andrzej P. Wozniak napisał:

Gdyby poprzestał na czterech pierwszych słowach opisujących znane mu fakty, a część synoptyczną sobie odpuścił, to by było jeszcze bardziej dla opornych. Opieranie komunikatów na przypuszczeniach nie jest dobrym zwyczajem.

2020-04-04 o 13:13 +0200, Jarosław Sokołowski napisał:

No ale przecież dobrze pisze. Plik uszkodzony i [programowi] nie udało się go naprawić (bo nie umie). Może inne programy potrafią, ale to poza konkursem.

Mateusz

Pan Mateusz Viste napisał:

Gdyby tak pisał *edytor* plików PDF, to owszem. Ale to jest komunikat

*czytnika*, po którym nikt się nie spodziewa, że będzie modyfikował piliki.

"sundayman" news:r608o3$1tjpg$ snipped-for-privacy@portraits.wsisiz.edu.pl

Acrobat to spuchnięte, ślimakowate g...

Wskazane PDF-y, bez zająknięcia otwiera PDF-XChange Viewer

formatting link
nie trzeba przerabiać, wycinać w plikach z konfliktowego archiwum ZIP.

Zresztą większość artykułów z archiwum Młodego Technika jest tutaj do pobrania

formatting link

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required