Phatch Contributors Guide.rtf

(13 KB) Pobierz

Współpracownicy Phatch Kierują

=========================

 

obraz::obrazy / splashscreen2.png[Phatch Logo]

 

.Phatch = Zdjęcie & Wypiek!

**********************************************************************

Phatch jest prostym, by użyć skrzyżować -, który posługuje się zupełnie popularne formaty obrazu i może podwoić (łódź podwodna)folder hierarchie. Phatch może wypieki zmienić wielkość, obracają się, przemianowują, ... i więcej w minutach zamiast godzin albo dni, jeśli robisz to ręcznie. Phatch też poprze wersję konsoli w przyszłości, by wypiek zdjęcia na webservers.

**********************************************************************

 

Wprowadzenie

------------

Powitaj

~~~~~~~ dziękować za przyczynianie do Phatch!

 

* Mógłbyś mieć ekscytowanie pomysłów jak rozciągnąć funkcjonalność z nowymi cechami. Dobra wiadomość jest, że Phatch został zaprojektowany od ziemi w górze, by zrobić rozwój mechanizmów tak łatwo jak możliwy.

* Albo mógłbyś zechcieć napisać jakąś dokumentację albo podręcznik.

 

Nakazały Umiejętności

~~~~~~~~~~~~~~~

Developping Mechanizm plugins

^^^^^^^^^^^^^^^^^^^^^^^^^^ rozwinąć mechanizmy dla Phatch tobie tylko potrzebować znać http://www.python.org[Pyton] i http://www.pythonware.com/products/pil[PIL] ( Bibliotekę Obrazu Pytona). Chociaż Phatch używa http://www.wxpython.org[wxPython] dla jego krzyż - platforma GUI, nie potrzebujesz w wszystkim wxPython napisać mechanizmów. Phatch zrobi wszystkiego GUI pracują automatycznie dla ciebie za scenami, więc będziesz mógł w pełni skoncentrować się na manipulacji obrazu. Też nie martw się o internationalisation, Phatch będzie troszczył się o to także.

 

Pisząc dokumentację

^^^^^^^^^^^^^^^^^^^^^ możesz pracować z notatnikiem, gedit albo kate? Świetnie, to jest wszystko, że, co potrzebujesz. Dokumentacja jest wygenerowana od plików czystego tekstu, które idą za http://www.methods.co.nz/asciidoc[asciidoc] format. Oni mogą zostać przetłumaczony następnie w dużo różnych formatów, takie jak html i pdf. Nie potrzebujesz zainstalować asciidoc, by napisać dokumentację. Możesz wysłać pliki czystego tekstu zespołowi rozwoju Phatch i będziemy troszczyli się o to. Jednakże, jeśli będziesz ciekawy, znajdziesz instrukcje w tej instrukcji dalej jak zainstalować asciidoc na Ubuntu Feisty, by wygenerować pdfs. To mogłoby być usefull także, by zainstalować asciidoc na innych obsługujących systemach.

 

Tłumacząc

^^^^^^^^^^^

* Przetłumaczyć aplikację, która Phatch jest zrobiony przez https:// tłumaczenia.launchpad.netto / phatch / magistrala /+ naczynia / phatch[launchpad].

* Tłumaczenie dokumentacji jest zrobione z czysty tekst plikami asciidoc. Bądź pewny, by trzymać kopię tekstu programu, na którego bazujesz twoje tłumaczenie. To pozwoli ciebie, by szybko zobaczyć co zmieniło się z celownikiem diff kiedy nowa dokumentacja będzie dostępna dla tłumaczenia.

 

Mechanizm Developping Plugins

--------------------------

Dostając Zaczęty: Odwróć

~~~~~~~~~~~~~~~~~~~~~~~

Wprowadzenie

^^^^^^^^^^^^ najlepsza droga, by zacząć się ma pierwszego lat, by rozwinąć funkcję PIL, która posługuje się manipulację. Następnie tworzysz pole wejścia żeby, by podać wymagane parametry do funkcji PIL. Invert jest wzięty jako pierwszego badania przypadku jako to nie wymaga jakichś parametrów z wyjątkiem obrazu się. Popatrzmy na kod źródłowy :

 

.Odwróć kod źródłowy Mechanizmu

[pyton]

źródło ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

od rdzeń modeli importu                                    # < 1 >

od rdzenia.init

 

def _t importu tłumaczenia():                                                           

    # leniwy import

    globalny Obraz, Obraz

    importu ImageChops, ImageChops

       

# ---

