Mówiąc o edytorach tekstu, od razu przedstawiamy koryfeusza w postaci programu Microsoft Word, który od wielu lat jest na podium wśród aplikacji biurowych. I choć jego pierwsza wersja pojawiła się w 1986 roku dla platformy IBM, to prawdziwą popularność zdobył w latach dziewięćdziesiątych już wśród użytkowników Windows. Jak wszystkie ówczesne produkty Microsoftu, Word posiadał swój własny, zamknięty format dokumentów DOC. Monopol na format doc nie zmęczył jednak wielu, a na fali rozwoju ruchu open source w latach 2000 pojawił się alternatywny procesor tekstu o otwartym formacie odt. W 2006 roku otrzymał on międzynarodową normę ISO/IEC 26300.
I mimo wielu negatywów w jego kierunku, zyskał popularność wśród fanów oprogramowania open source. Format ten nie zdołał jednak zaistnieć na rynku klientów korporacyjnych. Zbyt długo Microsoft był dominującym produktem w oprogramowaniu biurowym. Ogromna liczba dokumentów była tworzona w formacie doc, a ogromna liczba użytkowników została przeszkolona do pracy z Wordem.
Jednak Microsoft musiał zareagować na nowy otwarty format i MS Office 2007 wprowadza nowy otwarty format DOCX. Jego przeznaczenie jest takie samo jak DOC, ale w istocie jest to zupełnie inny format, który wykorzystuje zasady ODT. Jednocześnie Microsoft zdjął zasłonę tajemnicy ze swojego starzejącego się formatu DOC. Co więcej, w kolejnych wersjach MS Word obsługiwał już ODT. Ale nie ominęło to również produktów posesywnych. Teraz każdy "szanujący się" edytor tekstu obsługuje wszystkie trzy formaty.
Rozważmy teraz każdy z tych formatów nieco bardziej szczegółowo.
Format DOC
Jego nazwa nie jest akronimem, lecz skrótem od słowa document. Format ten pochodzi z początku lat 90-tych i jest używany do dziś. Chociaż w 2007 roku stracił na znaczeniu z powodu nowego, docelowego formatu docx. Jednak po ujawnieniu specyfikacji tego formatu w 2007 roku, wszystkie nowoczesne edytory tekstu zaczęły go obsługiwać, ze względu na ogromna liczbę dokumentów doc. w tym czasie.
Jego wewnętrzna struktura jest dość złożona i reprezentuje cały system plików. Jest to plik binarny i można go otworzyć tylko za pomocą specjalnego procesora tekstu, takiego jak MS Word lub OpenOffice Text. Format doc pozwala na przechowywanie obrazów, multimediów i innych plików wewnątrz dokumentu, ale jego główną zaletą jest obsługa stylów kaskadowych.
Format ten rozszerza możliwości rtf i pozwala na stosowanie stylów kaskadowych, tabel, znaczników arkusza, makr, formatowania dokumentu, obrazów, diagramów, różnych metadanych. Zaspokaja więc większość potrzeb użytkowników w zakresie dokumentów elektronicznych.
Format ODF
Jak wspomniano powyżej, format ten został stworzony jako alternatywa dla formatu doc. Wiele organizacji, które były częścią społeczności OASIS, pracowało nad tym standardem. A w 2006 roku przyjęto jego standard ISO/IEC 26300.
Dokument oparty jest na języku znaczników XML, umieszczony w archiwum ZIP. Oprócz samego dokumentu, archiwum zawiera pliki, do których odwołuje się dokument (obrazy), metadane, itp. Jednak dzięki zastosowaniu archiwizacji, plik odf jest bardzo lekki w porównaniu do doc. Ponieważ mówimy o edytorze tekstu, właściwym określeniem jest odt, a nie odf. W końcu ODF pisze całą rodzinę formatów: odt dla edytorów tekstu, ods dla procesorów tabelarycznych, odp dla prezentacji elektronicznych.
Natywnym (zaprojektowanym specjalnie dla niego) rozwiązaniem biurowym stworzonym dla formatu ODF jest OpenOffice. Podobnie jak Microsoft Office, zawiera on cały zestaw programów biurowych do pracy z: tekstem, tabelami, prezentacjami, grafiką wektorową, bazą danych i formułami.
Jak już zauważyliście wcześniej, format ODT obsługuje wiele różnych edytorów tekstu, takich jak MS Word, a ODF rozwiązanie LibreOffice, OpenOffice, i darmowe Google Document.
Oczywiście, pierwsza generacja formatu ODF 1.0 miała swoje wady, np:
- Brak opisu specyfikacji makra;
- Brak opisu stosowania podpisów cyfrowych, choć pakiet biurowy pozwala na ich stosowanie;
- Nie ma możliwości wstawiania tabel do prezentacji, choć MS PowerPoint na to pozwala;
- Brak standardowego języka formuły.
Część z nich została poprawiona w wersji 1.2. Jednak główną wadą, według użytkowników, jest niemożność poprawnego odtworzenia dokumentów doc stworzonych wcześniej w MS Office. To znaczy, otwierają się, oczywiście, ale nie wyglądają tak samo jak w natywnym programie. Jednak do czasu pojawienia się OpenOffice, większość dokumentów elektronicznych była w formacie doc. Ale z formatem docx sprawy są znacznie lepsze.
W ten czy inny sposób, ale Microsoft Office praktycznie nie oddał swojej pozycji na rynku, a dzięki pojawieniu się otwartego formatu docx zdobył zaufanie zwolenników open source.
Format DOCX
Format DOCX, aka Office Open XML, aka Microsoft Open XML, aka Office Open XML. Powstał w 2007 roku w odpowiedzi na pojawienie się otwartego ODF i wykorzystuje tę samą zasadę tworzenia pliku - archiwum zip, które przechowuje xml samego dokumentu oraz pliki, do których odwołuje się dokument(y), a także pliki z metadanymi. Przewagą nad ODF jest potężny backend MS Office. Miliony użytkowników nie chciałyby rezygnować z poręcznego narzędzia, aby przejść na wolny format. Jednak zamknięty format doc zobowiązywał klientów korporacyjnych do płacenia dużych pieniędzy amerykańskiej korporacji. W ten sposób Microsoft utrzymywał swoich klientów, którzy "zerkali" na ODF.
DOCX jest standaryzowany: wykorzystuje specyfikacje ECMA-376, ISO/IEC 295000 i ISO/IEC 29500 Strict.
Porównanie.
A jeśli format doc jest strukturalnie różny od docx, to docx i odt są w zasadzie identyczne. Oba są kontenerami zip z dokumentami xml w środku. Każdy z nich ma swoje wady i zalety. Ale oba są lepsze od doc przynajmniej pod względem wielkości pliku. Dzięki archiwizacji treści dokumentu, rozmiar pliku jest znacznie mniejszy - 2-3 razy mniejszy w zależności od ilości multimediów i treści graficznych.
Który z tych dwóch formatów jest lepszy, docx czy odt. Choć edytory tekstu zapewniają obsługę formatów konkurencji, ich wyświetlanie nie różni się najlepiej od oryginału. Dlatego nie możemy powiedzieć, że istnieje uniwersalne rozwiązanie dla wszystkich formatów. Trzeba będzie wybrać format z zakresu zastosowania. Jeśli chodzi o duże przedsiębiorstwa, które używały przed MS Office, to oczywiście mają duże archiwum dokumentów w formacie doc, a wymiana dokumentów z innymi przedsiębiorstwami odbywa się najprawdopodobniej w formacie docx. Nikt lepiej niż MS Word nie potrafi wyświetlać dokumentów we własnych formatach, przynajmniej na razie. W tym przypadku jest korzystniejsze używanie MS Word z formatem docx.
Jeśli Twoim celem jest porzucenie płatnego oprogramowania biurowego i nie zależy Ci zbytnio na kompatybilności formatów, odt jest w stanie zastąpić zarówno doc, jak i docx. Wiele dużych przedsiębiorstw już przeszło na OpenOffice, co oznacza, że to zadanie jest całkiem wykonalne.
DOCX i ODT w generatorze raportów
Mówiąc o dokumentach biurowych, nie sposób nie pomyśleć o raportowaniu. Nowoczesne generatory raportów muszą wspierać eksport raportów do najbardziej popularnych formatów dokumentów. Na przykład generator raportów FastReport.NET wspiera eksport do formatów docx i odt. Eksport jest "wyostrzony" w celu poprawnego wyświetlania przede wszystkim w natywnym edytorze tekstu.
Tak wygląda oryginalny raport, który wyeksportujemy do obu tych formatów:
Wyeksportujmy raport do formatu Microsoft Word (docx):
Tak to wygląda w MS Word:
A to jest eksport do formatu odt podczas przeglądania w MS Word:
Eksport do DOCX z jakiegoś powodu ma małe czcionki wewnątrz tabel, ale ramka odpowiada oryginalnemu raportowi.
ODT okazał się być bliższy oryginalnej wielkości czcionki, ale ramka nigdzie się nie mieści. Zauważ, że Word otworzył odt z nieco gorszym formatowaniem niż OO Writer.
Tak jak wyświetlanie dokumentów o tym samym formacie w różnych programach nie jest takie samo, tak samo generator raportów w różny sposób konwertuje raport do różnych formatów.
Z powyższego możemy wywnioskować, że nawet użycie tego samego formatu nie da tak samo wyglądającego dokumentu w różnych edytorach tekstu z powodu różnych implementacji. Dlatego lepiej jest używać edytora tekstu z natywnym formatem i nie rozwodzić się nad uniwersalnością.