Dokument biznesowy (klasa mkofficial.cls)
Wprowadzenie
Standardowe style LaTeXa, o ile są poręczne do prac naukowych, o tyle niespecjalnie pasują do zastosowań biznesowych. Oczywiście, teoretycznie łatwo można sobie wygląd pierwszej strony czy nagłówków dopasować, w praktyce jednak dla wielu osób staje się to poważnym problemem. Stąd poniższa próba: prosta klasa dokumentu, która stara się nadać dokumentowi składanemu w LaTeXu wygląd zbliżony do paru 'korporacyjnych' szablonów, jakie widziałem (oczywiście szablony te zwykle są dostępne w Wordzie).
Pliki do pobrania
Informacje techniczne
Co obejmuje poniższa klasa? Opierając się na standardowym stylu raport wprowadza kilka nowości:
- specyficzną stronę tytułową i stronę z informacjami o dokumencie;
- charakterystyczne nagłówki i (zwłaszcza) stopki;
- nietypowy sposób rozpoczynania rozdziałów ('eleganckie' tytuły dla \chapter, czcionka bezszeryfowa dla tytułów wszystkich poziomów);
- oddzielanie akapitów odstępami bez stosowania wcięć (celowo: w dokumentach biznesowych nagminne są bardzo krótkie akapity, akapity gęsto przetykane obrazkami czy wyróznionymi cytatami itp - a dla nich, przynajmniej moim zdaniem, wcięcia wyglądają i wyróżniają gorzej niż odstępy; ekstremalny przykład to sytuacja, gdy mamy trzy kolejne akapity z których każdy mieści się w jednym wierszu);
- przy zachowaniu 'kropkowanych' list (które w dokumentacji biznesowej stanowią powszechny standard) zmniejszone nadmierne odstępy między ich elementami;
- zredefiniowana klasa znaku _ (podkreślenie) aby był traktowany jako zwykła litera (przynajmniej w moim wypadku nazwy plików czy zmiennych trafiają się istotnie częściej niż wzory matematyczne, jeśli gdzieś jest inaczej, można tę dyrektywę usunąć).
Celowo ustaliłem rozmiar czcionki oraz wykorzystywane fonty - w szablonie biznesowym takie rzeczy nie powinny podlegać modyfikacjom (oczywiście można zmienić te ustalenia 'raz a dobrze').
Klasa obsługuje opcję twopage, modyfikując przy jej obecności niektóre ustawienia (np. zawartość nagłówka i stopki).
Nie sądzę, by mkofficial dał się całkowicie bezpośrednio zastosować w praktyce (na pewno konieczne będzie dopasowanie zawartości strony informacyjnej, mogą być przydatne też rozmaite inne korekty) ale mam nadzieję, że może stanowić przydatny punkt wyjściowy (oraz dowód, że także w takich zastosowaniach LaTeX może być przydatny).
Lista plików w archiwum
Archiwum zawiera następujące pliki
- mkofficial.cls - definicja klasy
- supersoft.sty, supersoft.png, supersoft.eps - przykładowe pliki dostosowujące mkofficial do konkretnej firmy (obrazek w formacie png używamy stosując pdflatexa, obrazek w formacie eps stosując latexa)
- przyklad.tex - przykładowy plik korzystający z klasy
- przyklad.pdf - wynik opracowania go pdflatexem.
Wykorzystanie mkofficial
Chcąc bezpośrednio użyć klasy mkofficial należy:
- stworzyć odpowiedniki plików supersoft.* właściwe dla danej firmy (plik .sty zawierający adres, standardowy zbiór restrykcji itp oraz dodatkowe pliki graficzne z logo);
- umieścić mkofficial.cls oraz powyzsze pliki w katalogu roboczym albo stworzyć dla nich wydzielony katalog w drzewie texmf (np. /usr/local/texmf/tex/latex/mkofficial), skopiować tam pliki i uruchomić polecenie texhash;
- utworzyć w katalogu roboczym właściwy plik źródłowy wzorując preambułę na przyklad.tex (oczywiście adaptując pola typu nazwisko autora, tytuł dokumentu, data jego powstania);
- kompilować go poleceniami latex lub pdflatex.
Następnie zostaje już tylko skorygowanie szablonu tak, by odpowiadał potrzebom danej organizacji (a także sposobowi kontroli wersji dokumentów - zamieszczone w mojej wersji słowka RCS działają dla RCS i CVS, inne narzędzia mogą mieć inne potrzeby).
Zależności
Klasa wykorzystuje całą serię pakietów LaTeXowych, z których większość jest standardowo instalowana a wszystkie są dostępne na CTAN. W typowych instalacjach mogą być niedostępne i wymagać doinstalowania:
- pakiet rcs;
- czcionki Quasi wraz z stylami wspomagającymi ich użycie.
Planowane i nieplanowane zmiany
Otrzymałem już pewne uwagi dotyczące wybranych przeze mnie w różnych miejscach dokumentu czcionek. Raczej nie planuję tutaj istotnych zmian w 'moim' przykładzie (co nie oznacza, że ewentualni użytkownicy nie mogą sobie skonfigurować zgoła innego wariantu). Natomiast chętnie doprowadziłbym do stanu, w którym selekcja czcionek stanowiłaby prosty wydzielony fragment szablonu (tak by np. czcionka używana w paginie była zdefiniowana raz i tylko raz i łatwa do skorygowania). Byłbym wdzięczny za sugestie jak to najładniej zrobić.
Chętnie zbieram propozycje dodatkowych pól do zamieszczenia w ramach "informacji o dokumencie", dodatkowych stron informacyjnych, uzupełnień strony tytułowej itp. Zarazem, proszę o sugestie jak uczynić kod mkofficial bardziej eleganckim.
Nie planuję na razie 'flirtowania' z mwcls (klasami Marcina Wolińskiego lepiej niż używana przeze mnie klasa report wspierającymi skład po polsku). Głównie dlatego, że nie są one o ile mi wiadomo dostępne z CTAN (nie mówiąc już o dystrybucjach).
Nie planuję (przynajmniej obecnie) modularyzacji klasy ani większego jej otwarcia na 'customizację' z zewnątrz (w sensie tworzenia zestawu opcji sterujących czy uwzględniania ładowanych przez dokument pakietów). Moim zdaniem, w zastosowaniu o jakie mi chodzi taka swoboda jest nie tylko zbyteczna ale wręcz szkodliwa.
Historia zmian
mkofficial_2002-04-16.zip | Przy budowaniu wersji PDF wypełniane są pola autor, tytuł i temat w ramach 'informacji o dokumencie'. Na stronie tytułowej używamy słowa 'streszczenie' a nie 'abstrakt'. W ramach informacji o dokumencie dodana liczba stron. (Dwie ostatnie poprawki za radą Krzysztofa Maja). |
mkofficial_2002-04-12.zip | Pierwsza publicznie udostępniona wersja |
Uwagi
Konkretne uwagi czy propozycje uzupełnień proszę zgłaszać . Chętnie obejrzałbym też efekty dostosowywania klasy do czyichś potrzeb.
Ogólniejsze dyskusje na temat składu dokumentów biznesowych lepiej prowadzić na grupie dyskusyjnej pl.comp.dtp.tex.gust.
komentarze obsługiwane przez Disqus