Realizace výstupu PDF v systému Mediawiki
Obsah
V této kapitole se budeme zabývat realizací výstupů v PDF formátu z námi zvolených skript, které budou nahrány do MediaWiki. Dále si ukáţeme, jak pomocí úpravy kódu vykreslovacího serveru můţeme měnit různé nastavení generovaných PDF a následná ukázka generování bude realizována na skriptech internetové technologie a dalších pěti předmětech.
Vytvoření Wikiknihy se skládá ze tří jednoduchých kroků, a to zapnutí editoru knih, přidání stránek do Wikiknihy a dokončení ve správě knihy.
Zapnutí editoru knih
Zapnutí editoru knih provedeme tak, ţe vlevo na navigační liště pod tisk/export klikneme na moţnost vytvořit knihu a tím se nám na horní stránce MediaWiki zobrazí následující lišta.
Schéma č. 22: Editor knih. Zdroj: [48], vlastní zpracování
Zde zvolíme moţnost spustit editor knih, tím se nad naší zvolenou stránkou zobrazí nové moţnosti.
Přidání stránky do Wikiknihy
Po zapnutí editoru knih se nám u kaţdého článku nabídne moţnost přidání stránky do Wikiknihy. Jsou zde i další moţnosti, jako zobrazit knihu nebo doporučit stránky.
Schéma č. 23: Přidání stránky do knihy. Zdroj: [48], vlastní zpracování
Kliknutím na tlačítko přidat tuto stránku do vaší knihy se přidá naše aktuální stránka do Wikiknihy. Další článek vloţíme jednoduše jeho vyhledáním a následně opětovným stlačením tlačítka. Takhle lze nahrát spoustu dalších článků a poté z nich vytvořit jednu Wikiknihu. Aţ budeme mít všechny články přidané, tak stačí vybrat moţnost zobrazit knihu a tím se dostáváme k poslednímu kroku. Dokončení Wikiknihy ve Správě knihy Správa knihy nabízí nové moţnosti k další úpravě Wikiknihy.
Schéma č. 24: Správa knihy. Zdroj: [48], vlastní zpracování
Na této stránce můţeme dokončit naši Wikiknihu. Pojmenovat ji, přidat podtitul, objednat knihu anebo ji stáhnout jako PDF do našeho počítače. Moţnost objednat jako tištěnou knihu, můţeme vyuţít v případě, jestli si chceme knihu objednat přes sluţbu Pediapress, která nám objednanou knihu vytiskne a odešle na danou adresu. Pediapress vyrábí knihy na míru a garantuje rychlé dodání obvykle do 2-3 pracovních dnů, barevné knihy pak do 15 pracovních dnů s vysoce kvalitní sazbou a tiskem. Jsou vyráběny v kvalitě nerozeznatelné od tradičních knih. PediaPress pouţívá automatizovaný sázecí software, který vytváří PDF dokumenty ve vysoké kvalitě. Tyto knihy mají rozměry 5,5‘‘ x 8,5‘‘ (216x140mm). Maximální velkost knihy je 800 stran. Větší knihy jsou rozděleny na více svazků. [7]
Druhou moţností je - Staţení ve formátu PDF přímo z MediaWiki. Pro staţení knihy je potřeba mít nainstalovaný a nakonfigurovaný vlastní PDF vykreslovací server.
Přidání nových vlastností správě knihy
Přidáním nových vlastností můţeme naše wikiknihy sdílet s dalšími uţivateli nebo je popřípadě vytvářet i v jiném formátu neţ je PDF, tyto vlastnosti přidáme pomocí řádků, které vloţíme do souboru LocalSettings.php a změny uloţíme. Tyto změny by se měly následně promítnout i do Správy knih.
Funkce uloţení a sdílení knih
Pokud chceme, aby uţivatelé mohli uloţit a sdílet sbírky článků, musíme přidat dva řádky do LocalSettings.php, které dohlíţejí na práva uţivatelů, neţ mohou ukládat sbírky článků. Tím docílíme, ţe správa knihy bude nabízet moţnost Uloţit a sdílet vybrané články, které se uloţí přímo na serveru MediaWiki.
$wgGroupPermissions['user']['Collectionsaveasuserpage'] = true;
$wgGroupPermissions['user']['Collectionsaveascommunitypage'] = true;
Zdrojový kód č. 8: Přidání moţnosti uloţit a sdílet do správy knih. Zdroj: vlastní
Přidání generování knih ve formátu ODT
Standardně je nastaven pouze formát PDF, takţe pokud chceme mít při generování i jinou moţnost generování neţ jen PDF formát přidáme tyto řádky do LocalSettings.php:
$wgCollectionFormats = array(
'rl' => 'PDF',
'odf' => 'ODT',
);
Zdrojový kód č. 9: Přidání moţnosti vytvářet výstupy v ODT formátu. Zdroj: vlastní
Tyto řádky přidají kromě PDF formátu, formát ODT do moţnosti generování. Existují i další formáty.
Schéma č. 25: Ukázka nových vlastností. Zdroj: [48], vlastní zpracování
Pokud je pouţit vlastní vykreslovací server, můţeme zjistit seznam dostupných formátů, ve kterých můţou být výstupy zapsány pomocí příkazu:
$ mw-render –list-writers
Úprava zdrojového kódu vykreslovacího PDF serveru
Upravením kódu můţeme měnit následně generované PDF Wikiknihy. Tyto úpravy dovoluje rozšíření mwlib, které je vytvořené v jazyce python a nastavuje vzhled dokumentu. Různými změnami v tomto kódu můţeme měnit základní nastavení formátování celé Wikiknihy jako jsou například okraje, styl a velikost písma nebo přidání obrázku na přední stranu, ale lze provádět i další úpravy. V této části přesně popíši tyto úpravy a ukáţu, co všechno musíme pro úpravu udělat.
Pokud chceme upravovat podobu PDF dokumentů, musíme vytvořit oddělený konfigurační soubor s názvem customconfig.py, pomocí kterého můţeme totiţ tyto změny provádět. Podmínkou však je, ţe se tento soubor musí nacházet a odkazovat na PYTHONPATH v našem systému.
Customconfig.py funguje v podstatě tak, ţe můţeme připsáním nebo přepsáním kódu měnit výchozí kód, který se nachází v souboru pdfstyles.py a ten se upraví podle naší vlastní konfigurace.
Další výhodou je moţnost ukládání customconfig.py, kdy můţeme například provedené
úpravy převést i na další vykreslovací servery jen zkopírováním tohoto souboru.
Vytvoření customconfig.py
Konfigurační soubor customconfig.py vytvoříme pomocí příkazu:
sudo touch customconfig.py
Tento příkaz vytvoří v našem domovském adresáři prázdný soubor s názvem customconfig.py.
Dalším krokem je přenesení tohoto souboru do sloţky, kde se nachází i soubor pdfstyles.py a k tomu pouţijeme příkaz:
sudo mv customconfig.py /usr/local/lib/python2.7/dist-packages/mwlib.rl-0.14.0-py2.7.egg/mwlib/rl
Nyní lze otevřít customconfig.py a začít s editací a to pomocí příkazu:
sudo nano /usr/local/lib/python2.7/dist-packages/mwlib.rl-0.14.0-py2.7.egg/mwlib/rl/ customconfig.py
Provádění změn pomocí customconfig.py
Takto vytvořený konfigurační soubor je nyní prázdný a připravený na zápis. K jeho spuštění je potřeba na první řádek napsat #! usr/bin/env python, tím zajistíme načtení tohoto konfiguračního souboru a ţe bude zvolen jako interpret python a jeho verze, která je první v $PATH. Dalším důleţitým krokem je naimportovat moduly. První modul os poskytuje jednotné rozhraní k mnoha operacím systému a je nám pak dovoleno provádět extra funkce.
Modul ParagraphStyle se nachází v knihovně styles a blíţe definuje odstavce. Dovoluje nám pouţít funkce jako: font, right margin, left margin, first indent, top margin, atd. Další moduly dovolují například zvolení jednotek jako cm, mm, inch, atd. jako násobky bodů. Nebo pomocí colors definovat standardní zpracování barev jako RGB a CMYK. Jsou-li všechny potřebné moduly načteny, můţeme začít s úpravnou kódu a popsat, co provedené změny budou následně měňit.
Přidání obrázku a tabulky obsahu na titulní stranu Wikiknihy
Obrázky na titulních stranách bývají nedílnou součástí dokumentů, protoţe nejen, ţe se tím vyzdvihne vzhled dokumentu, ale také je nám tím napovězeno, o čem bude dokument zhruba pojednávat, protoţe jako obrázek na titulní straně bývají často pouţívány různá loga firem, škol a jiných institucí či věcí, které specifikují právě dané téma v dokumentu. Jako první musíme povolit generování titulní strany samotné. To provedeme přidáním řádku show_title_page = True, kdy hodnota true povolí generování titulní strany. Následně je zapotřebí přidat řádek titlepageimage = ' ', kde do uvozovek vloţíme absolutní cestu k obrázku, který chceme vloţit.
Obrázek je při generování vloţen do prostřed titulní strany. Na titulní straně se ještě nachází nadpis a podnadpis Wikiknihy, který je zadán uţ ve správě knih. Další co můţe být generováno kromě titulní strany, je tabulka obsahu. Tu lze zapnout přidáním řádku render_toc = True, tento řádek dovoluje generovat tabulku obsahu, do které se zapíší všechny nadpisy úrovně 1, 2, 3 a 4 a k nim přiřazené čísla stran. Tabulka obsahu se bude vykreslovat při kaţdém generování Wikiknihy.
show_title_page = True #Zapíná zobrazení titulní strany.
show_title_page_footer = True #Zapíná zobrazení patičky u titulní strany.
show_page_header = True #Zapíná hlavičku u stránek.
show_page_footer = True #Zapíná patičku u stránek.
page_break_after_article = True #Zaručuje, ţe nový článek bude začínat na nové straně.
show_article_attribution = True #Zobrazuje zdroje článků a přispěvatelů.
show_article_hr = True #Podtrhuje všechny hlavní nadpisy horizontálně.
#### Titulní strana
titlepageimage= '/home/janovsky/epi.jpg' #Přidává obrázek na titulní stranu.
render_toc = True #Vytváří tabulku obsahu.
Zdrojový kód č. 10: Přidání obrázku a tabulky obsahu na titulní stranu Wikiknihy. Zdroj: vlastní
Změna okrajů stránek
I kdyţ dokumenty v základním stavu vypadají velice kvalitně, s některými vlastnostmi se nemusíme spokojit. Takovým příkladem můţou být například okraje, kdy potřebujeme změnit okraje z formátu A4 na A5 nebo letter atd. Pokud tedy chceme změnit velikost okrajů na přesně danou hodnotu je potřeba přidat řádky s těmito hodnotami do našeho konfiguračního souboru.
V našem případě budeme přidávat 8 řádků, které nastavují různé okraje a jejich rozměry. Pro ukázku správného fungování si zkusme nastavit rozměry okrajů na hodnoty 2 cm pro okraj stránky zleva, pro okraj stránky zprava a pro horní a dolní okraj stránky. A další rozměr 1.5 cm pro okraje hlavičky horizontálně a vertikálně a to samé u patičky. Následný kód bude tedy vypadat takto:
######### Konfigurace stránky
page_widht, page_height = A4
page_margin_left = 2 * cm
page_margin_right = 2 * cm
page_margin_top = 2 * cm
page_margin_bottom = 2 * cm
header_margin_hor = 1.5 * cm
header_margin_vert = 1.5 * cm
footer_margin_hor = 1.5 * cm
footer_margin_vert = 1.5 * cm
Zdrojový kód č. 11: Změna okrajů u Wikiknihy.Zdroj: vlastní
Těmito řádky v customconfig.py změníme základní nastavení okrajů na okraje námi zvolené, které budou pouţity při kaţdém vykreslování Wikiknih.
Přidání a nastavení patičky Wikiknihy
Další věc, která dokumentu nesmí chybět, je patička stránky. Patičku tvoří obvykle pár řádků, které se dají vyuţít pro uveřejnění informací například o autorských právech, kontaktní informace atd. V naší Wikiknize jsou dva druhy patiček. První z nich se zobrazuje pouze na titulní straně a pro její přidání musíme přidat řádek titlepagefooter= _(u"").
Druhá se zobrazuje na všech ostatních stranách. Pro přidání těchto patiček musíme přidat řádek pagefooter = u"". Samozřejmě obě patičky musí být povoleny příkazem, který jsem popsal výše. U obou patiček se dají samozřejmě také měnit okraje.
pagefooter = u'Skripta do předmětu Internetové technologie '
titlepagefooter = _(u'PDF bylo vygenerováno pomocí open source mwlib. Vydavatel: Evropský polytechnický institut, s.r.o. Kunovice, 2011')
Zdrojový kód č. 12: Přidání patiček jednotlivým stranám a hlavní stránce Wikiknihy. Zdroj: vlastní
Změna písma Wikiknihy
Změna písma se provádí v konfiguračním souboru fontconfig.py. Ve výchozím nastavení však pracuje pouze s pár TrueType fonty a vestavěnými fonty od Adobe, které jsou pouţity podle potřeby. Pokud chceme přidat fonty nové, musíme je nejprve stáhnout. Následující fonty můţeme přidat jejich nainstalováním: AR PL UMing HK, Ezra SIL, Nazli, UnBatang, Arundina Serif, Lohit Telugu, Sarai, Lohit Punjabi, Lohit Urijština, AnjaliOldLipi, Kedage, LikhanNormal, Lohit Tamil, Linux Libertine.
Tyto fonty můţeme stáhnout z následujích debian balíčků: ttf-indic fonty, ttf-unfonts, ttf-farsiweb, ttf-arphic-uming, ttf-sil-ezra, ttf-thai-arundina,linux-libertine
Staţené fonty musíme přesunout do sloţky fonts, která se nachází v adresáři mwlib. Nejlepší cestou je vytvořit symbolický odkaz v našem domovském adresáři, který se bude jmenovat mwlibfonts. Tohle nám ušetří práci při kopírování fontů, protoţe cesta k adresáři mwlib je příliš sloţitá. Vytvoření symbolického odkazu ke sloţce fonts provedeme pomocí příkazu:
sudo ln -s /usr/local/lib/python2.7/dist-packages/mwlib.rl-0.14.0-py2.7.egg/mwlib/fonts mwlibfonts
Do sloţky fonts vytvořené pomocí symbolického odkazu následně zkopírujeme sloţky všech nebo vybraný fontů, které se nachází v adresáři /usr/share/fonts/truetype a to pomocí příkazu:
sudo cp /usr/share/fonts/název fontu /home/janovsky/mwlibfonts
Po zkopírování fontů do sloţky mwlibfonts musíme nově zvolený font nastavit v konfiguračním souboru fontconfig.py. Pro ukázku byl pouţit font s názvem Linux-Libertine. Tento nový font vloţíme do fontconfig.py pomocí tohoto kódu:
fonts = [
{'name': 'LinuxLibertine',
'code_points': ['Basic Latin','Latin-1 Supplement',
'Latin Extended-A', 'Latin Extended-B',
'Latin Extended Additional', 'Cyrillic',
'Cyrillic Supplement', 'Cyrillic Extended-B',
'Greek Extended', 'Greek and Coptic',
'Geometric Shapes', 'Hebrew',
'Alphabetic Presentation Forms',
'Miscellaneous Symbols',
'Mathematical Alphanumeric Symbols'
],
'xl_scripts': ['Latin', 'Cyrillic', 'Greek', 'Coptic', 'Hebrew'],
'file_names':['linuxlibertine/LinBiolinum_Sl.ttf',
'linuxlibertine/LinLiberine_Bd.ttf',
'linuxlibertine/LinLibertine_It.ttf',
'linuxlibertine/LinLibertine_BI.ttf'],
},
Zdrojový kód č. 13: Přidání nového fontu linux-libertine do fontconfig.py. Zdroj: vlastní
Tento zdrojový kód definuje název nového fontu a pomocí code_points specifikuje matematické a geometrické znaky a znakové sady. Ve file_names udáváme cestu k souborům, které mají koncovku.ttf a z těchto takzvaných TrueType Font souborů se následně vykresluje námi zvolený font. Pokud je text v dokumentu psaný například tučně nebo kurzívou bude podle toho zvolen i zdroj fontu.
Aby nenastala chyba při vykreslování Wikiknihy musíme ještě do konfiguračního souboru customconfig.py přidat nové řádky, které nový font uvedou do chodu.
První načteme zobrazení nového fontu, aby bylo například správně zobrazováno písmo psané tučně nebo kurzívou. To provedeme pomocí těchto řádků:
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
pdfmetrics.registerFont (TTFont ('LinBiolinum_Sl', 'LinBiolinum_Sl.ttf'))
pdfmetrics.registerFont (TTFont ('LinBiolinum_Bd', 'LinBiolinum_Bd.ttf'))
pdfmetrics.registerFont (TTFont ('LinBiolinum_It', 'LinBiolinum_It.ttf'))
pdfmetrics.registerFont (TTFont('LinLibertine_BI', 'LinBiolinum_BI.ttf'))
Nakonec musíme připsat dva řádky pomocí, kterých se zvolí, jako základní font linux-libertine.
linuxlibertine_font = "LinuxLibertine"
default_font = 'LinuxLibertine'
Změna zarovnání nadpisu a podnadpisu na titulní straně Wikiknihy
Pro změnu zarovnání nadpisu a podnadpisu na titulní straně musíme přidat do customconfig.py tyto řádky:
if mode == 'booktitle':
style.fontSize = 36
style.leading = 40
style.spaceBefore = 16
style.fontName= sans_font
style.alignment = TA_CENTER
if mode == 'booksubtitle':
style.fontSize = 24
style.leading = 30
style.fontName= sans_font
style.alignment = TA_CENTER
Zdrojový kód č. 15: Úprava vlastností nadpisu a podnadpisu na titulní straně. Zdroj: vlastní
V těchto řádcích můţeme upravovat vlastnosti nadpisu a podnadpisu. Od velikosti písma, typu fontu po různé zarovnání.
Zdrojový kód customconfig.py
#! /usr/bin/env python
#! -*- coding:utf-8 -*-
import os
from reportlab.lib.styles import ParagraphStyle
from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_JUSTIFY, TA_RIGHT
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.lib.pagesizes import A4
if '_' not in globals():
_ = lambda x: x
linuxlibertine_font = "LinuxLibertine"
serif_font = "FreeSerif"
sans_font = "FreeSans"
mono_font = "FreeMono"
default_font = 'LinuxLibertine'
from reportlab import rl_config
rl_config.canvas_basefontname = default_font
#### Titulní strana
render_toc = True
######### Konfigurace stránky
page_widht, page_height = A4
page_margin_left = 2 * cm
page_margin_right = 2 * cm
page_margin_top = 2 * cm
page_margin_bottom = 2 * cm
header_margin_hor = 1.5 * cm
header_margin_vert = 1.5 * cm
footer_margin_hor = 1.5 * cm
footer_margin_vert = 1.5 * cm
show_title_page = True
show_title_page_footer = True
show_page_header = True
show_page_footer = True
page_break_after_article = True
show_article_attribution = True
show_article_hr = True
pagefooter = u'Skripta do předmětu Internetové technologie '
titlepagefooter = _(u'PDF bylo vygenerováno pomocí open source mwlib.
Vydavatel: Evropský polytechnický institut, s.r.o. Kunovice, 2011')
titlepageimage= '/home/janovsky/epi.jpg'
show_creation_date = False
### Konfigurace tabulek
tableOverflowTolerance = 20
# maximální šířka pro tabulky
jednotka: pt
cell_padding = 3
min_rows_for_break = 3
treecleaner_skip_methods=['fixPreFormatted', 'removeEmptyReferenceLists']
######### Konfigurace obrázků
# okraje pro obtékání obrázků - zápis okrajů jako v html/css: (top,
right, bottom, left)
img_margins_float_left = (0, 0.4*cm, 0.7*cm, 0) # img je zarovnán zleva
img_margins_float_right = (0, 0, 0.7*cm, 0.4*cm) # ...
img_margins_float = (0.2*cm,0.2*cm,0.2*cm,0.2*cm) # kterékoliv zarovnání
img_default_thumb_width = 180
img_max_thumb_width = 0.6
img_max_thumb_height = 0.45
img_min_res = 75
img_inline_scale_factor = 0.7
print_width_px = 540
img_border_color=(0.75, 0.75, 0.75)
link_images = True
######### Konfigurace textu
font_size = 10 # velikost písmna v dokumentu.
leading = 15
text_align = TA_JUSTIFY # základní zarovnání textu, který není v tabulce. Jsou možné TA_LEFT, TA_JUSTIFY, TA_RIGHT, TA_CENTER
table_text_align = TA_LEFT # ... uvnitř tabulek
title_page_text_align = TA_CENTER
min_lines_after_heading = 5
small_font_size = 8
small_leading = 12
big_font_size = 12
big_leading = 17
para_left_indent = 25 # odsazení odstavců...
para_right_indent = 25 # odsazení odstavců...
list_left_indent = 12 # odsazení seznamů o úroveň
tabsize = 6
source_max_line_len = 72
no_float_math_len = 150
max_math_width = 2500
max_math_height = 2500
word_wrap=None
min_preformatted_size = 5
chapter_rule_color = colors.black
# Ostatní nastavení
list_item_style = u'\u2022'
url_blacklist = ['http://toolserver.org']
url_ref_in_table = True
url_ref_len = 30
class BaseStyle(ParagraphStyle):
def __init__(self, name, parent=None, **kw):
ParagraphStyle.__init__(self, name=name, parent=parent, **kw)
self.fontName = serif_font
self.fontSize = font_size
self.leading = leading
self.autoLeading = 'max'
self.leftIndent = 0
self.rightIndent = 0
self.firstLineIndent = 0
self.alignment = text_align
self.spaceBefore = 3
self.spaceAfter = 0
self.bulletFontName = serif_font
self.bulletFontSize = font_size
self.bulletIndent = 0
self.textColor = colors.black
self.backColor = None
self.wordWrap = None
self.textTransform = None
def text_style(mode='p', indent_lvl=0, in_table=0, relsize='normal', text_align=None):
"""
mode: p (normal paragraph), blockquote, center (centered paragraph),
footer, figure (figure caption text), preformatted, list, license,
licenselist, box, references, articlefoot
relsize: relative text size: small, normal, big
(currently only used for preformatted nodes)
indent_lvl: level of indentation in lists or indented paragraphs
in_table: 0 - outside table, 1 or above - inside table (nesting level of table)
text_align: left, center, right, justify
"""
if mode == 'booktitle':
style.fontSize = 36
style.leading = 40
style.spaceBefore = 16
style.fontName= sans_font
style.alignment = TA_CENTER
if mode == 'booksubtitle':
style.fontSize = 24
style.leading = 30
style.fontName= sans_font
style.alignment = TA_CENTER
Závěr
Cílem práce bylo v teoretické části obeznámit s PDF formátem a popsat jeho problematiku při generování, dále vysvětlit jeho vlastnosti a popsat jeho výhody a nevýhody. Následně bylo potřeba blíţe charakterizovat rozšiřující knihovny, které dovolují generování Wikiknih. Tato část obsahuje i popis Wiki systému a nástroje třetích stran, pomocí kterých se dají také generovat výstupy.
Praktická část bakalářské práce se zabývá zprovozněním a nakonfigurováním publikačního systému MediaWiki spolu s rozšiřujícími knihovnami Extension:Collection a PDF:Writer, které dovolují publikačnímu systému generovat z článků takzvané Wikiknihy ve formátu PDF. Následně bylo potřeba tyto Wikiknihy dokázat upravit podle různých poţadavků. K tomu bylo nutné upravit zdrojový kód vykreslovacího serveru, pomocí kterého můţeme změny realizovat.
Po analýze programového vybavení byl ke splnění cílů práce vybrán jako nejvhodnější operační systém pro instalaci a konfiguraci MediaWiki operační systém GNU/Linux a jeho distribuce Ubuntu Precise Pangolin 12.04, protoţe dokonale splňoval poţadavky a navíc je překročil kvůli nesporným výhodám oproti ostatním operačním systémům. Jeho nesmírnou výhodou je například to, ţe je zdarma, protoţe je tzv. open source, ale také to, ţe je nejvíce ovladatelný a přizpůsobitelný, protoţe všechny sluţby, aplikace a programy máte plně pod kontrolou pomocí příkazů. Navíc je tento operační systém bezpečný, protoţe na něm nejsou viry ani spyware.
Do tohoto operačního systému byl nainstalován web server Apache2 s PHP 5 a MySQL serverem 4.0. Bez těchto programů by nebylo moţné nainstalovat publikační systém MediaWiki. Následně proběhlo vytvoření databáze a konfigurace MediaWiki, kdy byla MediaWiki pojmenována a byl zvolen například formát pro ukládání dat a její znaková sada. Po všech nastaveních mohla proběhnout její instalace.
Dále se v praktické části bakalářské práce řeší implementace dvou modulů, které umoţňují publikačnímu systému MediaWiki generovat z článků výstupy v PDF. První z modulů Extension:Collection dovoluje vytvářet Wikiknihy pomocí externího vykreslovacího serveru Pediapress, coţ se hodí pro méně navštěvované wiki servery. Pro více navštěvované wiki servery a k řešení této práce bylo však potřeba implementovat modul Extension:PDF Writer, který vytvořil na lokálním stroji vykreslovací server, kdy pomocí změn ve zdrojovém kódu vykreslovacího serveru bylo moţné upravit podobu generovaných PDF Wikiknih. Tento modul obsahuje pythonovské knihovny, takţe bylo nutné nainstalovat jednu z těchto verzí pythona 2.5, 2.6 nebo 2.7.
Literatura
Knihy, monografie:
[1] ZOUNEK, J. E-learning: Jedna z podob učení v moderní společnosti. Masarykova univerzita: Masarykova univerzita, 2009. 61 s. ISBN 8021051236.
[2] FREDERICK, M.; VANDOME, P.; Agnes, F.; MCBREWSTER, J. Portable Document Format. [s.l.]: VDM Publishing House Ltd, 2009. 82 s. ISBN 6130072295.
[3] RAHMAN, M. MediaWiki administrators' tutorial guide: install, manage, and customize your MediaWiki installation. 1. publ. Birmingham: Packt Pub, 2007. 284 s. ISBN 1904811590.
[4] BÍBR, I. Ubuntu 10.04 CZ: praktická příručka uživatele Linuxu. Vyd. 1. Brno: Computer Press, 2010, 366 s. ISBN 978-802-5131-213.
[5] EBERSBACH, A.; GLASER, M.; HEIGL, R.; WARTA, A. Wiki: web collaboration. 2nd ed., rev. and enl. ed. Berlin: Springer, 2007. 483 s. ISBN 3540351507.
[6] BARRETT, D., J. MediaWiki. 1st ed. Sebastapool, Calif.: O'Reilly Media, 2008, 358s. ISBN 0596519796.
Internetové zdroje:
[7] PediaPress: Frequently Asked Question [online]. 2010 [cit. 2012-01-19]. Dostupné z WWW: <http://pediapress.com/faq/#PediaPressFAQ>.
[8] PediaPress Open Source Repository, Wiki and Bug Tracking System [online]. 2010 [cit. 2012-01-19]. Codepediapress. Dostupné z WWW: <http://code.pediapress.com/wiki/wiki>.
[9] MediaWiki [online]. 2010 [cit. 2012-01-19]. Dostupné z WWW: <http://www.MediaWiki.org/wiki/MediaWiki>.
[10] Apache2: Virtual Hosts for Clients in Your Private LAN & PHP Configuration. Kim Briggs Website [online]. ©2012 [cit. 2012-01-28]. Dostupné z WWW: <http://kimbriggs.com/computers/computer-notes/linux-notes/apache2-virtual-hosts-php-config.file>.
[11] ORACLE: VM VIRTUALBOX [online]. 2012 [cit. 2012-10-08]. Dostupné z WWW: <http://www.oracle.com/us/technologies/virtualization/oraclevm/oracle-vm-virtualbox-ds-1655169.pdf>.
[12] Portable Document Format [online]. 2010 [cit. 2012-10-05]. Dostupné z WWW: <http://www.digitalpreservation.gov/formats/fdd/fdd000030.shtml>.
[13] bussinessworld [online]. 2010 [cit. 2012-10-05]. Historie. Dostupné z WWW: <http://businessworld.cz/veda-a-historie/Historie-Adobe-4692>.
[14] Adobe [online]. 2010 [cit. 2012-10-05]. Dostupné z WWW: <http://www.adobe.com/products/catalog.html?promoid=JOOTH>.
[15] prepressure [online]. 2010 [cit. 2012-10-05]. Dostupné z WWW: <http://www.prepressure.com/pdf/basics/fileformat>.
[16] prepressure [online]. 2010 [cit. 2012-10-05]. Dostupné z WWW: <http://www.prepressure.com/pdf/basics/history>.
[17] Co je Open Document Format. OpenDocument [online]. 2007 [cit. 2012-10-03]. Dostupné z WWW: <http://www.opendocument.cz/section/co-je-odf>.
[18] partners.adobe [online]. 2010 [cit. 2012-10-05]. developer. Dostupné z WWW: <http://partners.adobe.com/public/developer/en/pdf/PDFReference.pdf>.
[19] OpenZIM [online]. 2009 [cit. 2012-10-03]. Dostupné z WWW: <http://openzim.org/Main_Page>.
[20] Pandora.idnes [online]. 2009 [cit. 2012-10-27]. Charakteristika PDF. Dostupné z WWW: <http://pandora.idnes.cz/part/2008/9/21619/3/PDF_zapis.pdf>.
[21] ABClinuxu [online]. 2011 [cit. 2012-09-13]. Knihovny a programy pro manipulaci s PDF. Dostupné z WWW: <http://www.abclinuxu.cz/clanky/knihovny-a-programy-pro-manipulaci-s-pdf#gnu-pdf-library>.
[22] Pdfbox.apache.org [online]. 2008 [cit. 2012-09-13]. PDFBox. Dostupné z WWW: <http://pdfbox.apache.org/>.
[23] Fpdf.org [online]. 2009 [cit. 2012-09-13]. FPDF Library. Dostupné z WWW: <http://www.fpdf.org/>.
[24] Pybrary.net [online]. 2010 [cit. 2012-09-13]. PyPdf. Dostupné z WWW: <http://pybrary.net/pyPdf/>.
[25] Podofo.sourceforge.net [online]. 2006 [cit. 2012-09-13]. PoDoFo. Dostupné z WWW: <http://podofo.sourceforge.net/>.
[26] Meatball Wiki [online]. 01-11-2011 [cit. 2012-09-27]. BiggestWiki. Dostupné z WWW: <http://meta.wikimedia.org/wiki/List_of_largest_wikis>.
[27] Wiki. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2012-01-26]. Dostupné z WWW: <http://en.wikipedia.org/wiki/Wiki>.
[28] Installation: System Requirements. Ubuntu [online]. 2012 [cit. 2012-11-27]. Dostupné z WWW: <https://help.ubuntu.com/community/Installation/SystemRequirements>.
[29] Apache2: Activating User public_html Directories & Virtual Directories- Hosts-Domains under Ubuntu Linux for a Private LAN. Kim Briggs Website [online]. ©2012 [cit. 2012-01-26]. Dostupné z WWW: <http://kimbriggs.com/computers/computer-notes/linux-notes/apache2-public_html-virtual-directories.file>.
[30] ABC linuxu: instalace z tar.gz archivu [online]. 28.9.2008 [cit. 2012-01-26]. Dostupné z WWW: <http://www.abclinuxu.cz/poradna/linux/show/240711>.
[31] Wiki2PDF [online]. 2004 [cit. 2012-01-26]. Dostupné z WWW: <http://wiki.auf-trag.de/>.
[32] Extension: PDF Writer. In: MediaWiki [online]. San Francisco (CA) : Wikimedia Foundation, 2001 [cit. 2012-01-25]. Dostupné z WWW: <http://www.MediaWiki.org/wiki/Extension:PDF_Writer>.
[33] Running a renderserver: mwlib 0.13 documentation. Collection Extension for MediaWiki [online]. 2011-08-23 [cit. 2012-01-08]. Dostupné z WWW: <http://mwlib.readthedocs.org/en/latest/renderserver.html#mwlib-renderserver>.
[34] ADOBE SYSTEMS INCORPORATED. PDF Reference: sixth edition. San Jose, CA 2006. 95110-2704, Dostupné z WWW:<http://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/pdf_reference_1-7.pdf>.
[35] PDF In-Depth. Planet PDF: Navigating the Internal Structure of a PDF Document [online]. 2010 [cit. 2012-01-12]. Dostupné z WWW: <http://www.planetpdf.com/developer/article.asp?ContentID=navigating_the_internal_struct>.
[36] Base 14 Fonts. Base 14 Fonts: What are Base 14 Fonts [online]. 2012 [cit. 2012-01-13]. Dostupné z <http://desktoppub.about.com/od/glossary/g/base14fonts.htm>.
[37] ADOBE SYSTEMS INCORPORATED. Adobe_supplement_iso32000. San Jose, CA 95110-2704, 2008. Dostupné z WWW:<http://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/adobe_supplement_iso32000.pdf>.
[38] ENCODING. Canada:Rubber & Plastics Company, 1999. Dostupné z WWW: <http://www.rdpslides.com/psfaq/ENCODING.PDF>.
[39] About Moodle. Moodle [online]. 2012 [cit. 2012-10-08]. Dostupné z WWW: <http://docs.moodle.org/23/en/About_Moodle>.
[40] Moodle: Open-source výuka přes Internet. Linux EXPRES [online]. 2011 [cit. 2012-10-08]. Dostupné z WWW: http://www.linuxexpres.cz/software/moodle-open-source-vyuka-pres-internet>.
[41] ISO 32000-1. Document management: Portable document format. San Jose, CA 95110-2704 : International Organization for Standardization, 2008. Dostupné z WWW: <http://www.iso.org/iso/catalogue_detail.htm?csnumber=51502>.
[42] Extension:Collection. MediaWiki [online]. 2008 [cit. 2012-10-11]. Dostupné z WWW: <http://www.mediawiki.org/wiki/Extension:Collection>.
[43] Články. DocBook [online]. 2002 [cit.2012-10-14]. Dostupné z WWW:<http://docbook.cz/clanky/uvod.html>.
Počítačový program
[44] ORACLE CORPORATION. Virtualbox 4.1.6 for Windows [software]. [přístup 26.07.2012]. Dostupné z: http://www.virtualbox.org/wiki/Downloads. Poţadavky na systém: operační systém Microsoft Windows XP, Vista, Windows 7, Linux, Mac OS x, Solaris, OpenSolaris, volné místo na disku 30 MB, operační paměť 512 MB RAM
[45] CANONICAL, LTD. Ubuntu Precise Pangolin 12.04 [software]. [přístup 19.10.2012]. Dostupné z: http:// www.ubuntu.com/download/desktop. Poţadavky na systém: volné místo na disku 10 GB, operační paměť 512 MB RAM
[46] KOJIMA, A. Synaptic [software]. Ver. 0.62. [Brazílie], 1995 [citováno 2012-10-11]. Dostupné z: http://www.nongnu.org/synaptic/index.html. Vyţaduje Debian nebo jinou distribuci pouţívající APT.
[47] MOZILLA FOUNDATION. Mozilla Firefox 17.0 [software]. [přístup 26.10.2012]. Dostupné z: www.mozilla.org/cs/. Poţadavky na systém: PC Windows 2000, XP, Vista, 7, volné místo na disku 200 MB, operační paměť 512 MB RAM
[48] WIKIMEDIA FOUNDATION. MediaWiki [software]. Červen 2012. [přístup 15.06.2012]. Dostupné z: http://www.mediawiki.org/wiki/MediaWiki. Poţadavky na systém: volné místo na disku 80 MB, operační paměť 256 MB RAM
[49] MOODLE PTY, LTD. Moodle [software]. Září 2012 [přístup 14.10.2012]. Dostupné z: https://moodle.org/.