Blog Stolový kalendár a programovanie?

Stolový kalendár a programovanie?

V tomto článku sa dozvieš ako som si pomohol pri tvorbe stolového kalendára programovaním. Od ťažkostí a ručného prepisovania až po generovanie.

Už ôsmy rok pripravujem evanjelizačný kalendár – je to kresťanský stolový kalendár. Prvých 6 rokov som ho celý robil ručne. Rok čo rok som ho prerábal podklady ručne. Trošku si to spočítajme:

54 strán kalendárov:

378 x prepísanie mien

378 x prepísania dní

54 x prepísanie veršov a odkazov na verše

xy x úprava sviatkov a farieb dní sviatkov

xy x úprava nadpisov týždňov, niekedy je Feb / Mar a niekedy je len Feb

Takýto proces je náročný na čas a chybovosť. Vždy som si to posúval na neskôr, ale musel som to spraviť. Radšej by som sa sústredil na vybratie správneho veršu.

Lenivosť

Často krát je lenivosť človeka robiť niečo stále dookola to isté motívom pomôcť si a urýchliť proces. Po 6 rokoch tvorby kalendáru som bol demotivovaný znovu ručne všetko prepisovať. Vtedy som začal možnosť hľadať spôsob ako si pomôcť. Však som programátor, to sa musí nejako dať naprogramovať – je to opakujúca sa činnosť prepísanie jedného údaju na druhý údaj podľa nejakého zdroja dát.

Google mi poradí

Začal som vyhľadávať ako by som vedel veci generovať. Kalendár robím v programe Scribus. Našiel som spôsob generovania pomocou Scribus generátora.

Scribus generátor

Ten potrebuje mať na vstupe dve veci.

  1. scribus template – kde si nastavím premenné
  2. data súbor – dáta ktoré sa budú vkladať na miesto premenných v scribus template

Ako prvé som si navrhol template. Všetky dáta, ktoré som chcel generovať som napísal vo forme premenných – majú špeciálny tvar v Scribuse:

%VAR_xxx%

kde xxx predstavuje názov stĺpcov v data súbore. Prvý riadok v data súbore sú názvy dát oddelené špeciálnou značkou – je to akoby csv súbor – ja som si vybral špeciálnu značku bodkočiarku. 

Každý ďalší riadok predstavuje jednu vygenerovanú stranu kalendáru na základe templatu.

Ukážka dátového súboru:

nazov;slovo;odkaz;tyzdenHore;den1;den2;den3;den4;den5;den6;den7;meno1;meno2;meno3;meno4;meno5;meno6;meno7;sviatok1;sviatok2;sviatok3;sviatok4;sviatok5;sviatok6;sviatok7;obrazok;color1;color2;color3;color4;color5;color6;color7;
01;Nemilujte svet, ani to, čo je vo svete. Ak niekto miluje svet, nieto v ňom lásky k Otcovi.;1Jn 2/15;Dec – Jan 2020 / Týždeň 1;30;31;1;2;3;4;5;Dávid;Silvester;;Alexandra, Karina;Daniela;Drahoslav;Andrea;;;štátny sviatok;;;;;01.jpg;modraDen;modraDen;zelenaSviatok;modraDen;modraDen;modraDen;zelenaSviatok;

Takto by som si mohol tento súbor pripraviť ručne a potom spustiť Scribus Generátor no daný súbor som nechcel robiť ručne.

Na scénu prichádza Java

Pripravil som si jednoduchý program, ktorý používa najmä triedu Calendar a iné veci, ktoré môžeš vidieť trochu vo videu nižšie. Tento program vytvorí dátový súbor a postupne ho naplní hodnotami na základe aktuálneho roku. Programu som podstrčil zoznam veršov, odkazov na daný rok plus zoznam mien a dátumu na ktorý spadajú.

Program som spustil a vygeneroval som dátový súbor.

Scribus Generátor v praxi

Spustím generátor v Scribuse:

Postup:

  1. nastavím cestu na Scribus template
  2. nastavím cestu na dátový súbor, ktorý som vygeneroval z java programu
  3. separátor údajov nastavím na bodkočiarku, teraz je čiarka
  4. nastavím kde chcem generovať
  5. chcem generovať do jedného súboru? – ja som zaškrtol, chcem to mať v jednom súbore
  6. chcem pdf alebo scribus súbory? – ja chcem scribus lebo je potrebné urobiť ručne nejaké úpravy
  7. dám vygenerovať

Stolový kalendár a programovanie? 5

 

Posledný krok a najdôležitejší je radovať sa z vytvoreného diela a využitia programovania na tieto účely.

Záver

Kurzy: https://www.learn2code.sk/instruktori/jaroslav-beno

Ak sa ti článok páči, tak tu máš viac:

Klikaj na jaroslavbeno.sk – na čo čakáš?

Sleduj ma na youtube – nechceš free videá?

Čítaj novinky na facebook – hmm?

Instagram musí byť, či? – instagram.

Niečo z profesionálnej oblasti linkedin.

Ja som Jaro a my sa vidíme, počujeme ak Boh dá nabudúce.

Čaves.

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.

Jaroslav Beňo
Jaroslav Beňohttp://www.jaroslavbeno.sk
Rád sa zdieľam s ľuďmi. Robím videá na YouTube. Sú o programovaní, o Bohu, o jednoduchých návodoch.

Automation Tester

Máš skúsenosti s automatizovaným testovaním? Pre Automatizovaného testera máme príležitosť v oblasti digitálneho bankovníctva. Ide o projekt na kontrakt s odmenou...

Java Junior/Medior Developer

Osamostatni sa a pracuj sólo! Práve teraz je tu príležitosť pre Junior/Medior Java Developera pracovať na projekte pre medzinárodnú...

MS BI Developer / REMOTE

Sprav krok vpred s novým projektom v oblasti bankovníctva. Ide o projekt na kontrakt s dĺžkou trvania 2 roky. Odmena...

Business Development Manager

Máš skúsenosť s aktívnymi akvizíciami SW riešení pre banky/poisťovne? Pre stabilnú československú spoločnosť hľadáme Business Development Managera, ktorý sa vyzná...

Julia Developer / REMOTE

Projekt pre nadšencov Julia a machine learning. Pre spoločnosť, ktorá používa matematické metódy a metódy AI / ML na...

Scala Medior/Senior Developer

Nechceš denne dochádzať do práce? Chcel by si byť súčasťou dlhoročného startupu, len senior ľudia (žiadni študenti) a pracovať...

Junior Scala Developer

Nechceš denne dochádzať do práce? Chcel by si byť súčasťou dlhoročného startupu, len senior ľudia (žiadni študenti) a pracovať...

Toto sme stihli v roku 2020!

Rok 2020 bol určite neobyčajným rokom pre mnohých nielen z oblasti IT. Presunuli sme sa z kancelárií a open...

Tieto projekty získajú podporu z fondu SK-NIC

Poslednú tohtoročnú výzvu Fondu SK-NIC sme vyhlásili 1. septembra 2020 a otvorená bola až do 15. októbra. Do termínu uzávierky prišlo rekordných...

Novoročný AWS meetup o novinkách v cloudových technológiách

Pozývame vás na prvý AWS meetup roku 2021. Samozrejme online. Téma meetupu Každý rok prináša konferencia AWS re:Invent množstvo noviniek v...

Čítaj ďalej:

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.