KDE w Polsce
KDE 4.1!
Start → Nowości → KDE 4 →

Prace nad KOffice w ramach SoC

Mija już kolejny rok, w którym studenci w ramach Google Summer of Code zajmują się projektami związanymi z KOffice. W tym roku bardzo ciekawych projektów było wiele. Zapoznajmy się więc z ich wynikami.

Lista projektów:

  • Emanuele Tamponi, możliwości malarskie w programie Krita (opiekun: Bart Coppens)
  • Fredy Yanardi, narzędzia tekstowe w formie wtyczek dla aplikacji KOffice (opiekun: Tomas Mecir)
  • Marijn Kruisselbrink, obsługa dla notacji muzycznych w KOffice (opiekun: Boudewijn Rempt)
  • Pierre Ducroquet, usprawnienia kompatybilności z OpenDocument w KWord (opiekun: Sebastian Sauer)
  • Sven Langkamp, wizualizacja narzędzia zaznaczania (opiekun: Casper Boemann)

W tym roku mieliśmy jeden smutny przypadek - jeden ze studentów, mający zajmować się funkcją edycji zespołowej znikł niemal na stałe, pojawiając się jedynie na chwilę na półmetku projektu dodając trochę kodu źródłowego. Nie istnieje więc obecnie funkcja edycji zespołowej w KWord. Coż, nie można wygrać wszystkiego.

Wyżej wymieniona piątka studentów spisała się zaś bardzo dobrze, często wychodząc nawet poza ramy tego, czego na początku oczekiwali od nich opiekunowie. Przyjrzyjmy się bliżej czego dokonali do tej pory.

Spis treści

  • 1 Emanuele Tamponi
  • 2 Fredy Yanardi
  • 3 Marijn Kruisselbrink
  • 4 Pierre Ducroquet
  • 5 Sven Langkamp
  • 6 Zakończenie

[edytuj] Emanuele Tamponi

Jednym z zadań jakimi zajmuje się Emanuele jest możliwość mieszania kolorów w sposób naturalny, poprzez symulowanie odbicia światła na pigmencie. Jest to proces dwustopniowy: zaczyna się od koloru zdefiniowanego w RGB, poprzez kolor zdefiniowany ustawieniami pigmentu i światła, z powrotem do koloru RGB. Pierwszy krok jest realizowany przez użycie spektrometru i mierzenia właściwości kolorów. Emanuele napisał program, który symuluje taki proces bez specjalistycznego sprzętu. Umożliwia on powtarzalność procesu, jak również daje możliwość eksperymentowania.

Jest to tylko część jego pracy: innym realizowanym zadaniem jest możliwość malowania więcej niż jednym kolorem jednocześnie oraz możliwość przechwytywania koloru przez narzędzie Pędzel z płótna. Mieszanie kolorów naprawdę wciągnęło Emanuele, pozostawiając mniej czasu na inne zadania. Zdołał jednak zakończyć wstępne wersje wszystkich projektów. Na chwilę obecną ciągle nad nimi pracuje i będzie je udostępniał w nowych odsłonach.

Mieszanie kolorów

[edytuj] Fredy Yanardi

Nowa architektura Flake dla KOffice 2.0 nie tylko umożliwia budowanie aplikacji łączących w sobie wszelkiego rodzaju elementy w wyspecjalizowanych dokumentach, ale pozwala również na łatwe dodawanie nowych funkcji z użyciem wtyczek. Zadaniem Frediego było wykonanie tych wtyczek, zarówno po to aby zademonstrować elastyczność architektury Flake jak i dodać przydatne funkcje do programu KWord. Warto przypomnieć, że przy przepisywaniu KWord 2.0 stracono dużo istniejących wcześniej funkcji, ponieważ aplikacja ta została napisana całkowicie od nowa.

Do tej pory wykonano:

  • Zakładki
  • Zmiana wielkości liter na duże lub małe
  • Autokorekta
  • Tezaurus zintegrowany z wordnet(ang.)
  • Statystyki dokumentu

Ponieważ udało się ukończyć projekt przed zakończeniem Summer of Code, Fredy dodał jeszcze nowe okno dialogowe zawierające paletę kolorów do wybroru i możliwość edycji nowych palet.

KWord
KWord

[edytuj] Marijn Kruisselbrink

Mówiono, że tego się nie da zrobić. Jeżeli się czegoś nie da zrobić to trzeba wziąć kogoś kto o tym nie wie, przyjdzie i to zrobi. Taką osobą tym razem okazał się Marijn. Zbudował on wtyczkę umożliwiającą wpisywanie i edycję nut w dokumencie KOffice. Wtyczka ta jest tak samo złożona jak sławny już edytor formuł matematycznych. Obsługuje ona wiele ścieżek, skale, dodawanie i usuwanie nut z każdego dokumentu, odczytywanie i zapisywanie w dokumentach ODF, import i eksport do i z plików MusicXML. Marijn zaczął swoją pracę jeszcze przed SoC, a w już kwietniu plugin potrafił już wyświetlać nuty w programie KWord. Z interesujących rzeczy warto wspomnieć, że istnieje możliwość automatycznego przenoszenia nut (zawijanie) do następnej linii, co jest bardziej złożone w przypadku muzyki niż tekstu.

