Sesja letnia 2008/2009

Mam już komplet terminów egzaminów i wpisów:

22 czerwca, 8.00, sala 218B - Metody numeryczne, dr S. Zajkowski i dr hab. inż. R. Mosdorf (dla tych co nie byli na zerówce)
22 czerwca, 8.00, sala 218B (to nie pomyłka!) - Grafika fraktalna, dr hab. inż. R. Mosdorf, oddajemy projekt
22 czerwca, 12.00, sala 130 - Programowanie w środowisku sieciowym, dr O. Świda , wpisy

23 czerwca, 11.00, sala W12B - Symulacja komputerowa, dr W. Oniszczuk, wpisy ocena niżej / egzamin

24 czerwca, 11.00, Algorytmy i struktury danych, sala W23C, prof. dr hab. W. Dańko

26 czerwca, 12.00, dodatkowy termin wpisów z PWSS, sala W23C

Generowanie PDF z Grails PDF Plugin + polskie znaki

Wczoraj rozwijałem mój projekt na programowanie w środowisku sieciowym. Projekt tworzę w świetnym frameworku -  Grails, w dynamicznym języku programowania na JVM - Groovy. Jednym z zadań projektu jest tworzenie list osób w formacie PDF, czyli tego samego co wyświetlamy na ekranie.

W pierwszej chwili pomyślałem o użyciu JasperReports, ale wpisanie w google frazy “grails pdf” skierowało mnie na stronę pluginu PDF do grailsów. Genialne! Po co robić coś jeszcze raz, lepiej wykorzystać strony GSP i na ich podstawie wyrenderować dokument, dostosowując go tylko w CSS - odpowiednie style można przecież stworzyć dla wskazując w CSS, że mamy wykorzystać ten styl przy wydruku: media=”print” zamiast media=”screen”.

Po wpisaniu w konsoli grails install-plugin pdf i usiadłem i myślałem, że wszystko pójdzie dobrze. Pojawił się błąd - nie mogło skopiować plików. Wszystko przez to, że skrypt instalacyjny jest źle napisany - w pliku KATALOG_DOMOWY/.grails/1.1.1/plugins/grails-pdf-0.4 musiałem zmnienić /script/_Install.groovy tak, żeby kopiowanie plików odbywało się ze ścieżki “${pluginBasedir}/grails-app/views/pdf” (dodałem te pdf na końcu).

Jeszcze chwila czekania i miałem już wszystko zainstalowane, dodałem na stronie odpowiedni link <g:pdfLink url=”/members/list” /> i.. nic nie działało :). Po pierwsze okazało się że miałem jeden tag niedomknięty, przez co nie generowałem poprawnego XHTML’a i po prostu dokument nie mógł być przetworzony. Co jednak ciekawsze, sam pdfLink generował mi znak “&” zamiast odpowiedniej encji i to też sprawiało problemy, przez co użyłem linka poprzez zwyczajny “href” (na stronie demo plugina jest to dopisane dokładniej). Nieco zirytowany obejrzałem pierwszy dokument i.. nie posiadał on polskich znaków :).

Najciekawsze jest to, że w tej sytuacji prostego rozwiązania nie ma, a przynajmniej ja go nie znalazłem. Rozwiązanie trudniejsze to modyfikacja pluginu tak, żeby dodać do niego polskie fonty :).

Po pierwsze potrzebujemy odpowiednich fontów. Ja użyłem paczki od Microsoftu,  i wybrałem z niej “arial.ttf”. Potem zmodyfikowałem plugin. Plugin po instalacji w projekcie siedzi sobie w folderze KATALOG_DOMOWY/.grails/1.1.1/projects/NAZWA_PROJEKTU/plugins. W pliku grails-app/services/PdfService.groovy jest to, co nas interesuje - użycie xhtmlrenderera. Zgodnie z instrukcją trzeba dodać odpowiednie fonty zaraz po stworzeniu renderea - zróbmy to:

ITextRenderer renderer = new ITextRenderer();
def fonts = ConfigurationHolder.config.pdfplugin.addFonts
fonts.each {
renderer.getFontResolver().addFont (it,
BaseFont.IDENTITY_H,
BaseFont.NOT_EMBEDDED);
}

Potrzebujemy jeszcze dodać dwa importy:

import com.lowagie.text.pdf.BaseFont
import org.codehaus.groovy.grails.commons.ConfigurationHolder

Teraz w konfiguracji trzeba dodać ścieżkę do pliku z fontem, lub plikami. Tak więc w Config.groovy dodajemy:

pdfplugin.addFonts=["/sciezka/do/plkiu/arial.ttf"]

I po restarcie aplikacji możemy cieszyć się działającymi plikami pdf z polskimi literkami ;). Uważajcie tylko, żeby w CSS dla generowania strony wybrać odpowiednią rodzinę fontów, np. “Arial Unicode”,Arial,sans-serif. Proste, nie? :D

PS Chciałem zgłosić issue na githubie, na stronie projektu - ale github zastrajkował dlatego napisałem to na wiki.

Prezentacja oferty Polsko-Amerykańskiej Komisji Fulbrighta

