home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1997 #3 / amigamamagazinepolishissue03-1 / ma_1995 / 07 / ami14 < prev    next >
Text File  |  1997-04-15  |  13KB  |  285 lines

  1. ImageFX w praktyce (cz. 7.)
  2. ---------------------------
  3.  
  4. WIEÛA BABEL, CZYLI RZECZ O FORMATACH
  5.  
  6. <lead>Od poczâtku swego istnienia Amiga byîa pod czymô w rodzaju
  7. klosza, chroniâcego uûytkowników oprogramowania graficznego przed
  8. jednâ z najwiëkszych plag, które dotykajâ posiadaczy innych
  9. komputerów. Juû na wstëpie twórcy systemu naszego komputera oraz
  10. specjaliôci z firmy Electronics Arts zaîoûyli, ûe formatem
  11. sîuûâcym do przechowywania danych graficznych bëdzie mutacja IFF.
  12. Najpierw byîy to pliki IFF w wersji ACBM, wkrótce jednak doîâczyî
  13. do nich, a nastëpnie niemal caîkowicie je wyparî, stosowany
  14. dzisiaj format IFF ILBM.
  15.  
  16. <a>Tadeusz Talar
  17.  
  18. <txt>Uîatwiaîo to wymianë danych pomiëdzy poszczególnymi
  19. aplikacjami do tego stopnia, ûe niektórzy posiadacze
  20. "przyjacióîek" nawet nie znali nazwy formatu pliku, w jakim
  21. zapisali swój obrazek. Waûne, ûe po narysowaniu ciekawego obrazka
  22. DPaintem moûna go byîo wczytaê do Scali, umieôciê jako ilustracjë
  23. w PageStreamie czy ProPage i wszystko dziaîaîo bez zarzutu,
  24. wystarczyîo wskazaê wîaôciwâ nazwë. Pewnego wyîomu chcieli
  25. dokonaê, co prawda, panowie z firm Impulse oraz Octree, których
  26. to sîynne produkty, tzn. Turbo Silver/Imagine i Caligari,
  27. zapisywaîy wygenerowane klatki w plikach wîasnego formatu (IMG8 i
  28. Rendition), ale byî to klasyczny wyjâtek od reguîy. W ten
  29. sposób to, co nie udaîo sië na innych "platformach sprzëtowych",
  30. gdzie liczba formatów przyprawia o zawrót gîowy i zwiëksza sië z
  31. miesiâca na miesiâc, a wîaôciwie z momentem pojawienia sië nowej
  32. aplikacji lub karty graficznej, udawaîo sië bardzo dîugo w naszym
  33. "amigowym ôwiecie".
  34.  
  35. Ostatnie lata udowodniîy jednak, ûe kaûdy kij ma dwa koïce.
  36. Osoby, którym udaîo sië "ôciâgnâê" z BBS-ów (lub przy uûyciu
  37. programów, takich jak CrossDos, MultiDos itp., uîatwiajâcych
  38. wymianë danych pomiëdzy poszczególnymi typami komputerów) pliki z
  39. obrazkami, tworzonymi przy uûyciu pecetowych czy macowych
  40. aplikacji, nie byîy zadowolone z faktu, ûe na Amidze za bardzo
  41. sië ich wykorzystaê nie da. Próby ich wczytania do popularnych
  42. programów graficznych najczëôciej koïczyîy sië niepowodzeniem. Z
  43. drugiej zaô strony pliki IFF ILBM nie dawaîy sië odczytaê za
  44. pomocâ aplikacji, dziaîajâcych na Macintoshach i pecetach
  45. (wyjâtek stanowiîy tu "niebieska" wersja DPainta II i "nie
  46. koronowany król" oprogramowania graficznego -- Adobe Photoshop).
  47. Wspomniany juû "klosz" staî sië wiëc "klatkâ", w której kaûdy,
  48. kto myôlaî troszkë powaûniej o Desktop Publishing czy DeskTop
  49. Video, czuî sië bardzo nieswojo.
  50.  
  51. Dziô, jak wiecie, problem z wymianâ danych graficznych pomiëdzy
  52. Amigâ a innymi komputerami zostaî rozwiâzany. Programy public
  53. domain, odczytujâce i zapisujâce plik w dowolnym formacie,
  54. "wbudowana" w nowe systemy Amigi koncepcja datatype'ów (dziëki
  55. której îatwo zmusiê nasz komputer do korzystania z danych,
  56. zapisanych w okreôlonym formacie) oraz coraz czëstsze wypadki
  57. stosowania w graficznych programach komercyjnych, oprócz formatu
  58. IFF ILBM, takûe innych (patrz Personal Paint czy Photogenics)
  59. pozwalajâ na bezproblemowâ komunikacjë ze "ôwiatem zewnëtrznym".
  60. Od poczâtku jednak prym w realizowaniu hasîa "aplikacje graficzne
  61. wszystkich platform, îâczcie sië!" wiodâ programy klasy IMAGE
  62. PROCESSING. Wybitnym lingwistâ, potrafiâcym "sië dogadaê" w
  63. kaûdym wîaôciwie narzeczu "wieûy Babel" formatów, jest ImageFX.
  64.  
  65. <sr>ImageFX -- "uniwersalny tîumacz"
  66.  
  67. <txt>Program ten (w swej najnowszej wersji 2.0) potrafi odczytaê
  68. dane graficzne (obrazki i animacje) w 40 formatach, zapisaê zaô w
  69. 30. Co bardzo istotne, wszystkie te moûliwoôci sâ wliczone w cenë
  70. programu, a nie tak jak w wypadku gîównego konkurenta ImageFX --
  71. ADPro, który standardowo "rozpoznaje" tylko kilka formatów
  72. graficznych i wymaga pakietu Pro Conversion Pack, pozwalajâcego
  73. na operowanie plikami tak powszechnie spotykanymi, jak m.in.
  74. TIFF. Lista formatów, na których moûe operowaê ImageFX, jest
  75. imponujâca i zawiera róûne rodzaje plików, "produkowanych" przez
  76. aplikacje graficzne na róûnych komputerach, czasami bardzo
  77. egzotycznych. Obok "klasyki" pecetowo-macowej, tzn. formatów BMP,
  78. GIF, JPEG, PCX, PhotoCD, PIC, PICT, TARGA, TIFF, moûna spotkaê
  79. formaty stosowane na stacjach graficznych i roboczych,
  80. pracujâcych w systemie UNIX (takûe z nakîadkâ X-Windows): PBM,
  81. SGI, SoftImage, SunRaster, WaveFront, X11WD, oprócz tego moûna
  82. wczytywaê ikony z Windows, czyli pliki ICO, oraz wektorowe pliki
  83. postscriptowe EPS, które zostanâ przez program odpowiednio
  84. "zrastrowane" wedîug wskazanych przez nas parametrów. Moûliwe
  85. jest takûe operowanie zawierajâcymi animacje plikami typu
  86. FLI/FLC, Grasp/DL i MPEG.
  87.  
  88. Korzystanie z pliku w danym formacie jest bardzo wygodne, bo
  89. program sam potrafi rozróûniê, jakiego typu plik chcemy wczytaê.
  90. ImageFX analizuje jego strukturë i jeôli odpowiada ona jednemu z
  91. "rozpoznawalnych" formatów, wczytuje go bez problemu do bufora
  92. gîównego. Wyjâtek stanowiâ pliki, w których informacja o formacie
  93. nie jest zawarta w nich samych, tzn. tak jak ma to miejsce np. w
  94. formacie TARGA. W tym momencie program wyôwietli listë dostëpnych
  95. formatów (rys. 1.), z której naleûy wybraê odpowiedni.
  96.  
  97. Sytuacja jest nieco bardziej zîoûona po wyedytowaniu obrazka
  98. w momencie zapisu na dysk. Po klikniëciu na gadûecie Save,
  99. program wyôwietla panel (rys. 2.), za pomocâ którego moûemy
  100. okreôliê, co i w jakim formacie chcemy zapisaê.
  101.  
  102. Piszâc "co", mam na myôli trzy, a wîaôciwie cztery moûliwoôci,
  103. tzn. Working Screen, czyli zapis ekranu roboczego ImageFX-a,
  104. Rendered Image -- zapis bufora Render, tzn. wygenerowanego przez
  105. program (w okreôlonym przez nas trybie i liczbie kolorów) obrazka
  106. i 24-Bit Buffer, czyli "zrzucenie" do pliku zawartoôci gîównego
  107. bufora programu, w którym obrazek przechowywany jest w postaci
  108. 24-bitowej. Czwartâ moûliwoôciâ jest dokonanie separacji
  109. kolorów poprzez klikniëcie na gadûecie Separate Buffer. W tym
  110. wypadku program "rozwarstwi" obrazek na skîadowe kolory RGB, CMY
  111. lub CMYK i kaûda "warstwa" zostanie zapisana do odrëbnego pliku.
  112. Opcjë të postaram sië bliûej przedstawiê przy okazji odcinka o
  113. "drukarskich" zastosowaniach ImageFX-a.
  114.  
  115. W kaûdym z powyûszych wypadków moûemy wybraê format pliku, w
  116. jakim chcemy zapisaê obrazek, i wîaônie w tym miejscu warto sië
  117. zastanowiê, jaki format bëdzie najbardziej odpowiedni w danej
  118. sytuacji.
  119.  
  120. <sr>Co wybraê?
  121.  
  122. <txt>Jeûeli nasz obrazek "ma funkcjonowaê" tylko w ôwiecie Amigi,
  123. odpowiedú jest prosta. Za kaûdym razem bëdzie to format ILBM,
  124. gdyû stosujâc go, mamy pewnoôê, ûe kaûda aplikacja go odczyta. W
  125. tym formacie moûna zapisaê równieû obrazki 24-bitowe (opcja
  126. 24-Bit Buffer), poniewaû wiëkszoôê nowszych wersji programów
  127. graficznych potrafi odczytaê tak zapisane dane (np. DPaint czy
  128. Scala serii MM nie ma z takimi obrazkami wiëkszych problemów, z
  129. tym ûe przy wczytaniu "redukujâ" one liczbë kolorów do 256).
  130.  
  131. Jeûeli natomiast chcemy, by nasz obrazek oczarowaî uûytkowników
  132. "niebieskich" lub smakoszy "jabîuszek", warto wybraê jeden z
  133. najczëôciej stosowanych w ich "ôwiatach" formatów. Obecnie
  134. (czytaj w roku 1995) najczëôciej uûywanymi formatami plików
  135. graficznych na pecetach sâ: BMP, GIF, PCX, TARGA, TIFF, natomiast
  136. "jabîuszka" operujâ zazwyczaj na plikach typu PICT i TIFF. W
  137. obydwu wypadkach bardzo czësto spotyka sië teû JPEG.
  138.  
  139. Przy tworzeniu obrazków, przeznaczonych do uûytku na innych
  140. komputerach, warto sië kierowaê pewnymi zasadami, które uchroniâ
  141. nas przed nieprzyjemnymi niespodziankami. Po pierwsze w wypadku
  142. generowania obrazka opcjâ Render w ImageFX naleûy unikaê trybu
  143. HAM, gdyû jest to "czysto amigowski" tryb, zwiâzany bezpoôrednio z
  144. charakterystycznymi dla naszego komputera rozwiâzaniami
  145. programowo/sprzëtowymi, i obrazki w HAM-ie nie bëdâ poprawnie
  146. wyôwietlane na innych komputerach (ze znanych mi programów tylko
  147. Photoshop "radzi sobie" z HAM-em). Po drugie warto pamiëtaê o
  148. wîaôciwych wymiarach obrazka. Na komputerach PC i Macintosh
  149. najczëôciej korzysta sië z rozmiaru 640 na 480 pikseli lub 800 na
  150. 600. Warto wiëc odpowiednio dostosowaê nasz obrazek za pomocâ
  151. opcji Scale w ImageFX-ie.
  152.  
  153. Tak naprawdë wybór formatu pliku, w jakim zapisujemy obrazek, ma
  154. jeszcze jeden bardzo waûny aspekt. Jeûeli aplikacja
  155. "wykorzystujâca" nasz obrazek moûe operowaê na kilku formatach,
  156. warto wybraê ten, w którym rozmiar pliku (przy zachowanej
  157. jakoôci) bëdzie jak najmniejszy. Poszczególne formaty róûniâ sië
  158. bowiem stopniem kompresji zapisanych w plikach danych. By uîatwiê
  159. Wam wybór, posîuûë sië maîym przykîadem.
  160.  
  161. Do programu ImageFX wczytaîem, moûe znany Czytelnikom z
  162. poprzednich odcinków, obrazek panienki (rys. 3., rozmiar 320 na
  163. 256 pikseli), a nastëpnie wygenerowaîem go w 256 kolorach i po
  164. wybraniu Save/Rendered Screen zapisaîem do plików w róûnych
  165. formatach. Wyniki prezentujë poniûej.
  166.  
  167. 256 KOLORÓW
  168.  
  169. ILBM            - 83,500 bajtów
  170.  
  171. --------------------
  172.  
  173. BMP             - 82,998
  174.  
  175. GIF             - 58,939
  176.  
  177. PCX            - 95,325
  178.  
  179. TARGA            - 82,706
  180.  
  181. TIFF            - 83,602
  182.  
  183. W tym wypadku, jak îatwo zauwaûyê, najbardziej efektywnym wydaje
  184. sië byê format GIF, opracowany przez firmë CompuServ. Dlatego nie
  185. powinien Was dziwiê fakt, ûe wiëkszoôê obrazków, znajdujâcych sië
  186. we wszelkiego rodzaju sieciach komputerowych, jest zapisana
  187. wîaônie w tym formacie. Z drugiej strony widoczna jest
  188. "rozrzutnoôê" jednego z prekursorów formatów graficznych dla
  189. komputerów PC, tzn. formatu PCX. Nasz amigowy ILBM na czwartym
  190. miejscu, i co ciekawe, wyprzedza on format TIFF, którego jednym z
  191. algorytmów kompresji jest stosowany w formacie GIF algorytm LZW
  192. (Lempel-Ziv-Welch, z niewiadomych przyczyn dla obrazków do 256
  193. kolorów twórcy ImageFX-a zastosowali inny, mniej efektywny, typu
  194. PackBits).
  195.  
  196. Sytuacja robi sië jeszcze ciekawsza w wypadku zapisu obrazka do
  197. pliku 24-bitowego (opcja 24-Bit Buffer). Otrzymujemy wtedy.
  198.  
  199. 24 BITY
  200.  
  201. ILBM             - 202,550 bajtów
  202.  
  203. ---------------------
  204.  
  205. BMP             - 245,814
  206.  
  207. PCX            - 247,403
  208.  
  209. TARGA            - 245,778
  210.  
  211. TARGA (RLE) - 307,942
  212.  
  213. TIFF            - 245,964
  214.  
  215. TIFF (LZW)     - 256,109
  216.  
  217.  
  218. JPEG (90%)     - 22,080
  219.  
  220. JPEG (40%)     - 7,433
  221.  
  222. Wôród "klasycznych" formatów najlepszym wydaje sië nasz IFF ILBM.
  223. W tym miejscu znowu rodzi sië pytanie: "co z tym TIFF-em?",
  224. zwîaszcza ûe wybór algorytmu kompresji LZW powoduje ZWIËKSZENIE
  225. rozmiaru pliku. Przyznam szczerze, ûe nie potrafië wyjaôniê tego
  226. faktu (byê moûe jest to jeden z przysîowiowych "kwiatuszków",
  227. którymi obdarowali nas twórcy programu). Niech nie dziwi brak
  228. formatu GIF na powyûszej liôcie, poniewaû w plikach tego typu
  229. moûna przechowywaê obrazki, zawierajâce do 256 kolorów. Pojawiî
  230. sië natomiast format JPEG i to z jakimi rezultatami!
  231.  
  232. Format ten jest stosunkowo najczëôciej stosowany do
  233. przechowywania danych 24-bitowych. Zastosowany w nim specjalny
  234. algorytm kompresji (oparty miëdzy innymi o FFT -- ang. Fast
  235. Fourier Transformation -- szybka transformacja Fouriera) zapewnia
  236. nie spotykanâ w innych formatach gëstoôê upakowania informacji.
  237. Niestety, nie ma róûy bez kolców. Z koniecznoôci uogólniajâc,
  238. jakoôê przechowywanego obrazka jest odwrotnie proporcjonalna do
  239. deklarowanego stopnia kompresji. By to wyjaôniê, wystarczy
  240. spojrzeê na rys. 4, 5, 6, 7. Oryginalny obrazek (640 na 512
  241. punktów) odczytany z pliku ILBM (bez kompresji) o rozmiarze
  242. 684,320 bajtów zapisany zostaî do plików JPEG z zachowaniem
  243. jakoôci odpowiednio 100%, 75%, 50% i 15%. W tym ostatnim wypadku,
  244. pomimo rewelacyjnego wrëcz spadku rozmiaru pliku, ujawniîy sië
  245. juû, w sposób bardzo widoczny, odksztaîcenia zwiâzane ze znacznym
  246. stopniem kompresji (widaê to zwîaszcza na powiëkszonym fragmencie
  247. rysunku). Rodzi sië wniosek: jeûeli chcemy wykorzystywaê obrazek
  248. 24-bitowy kilkakrotnie, bez obawy o jakoôê zawartej w nim
  249. informacji, to unikajmy formatu JPEG, ewentualnie stosujmy wysoki
  250. stopieï zachowania jakoôci (tzn. bliski 100).
  251.  
  252. <sr>Viewtek -- lekarstwo na brak pamiëci
  253.  
  254. <txt>W wypadku gdy nasz komputer nie ma pamiëci o odpowiednich
  255. rozmiarach, moûe sië zdarzyê sytuacja, w której przetworzenie za
  256. pomocâ ImageFX-a jakiegoô GIF-a czy JPEG na nasz poczciwy IFF
  257. ILBM moûe sië okazaê operacjâ niewykonalnâ. Wydawaîoby sië, ûe w
  258. tej sytuacji jedynym wyjôciem jest skorzystanie z jakiegoô mniej
  259. "pamiëcioûernego" programu lub próba "zrzucenia" zawartoôci
  260. gîównego bufora ImageFX-a do 24-bitowego IFF ILBM, a nastëpnie
  261. wczytanie go DPaintem i dopiero zapisanie do "normalnego" ILBM-a.
  262. Zanim jednak wybierzecie jednâ z powyûszych moûliwoôci, warto
  263. skorzystaê z usîug, dostarczanego w pakiecie ImageFX, programu
  264. Viewtek. Sîuûy on, co prawda, gîównie do przeglâdania obrazków
  265. IFF ILBM, GIF i JPEG oraz animacji ANIM i ANIM7, lecz dziëki
  266. temu, ûe zostaî wyposaûony w opcjë zapisu (dostëpnâ tylko w
  267. wypadku wyôwietlania obrazków) moûna, do pliku IFF ILBM 256
  268. kolorów, zapisaê kaûdy aktualnie wyôwietlany obrazek. Warto
  269. zaznaczyê, ûe lista obsîugiwanych formatów nie jest zamkniëta,
  270. Viewtek bowiem (podobnie jak ImageFX) wykorzystuje mechanizm
  271. DataType, stâd moûna jâ îatwo rozszerzyê.
  272.  
  273. Procedura konwersji jest bardzo prosta. Wystarczy uruchomiê
  274. Viewtek, wczytaê potrzebny obrazek, np. w formacie JPEG, i w
  275. momencie gdy ukaûe sië on w peînej krasie na ekranie monitora,
  276. wcisnâê klawisz [S]. Program wyôwietli requester i po podaniu
  277. przez nas nazwy pliku zapisze wyôwietlany obrazek w formacie IFF
  278. ILBM, w 256 kolorach.
  279.  
  280. Myôlë, ûe po przeczytaniu tego artykuîu, wyposaûeni w ImageFX,
  281. bëdziecie czuê sië choê troszkë pewniej, poruszajâc sië po istnej
  282. "wieûy Babel" formatów graficznych. Ûyczâc Wam zasypania Waszymi
  283. obrazkami caîego komputerowego ôwiata (od peceta, przez maca do
  284. Silicon Graphics) ûegnam sië do kolejnego spotkania z ImageFX-em.
  285.