Spośród wszystkich innych, ta wtyczka najlepiej obrazuje siłę i możliwości jaka drzemie w architekturze Flake. W przyszłości Marijn planuje wprowadzać kolejne udoskonalenia: łączenie nut, obsługę tekstów piosenek, wielostronicowy zapis nutowy oraz możliwość przenoszenia nut do OpenOffice i innych aplikacji zgodnych ze standardem OpenDocument.

Notacja muzyczna
Notacja muzyczna

Na zdjęciu widać również, że programowanie KOffice pod Mac OS X jest jak najbardziej możliwe.

[edytuj] Pierre Ducroquet

Zaraz po tym, jak zaczęło się przepisywanie na nowo programu KWord, aplikacja przestała oferowałać obsługę formatu ODF. Zadaniem Pierre'a i jego opiekuna Sebastiana Sauer'a jest odtworzenie obsługi tego formatu. Pierre był obecny na spotkaniu poświęconemu OpenDocument w Berlinie i krok po kroku odbudowuje tą obsługę. Udało mu się nawet wprowadzić do KWord styl przekreślenia, który nie jest wogóle obsługiwany przez Qt Scribe. Nawet OpenOffice.org nie wspiera tej części standardu! Z innych przeszkód do pokonania można wspomnieć o zestawie testów, które opierają się o standardowe zachowania OpenOffice.org i zaprzeczają standardowi OpenDocument. Pierre zapowiedział, że będzie kontynuował pracę nad rozwojem obsługi OpenDocument w KOffice.

OpenDocument w KOffice‎
OpenDocument w KOffice‎

[edytuj] Sven Langkamp

‎

Krita nigdy nie posiadała słynnej wizualizacji zaznaczania w stylu "maszerujących mrówek" (marching ants) stworzonej niegdyś przez Billa Atkinsona dla programu MacPaint. W naszym programie zaznaczanie zawsze było pokazywana w postaci maski, ponieważ w filozofii twórców Krity między zaznaczeniem a maską nie ma większej różnicy. Poza tym nie za bardzo wiedziano jak zrobić taka wizualizację. Ponieważ samo zaznaczanie w stylu "marching ants" to niewiele jak na projekt Summer of Code, Sven zajął się całym narzędziem selekcji.

W poprzednim roku, Emanuele zbudował bibliotekę dla krzywych Beziera dla Krity. Umożliwiło to powstanie narzędzi magnetycznej selekcji i selekcji za pomocą krzywych Beziera, aczkolwiek krzywe te były zamieniane na piksele. Ponieważ po ciężkich pracach Jan Hambrechts i Thorsten Zachmann przenieśli tą funkcję do postaci wektorowej ścieżki kształtu w bibliotece Flake, postanowiono to wykorzystać także w dla wizualizacji selekcji.

Narzędzie selekcji w Krita zawiera teraz dwa komponenty: maskę umożliwiającą stopniową selekcję oraz ścieżki z możliwością edycji kształtu w dowolnym momencie. Oczywiście zostało jeszcze dużo pracy, ale najważniejsze jest, że Sven skierował Kritę 2.0 na właściwą drogę.

Selekcja składająca się z wektorów:

Selekcja wektorowa
Selekcja wektorowa

Selekcja składająca się z maski pikseli:

Selekcja maski
Selekcja maski

[edytuj] Zakończenie

Podobnie jak w roku poprzednim, programiści KOffice byli bardzo zadowoleni ze studentów, którzy pomagali w tym roku. Współpraca układała się znakomicie. Nad KWord pracują obecnie trzy osoby zamiast jednej. Oczywiście nadal bardzo mile widziani są nowi programiści, którzy by chcieliby się sprawdzić w dużym projekcie. Jeżeli czujesz, że jest coś co mógłbyś ulepszyć, poprawić lub napisać od nowa dla KOffice, nie czekaj do następnego Google Summer of Code i dołącz już dzisiaj!

Skomentuj ten artykuł na forum KDE »
Ten artykuł jest tłumaczeniem tekstu Pencils Down for KOffice Summer of Code Students! z serwisu dot.kde.org.
Źródło: "http://kde.org.pl/Nowo%C5%9Bci/KDE_4/Prace_nad_KOffice_w_ramach_SoC"

Kategorie: Strony na podstawie dot.kde.org | KOffice

RSS Feed
Atom Feed
Logowanie
Copyright © Zespół kde.org.pl. KDE® i logo K Desktop Environment® są zarejestrowanymi znakami towarowymi KDE e.V. (szczegóły). Qt® i Trolltech® są zarejestrowanymi znakami towarowymi Trolltech ASA. Linux® jest zarejestrowanym znakiem towarowym Linusa Torvaldsa.