def funkcji PIL odwraca(obraz,ilość = 100):                              # < 2 >

    odwrócił = ImageChops.odwróć(obraz)

    jeśli równaj się < 100:

        odwrócił  = Obraz.mieszanka(obraz, odwrócony, ilość / 100.0)

    jeśli obraz.tryb == RGBA:

        odwrócił.putalpha(obraz.pęknięcie()[-1])

    wraca odwrócił

           

# --- Phatch Mechanizm

klasa Mechanizm(modele.Mechanizm):                               # < 3 >

    etykieta       = _t(Odwraca)

    autora      =

    email Stani       =" spe.stani.be@gmail.com"

    init        = staticmethod(init)                       # < 4 >

    pil         = staticmethod(odwraca)                     # < 5 >

    wersja     = "0.1"

    etykietki        = [_t(" kolory")]

    __doc__     = _t(" odwraca kolory obrazu")      # < 6 > interfejs

   

    def(się,pole):                            # < 7 >

        pole[_t(Ilość)] = samo.SliderField(100,1,100)

             

    ikonka = \                                               # < 8 >" x \ xda \ x01 \ x91 \ nn \ xf5 \ x89PNG \ r \ n \ x1a \ n \ x00 \ x00 \ x00..."

źródło ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

< 1 > Importując Moduły.

< 2 > Definiując Funkcję PIL.

< 3 > Definiując Mechanizm.

< 4 > Łącząc funkcję init.

< 5 > Łącząc funkcję pil.

< 6 > Opisując Mechanizm.

< 7 > Definiując Interfejs. Modele modułu dostarczają architektury dla plugin: " Mechanizm klasy" i wejściowe pole.Każdy inny moduł, który potrzebujesz importować z funkcja "init()", w którym deklarujesz, że oni są jak globalni. Na przykład odwrócić obraz z PIL potrzebujesz "ImageChops" moduł.

 

NOTE: Dlaczego moduły są musiane, by zostać importowany w metodzie seperate? Powód jest, że Phatch w importach startup wszystkie mechanizmy, by wyciągnąć informację, którą to potrzebuje o mechanizmach. Jeśli importy byłyby zadeklarowane normalnie, startup byłby opóźniony około być może modułami unneeded.

 

Definiując funkcję PIL

^^^^^^^^^^^^^^^^^^^^^^^^^ funkcja PIL powinna zostać zdefiniowana oddzielnie od mechanizmu. To jest dobór projektowania, podobny do dzielenia Modelu od Widok w MVC podejściu.

 

Definiując Mechanizm

^^^^^^^^^^^^^^^^^^^ potrzebujesz utworzyć nowy " Mechanizm klasy" który jest wyprowadzony od "modele.Mechanizm". Potrzebujesz zdefiniować mechanizm z "etykietą", "autorem", "email", "init", "pil", "wersją", "etykietkami" i "__doc__" własnościami. "etykieta" i "__doc__" ukażą się wytłumaczył w" dodawać mechanizm" ramkę dialogową. Właśnie dlatego potrzebujesz oznaczyć ich z "_t" funkcją. Łączymy się naszego init i funkcję pil jako statyczne metody do klasy. ( W tej chwili "etykietki" i "opis", który może zawrzeć dłuższy opis niż "__doc__" ten - liniowiec, nie jest wystawiony jeszcze.)

 

Opisując Mechanizm

^^^^^^^^^^^^^^^^^^^^^

W własności opisu możesz opisać mechanizm pracowicie. Użyj potrójnych cytatów dla wielo - - tekst linii.

 

Dodając Ikonkę

^^^^^^^^^^^^^^

Jako w przykładzie żadna określona ikonka nie została dodana, Phatch użyje zaniedbania jednego. W paczka programu demonstracyjnego wxPython (pyton - wxtools) jest program użytkowy "img2py.py". Z poszły za rozkazem możesz przemienić jakiś obraz (eg.png) do pliku pytona:

 

    $ pyton img2py.ikonka fileName py.py

 

To wygeneruje "ikonka.py" plik, w którym znajdziesz poszły za kodem:

 

[pyton]

źródło ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ getData

def():

    zwróć zlib.zmniejsz ciśnienie(" dane ikonki")

źródło ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ teraz możesz dodać" dane ikonki" twojemu tekstowi programu mechanizmu, by zdefiniować ikonkę:

 

[pyton]

źródło ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Mechanizm

klasy(modele.Mechanizm):

    opis = """Odwróć kolory obrazu."""

    ikonka        =" dane ikonki"

źródło ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

