Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision Previous revision Next revision | Previous revision | ||
gil_generic_image_library_-_konwersje [2009/04/28 21:09] bszwajko |
gil_generic_image_library_-_konwersje [2009/04/28 21:29] (aktualna) bszwajko |
||
---|---|---|---|
Linia 12: | Linia 12: | ||
Niniejszy tekst ma na celu zaprezentowanie możliwości jakie oferuje GIL w zakresie konwersji | Niniejszy tekst ma na celu zaprezentowanie możliwości jakie oferuje GIL w zakresie konwersji | ||
pomiędzy najpopularniejszymi formatami plików graficznych - JPEG, PNG oraz TIFF. Autorzy wyrażają nadzieję iż w przyszłości zakres obsługiwanych formatów zostanie rozszerzony. | pomiędzy najpopularniejszymi formatami plików graficznych - JPEG, PNG oraz TIFF. Autorzy wyrażają nadzieję iż w przyszłości zakres obsługiwanych formatów zostanie rozszerzony. | ||
- | * GIL | + | |
+ | * GIL | ||
* Extensions | * Extensions | ||
- | * dynamic_image | + | * dynamic_image - nagłówki związane z dynamicznym tworzeniem obrazów |
- | * i/o | + | * i/o - kod obsługujący operacje odczytu/zapisu |
===== Konwersja z i do podstawowych typów ===== | ===== Konwersja z i do podstawowych typów ===== | ||
- | Konwersje pomiędzy formatami plików sprowadzają się przy zastosowaniu biblioteki GIL do wczytania posiadanego pliku do obiektu Image a | + | Konwersje pomiędzy formatami plików sprowadzają się przy zastosowaniu biblioteki GIL do wczytania posiadanego pliku do obiektu //Image// a |
- | następnie do zapisania w żądanym formacie. | + | następnie do zapisania go w żądanym formacie. |
Jak wspomniano na wstępie GIL potrafi obsługiwać obrazy niezależnie od formatu ich zapisu. Głównymi parametrami | Jak wspomniano na wstępie GIL potrafi obsługiwać obrazy niezależnie od formatu ich zapisu. Głównymi parametrami | ||
są przestrzeń kolorów (RGB, CMYK, etc.) oraz głębia kolorów (8bit, 16bit, etc). Stąd też do wczytywania plików z dysku | są przestrzeń kolorów (RGB, CMYK, etc.) oraz głębia kolorów (8bit, 16bit, etc). Stąd też do wczytywania plików z dysku | ||
oferuje szereg przeciążonych metod. Dzielą się one na trzy przypadki: | oferuje szereg przeciążonych metod. Dzielą się one na trzy przypadki: | ||
- gdy znamy dokładny format zapisanego pliku | - gdy znamy dokładny format zapisanego pliku | ||
- | - gdy nie znamy modelu zapisu barw oraz głębi kolorów GIL odczyta je za nas i utworzy automatycznie obiekt zgodny z orginałem | + | - gdy nie znamy modelu zapisu barw oraz głębi kolorów GIL odczyta je za nas i utworzy automatycznie obiekt zgodny z oryginałem |
- gdy nie znamy w/w cech i chcemy stworzyć obiekt o zadanych przez nas parametrach | - gdy nie znamy w/w cech i chcemy stworzyć obiekt o zadanych przez nas parametrach | ||
Linia 39: | Linia 40: | ||
Kod konwertujący zaczynamy następującymi poleceniami: | Kod konwertujący zaczynamy następującymi poleceniami: | ||
- | <code cpp>// Tworzymy vector z przykładowymi typami obrazów - 8 i 16 bitowe w odcieniach szarości orz 8 i 16 bitowe | + | <code cpp>// Tworzymy vector z przykładowymi typami obrazów - 8 i 16 bitowe w odcieniach szarości oraz 8 i 16 bitowe |
// obrazy typu RGB - jest to konieczne w przypadku wczytywania informacji o pliku w czasie wykonania | // obrazy typu RGB - jest to konieczne w przypadku wczytywania informacji o pliku w czasie wykonania | ||
Linia 104: | Linia 105: | ||
- | ===== Kod z przykładowym wykorzystaniem ===== | + | ===== Przykładowy kod ===== |
- | [[http://mion.elka.pw.edu.pl/~bszwajko/boost_gil-convertion_file_formats.cpp|boost_gil-convertion_file_formats.cpp]] | + | * [[http://mion.elka.pw.edu.pl/~bszwajko/boost_gil-convertion_file_formats.cpp|boost_gil-convertion_file_formats.cpp]] |
+ | * [[http://home.elka.pw.edu.pl/~bszwajko/test.jpg|test.jpg]] | ||
+ | * [[http://home.elka.pw.edu.pl/~bszwajko/test.png|test.png]] | ||
+ | * [[http://home.elka.pw.edu.pl/~bszwajko/test.tiff|test.tiff]] | ||
- | [[http://home.elka.pw.edu.pl/~bszwajko/test.jpg|test.jpg]] | ||
- | |||
- | [[http://home.elka.pw.edu.pl/~bszwajko/test.png|test.png]] | ||
- | |||
- | [[http://home.elka.pw.edu.pl/~bszwajko/test.tiff|test.tiff]] | ||
===== Linki zewnętrzne ===== | ===== Linki zewnętrzne ===== | ||
[[http://stlab.adobe.com/gil |Strona domowa GIL]] | [[http://stlab.adobe.com/gil |Strona domowa GIL]] |