Byłem dziś na spotkaniu Polsko-Amerykańskiej Komisji Fulbrighta, która pomaga i częściowo finansuje studia podyplomowe i doktoranckie w USA. Pan dr Bołdak ma nieco materiałów, które zostawiła pani Aleksandra Augustyniak, a które mogą zainteresować osoby chcące tam kontynuować studia. Mogę też przekazać to, co zapamiętałem z prezentacji - kontakt ze mną na stronie About.

Uśmiechnijcie się :)

Tak jak to powiedział Kuba - uśmiechnijcie sie :).

Szczególny zaś uśmiech przesyłam Żabie, która bardzo chciała być tu wymieniona ;D :* Kocham Ciebie :)

Prezentacja funkcje haszujące

Umieszczam prezentacje, która dziś pomogła mi przy wygłoszeniu krótkiego referatu na przedmiocie Ochrona Baz Danych :).

Format odf

Format pdf

Format ppt (najgorszy, bo coś się layout psuje :P)

Systemy samouczące

Umieściłem pierwsze wykłady z Systemów samouczących od prof. dr hab. Leona Bobrowskiego, można je sciągnąć z podstrony. Będę się starać uzupełniać je systematycznie :).

8 lat (czyli przynudzam wspominając)

Rozmowa z moim bratem przypomniała mi dziś, że Quake 3 ma już 9 lat.

Pamiętam że dzieliliśmy wtedy komputer - mocny jak na tamte czasy, Pentium III 500MHz, 64 MB RAM (bo pamięć podrożała po trzęsieniu ziemi na Tajwanie), dysk twardy Western Digital 8GB, grafika 3dfx Voodoo 3 3000 z 16MB pamięci i kartą Sound Blaster Live! Value - wszystko na płycie głównej ABIT BE6. Prehistoria? Niekoniecznie, komputer ciągle pracuje, z nieco większą ilością pamięci i drugim dyskiem twardym, na płycie zaś wystarczyło przelutować kondensatory.

Dlaczego to jest ważne? Bo komputer miał na płycie głównej kontroler dysków twardych ATA66 HighPoint Technologies 366, i przez niego podłączony dysk twardy. Przez to nasze pierwsze podejście do instalacji Linuksa, a dokładniej egzotycznej do dziś dystrybucji TurboLinux nie powiodło się - kto mógł wiedzieć, że wystarczy przepiąć taśmę od dysku do złącza obok? :)

Na szczęście niedługo wyszła wersja 7.1 Madrake Linux (dziś Mandriva), wspierająca HPT366 - system się zainstalował. I tak 8 lat temu zostałem linuksiarzem*. Cholernie dawno temu, jak sobie teraz myślę… A szczególnie gdy spojrzę na wersję jądra w tym wydaniu - 2.2.15

A potem przyszedł kernel 2.4, w głowie utkwiło mi że miał przynieść rewolucję w dziedzinie multimediów - jakoś się potoczyło aż do dziś.

* - linuksiarzem mogłem zostać nieświadomie nieco wcześniej, bo jeszcze gdy o możliwości założenia internetu w domu nie marzyłem miałem skrzynkę pocztową na free.net.pl, przez co i shella przez telnet. Ale to chyba było jakieś BSD…. ;)

Ubuntu Customization Kit

Umieszczam (zaległą ;) ) prezentację z krótkich zajęć dodytczących Ubuntu Customization Kit, na zajęciach Białostockiej Grupy Użytkowników Linuksa. Sam materiał nie jest za bardzo trudny, tak więc zapraszam każdego do obejrzenia :)

Prezentację można pobrać stąd w formacie .odp.

Bój w hucie czyli sesja w wysokiej temperaturze, edycja lato 2007/2008

[IO]
Zerówki:
-środa, 18 czerwca 2008, 12.00 - Sieci komputerowe, dr Oskar Świda, Aula M-449 na Wydziale Mechanicznym

Pierwszy termin:
- poniedziałek, 23 czerwca 2008, 8.00 - Metody wielowymiarowej analizy danych, prof. dr hab. Leon Bobrowski, Aula C
- wtorek, 24 czerwca 2008, 10.00 - Bazy danych, dr inż. Eugenia Busłowska, Aula 1 Wydziału Elektrycznego
- środa, 25 czerwca 2008 - Metody wielowymiarowej analizy danych, prof. dr hab. Leon Bobrowski, egzamin ustny
- czwartek, 26 czerwca 2008, 10.00 - Hurtownie danych, dr Marek J. Drużdżel, Aula B
- piątek, 27 czerwca 2008, 12.00 - Inzynieria oprogramowania, dr inż. Marek Krętowski, Aula B
- poniedziałek, 30 czerwca 2008, 12.00 - Sieci komputerowe, dr Oskar Świda, Aula B

Studies at Bialystok Technical University

I’m a student at Bialystok Technical University, Computer Science faculty. I’m group leader, so sometimes I’ll post some important informations and studying materials.

For now, you can find presentations prepared by prof. Leon Bobrowski for Methods of Multivariate Analysis (Metody wielowymiarowej analizy danych). Enjoy! :)

I’ll mark updates by posting comments, so you can subscribe RSS Comments Feed

Next Page →