NOTE: Wewnętrznie praca Phatch z " zdjęciami". Photos składa się z wielokrotnych " warstw". Każda " warstwa" zawiera " obraz", ale też ma, że jego własność wyrównała postion. Phatch nie wystawia tej funkcjonalności jeszcze, ale później popiera w pełni odłożone zdjęcia, tylko jak w Galonie. Hierarchia, by zapamiętać jest: Zdjęcie > Odłóż > Obraz. Na szczęście nie musisz zmartwić się o tym w początku jako Phatch dostarcza ciebie łatwa metoda, by zastosować funkcję PIL bieżący obraz warstwy: "apply_to_current_layer_image".

 

Dalej Bądź na studiach

~~~~~~~~~~~~~

Prawdopodobnie patrząc na kod źródłowy mechanizmów, nauczą ciebie najwięcej. Znajdujesz wszystkie mechanizmy w folder "phatch / mechanizmach"

 

[ikonka ="./ obrazy / ikonki / ubuntu.png"]

NOTE: Jeśli zainstalowałeś Phatch na Ubuntu, prawdopodobnie mechanizmy są w folderze: "/ usr / wyzwolenie / python2.5 / miejsce - paczki / phatch / mechanizmy"

 

Przeczytał podręcznik na http://photobatch.wikidot.com/writing-actions[wiki].

 

Pisząc Dokumentację   

---------------------

Wprowadzenie

~~~~~~~~~~~~ mechanizm użył do dokumentacja jest asciidoc. Możesz znaleźć więcej informacji tutaj: http://www.methods.co.nz/asciidoc/[] możesz wysłać pliki czystego tekstu, które będą przetłumaczone do pdf html. Html będzie opublikowany na stronie internetowej Phatch, która mogłaby zawrzeć jakieś ogłoszenia. Wersja pdf będzie prezent do kogoś, kto darowuje. Jeśli przyczyniasz się dokumentację, zgadzasz się z tymi warunkami

 

Instalujący AsciiDoc

~~~~~~~~~~~~~~~~~~~

Ubuntu Feisty

^^^^^^^^^^^^^

1) Instalować od składów

 

Ciebie potrzebuje zainstalować te paczki:

 

  sudo trafny - dostań się zainstalować asciidoc docbook - xml docbook - xsl źródło - podświetlić

   

2) Zainstalować FOP (dla pdf)

 

By wygenerować pdfs, że będziesz potrzebował http://xmlgraphics.apache.org/fop/[FOP], który niestety nie jest dostępny jako paczka. Też potrzebujemy starszą wersję, ponieważ bieżący nie jest kompatybilny z paczkami Ubuntu. Dlatego pobierz http://archive.apache.org/dist/xmlgraphics/fop/binaries/fop-0.20.5-bin.zip[lalusia -0.20.kosz 5.zamek].

   

Rozepnij ten folder dokąd chcesz, na przykład "/ optuj / laluś". Zrób łącze symboliczne tak lalusiowi.sh jest rozpoznany jako rozkaz:

 

    ln sudo -s / optuj / laluś / laluś.sh / usr / miejscowy / kosz / laluś.sh dodaje tę linię do lalusia.sh żeby to mogło znaleźć twoją wersję java:

 

    JAVA_HOME =/ słońce 6 usr / wyzwolenie / jvm / java oczywiście, jeśli używasz innej java - wersji, łącza do tego pliku zamiast. Aby dodać poparcie dla obrazów PNG, potrzebujesz pobrać bibliotekę JIMI od SUN. Z powodu upoważniania wyjść, biblioteka obrazu JIMI nie jest włączona do dystrybucji FOP. Pierwszy, pobierz http://java.sun.com/products/jimi[JIMI]. Wtedy rozepnij folder i skopiuj plik "JimiProClasses.zapnij" od archiwum do { laluś - instalują - dir }/ 1.0 wyzwolenie / jimi.słoik. Proszę zauważ, że FOP dwójkowe dystrybucje są zestawione z poparciem JIMI, więc nie ma żadnej potrzeby dla ciebie, by zbudować FOP, by dodać poparcie. Jeśli 1.0 jimi.słoik jest zainstalowany w właściwym miejscu, to automatycznie będzie użyte przez FOP, inaczej to nie będzie.

 

3) Źródło podświetlające

 

Kopię filtr ("./ przykłady / źródło - podświetlają - filtrować / źródło - podświetlają - filtr.conf") do jednej z standardowych lokacji filtra AsciiDoc typowo "/ etc / asciidoc / filtry /" albo "~/.asciidoc / filtry /". Niestety źródło podświetlające tylko praca z rozkaz "asciidoc" i nie z "a2x".

 

 

(C) zastrzega sobie prawa autorskie 2007 http://www.stani.be[www.stani.be]

Zgłoś jeśli naruszono regulamin