Артыкул вымагае праверкі арфаграфіі Удзельнік, які паставіў шаблон, не пакінуў тлумачэнняў. |
Артыкул вымагае вікіфікацыі. |
Пашырэнне |
.gif |
---|---|
MIME | image/gif |
Распрацаваны | CompuServe[d][1] і Steve Wilhite[d] |
Тып фармату | растравая графіка |
Пашыраны з | Lempel–Ziv–Welch[d] |
GIF (англ.: Graphics Interchange Format — «фармат для абмену выявамі») — папулярны растравы фармат графічных выяў. Здольны захоўваць сціснутыя даныя без страты якасці ў фармаце не больш за 256 колераў. Фармат GIF, які не залежыць ад апаратнага забеспячэння, быў распрацаваны ў 1987 годзе (GIF87a) фірмай CompuServe для перадачы растравых відарысаў па сетках. У 1989-м фармат быў мадыфікаваны (GIF89a), былі дададзены падтрымка празрыстасці і анімацыі. GIF выкарыстоўвае LZW-кампрэсію, што дазваляе сціскаць файлы, у якіх шмат аднародных залівак (лагатыпы, надпісы, схемы). Доўгі час GIF быў адным з найбольш распаўсюджаных фарматаў у інтэрнэце.
Стваральнікі фармату вымаўлялі яго назва як «джыф» /dʒɪf/[2]. Тым не менш, у англамоўным свеце шырока выкарыстоўваецца і вымаўленне «гіф» /gɪf/, заснаванае на тым, што GIF — скарачэнне ад Graphics Interchange Format. Абодва варыянты вымаўлення пазначаны як правільныя слоўнікамі Oxford English Dictionary[3] і American Heritage Dictionary[4].
У беларускай мове файлы ў фармаце GIF часам называюць «гі́фкамі».
Відарыс у фармаце GIF захоўваецца парадкова, падтрымліваецца толькі фармат з індэксаванай палітрай колераў. Стандарт распрацоўваўся толькі для падтрымкі 256-каляровай палітры.
Адзін з колераў у палітры можа быць абвешчаны «празрыстым». У гэтым выпадку, у праграмах, якія падтрымліваюць празрыстасць GIF (напрыклад, большасць сучасных браўзераў) скрозь пікселі, афарбаваныя «празрыстым» колерам, фон будзе бачны. «Напаўпразрыстасць» пікселяў (тэхналогія альфа-каналу) не падтрымліваецца.
Фармат GIF падтрымлівае анімацыйныя відарысы. Яны ўяўляюць сабой паслядоўнасць з некалькіх статычных кадраў, а таксама інфармацыю аб тым, колькі часу кожны кадр павінен быць паказаны на экране. Анімацыю можна зрабіць цыклічна (англ.: loop), тады ўслед за апошнім кадрам пачнецца прайграванне першага кадра і г. д.
GIF-анімацыя можа выкарыстоўваць празрыстасць для таго, каб не захоўваць чарговы кадр цалкам, а толькі змены адносна папярэдняга.
Недакументаваная магчымасцю, якая ўсё ж падтрымліваецца, з’яўляецца захаванне большай колькасці колераў з дапамогай аніміраванага GIF з нулявой затрымкай паміж кадрамі. Пры гэтым пераадольваецца абмежаванне ў 256 колераў: кожны кадр утрымлівае сваю палітру[удакладніць][5].
GIF выкарыстоўвае фармат сціску LZW. Такім чынам добра сціскаюцца выявы, радкі якіх маюць участкі, якія паўтараюцца. У асаблівасці выявы, у якіх шмат пікселяў аднаго колеру па гарызанталі[6].
Алгарытм сціску LZW адносіцца да фарматаў сціску без страт. Гэта азначае, што адноўленыя з GIF даныя будуць у дакладнасці адпавядаць спакаваным. Варта адзначыць, што гэта дакладна толькі для 8-бітных выяў з палітрай, для каляровай фатаграфіі страты будуць абумоўлены канвертацыяй яе да 256 колераў.
Метад сціску LZW распрацаваны ў 1978 годзе ізраільцянамі Абрахамам Лемпелям і Якабам Зівам, а пазней дапрацаваны ў ЗША Тэры Велчам. LZW сціскае даныя шляхам пошуку аднолькавых паслядоўнасцяў (яны называюцца «фразы») ва ўсім файле. Выяўленыя паслядоўнасці захоўваюцца ў табліцы, ім прысвойваюцца больш кароткія маркеры (ключы).
Метад LZW, гэтак жа, як і RLE, лепш дзейнічае на аднародных участках, свабодных ад шуму колераў, ён дзейнічае значна лепш, чым RLE, пры сціску адвольных графічных даных, але працэс кадзіравання і распакавання адбываецца павольней.
Фармат GIF дапускае празрадковае захоўванне даных. Пры гэтым радкі разбіваюцца на групы, і змяняецца парадак захоўвання радкоў у файле. Пры загрузцы выява праяўляецца паступова, у некалькі праходаў. Дзякуючы гэтаму, маючы толькі частку файла, можна ўбачыць выяву цалкам, але з меншай раздзяляльнасцю.
У празрадковым GIF’е спачатку запісваюцца радкі 1, 9, 17 і г. д. Такім чынам, загрузіўшы 1/8 даных, карыстальнік будзе мець уяўленне аб цэлай выяве. Другім праходам ідуць радкі 5, 13, 21, раздзяляльнасць выявы ў браўзеры яшчэ ўдвая павялічваецца. Нарэшце, трэці і чацвёрты праход перадаюць (3, 7, 11, 15, 19…) і (2, 4, 6, 8, …). Такім чынам, задоўга да заканчэння загрузкі файла карыстальнік можа зразумець, што ўнутры, і вырашыць, ці варта чакаць поўнай загрузкі выявы. Празрадковы запіс нязначна павялічвае памер файла, але гэта, як правіла, апраўдваецца ўласцівасцямі, што набываюцца.
Маска, якая выкарыстоўваецца ў GIF:
1 4 3 4 2 4 3 4 |
Існуе дзве спецыфікацыі фармату GIF — GIF 87a і GIF 89a.
Першая спецыфікацыя была створана ў 1987 годзе кампаніяй CompuServe для замены састарэлага фармату RLE. GIF стаў папулярным у ходзе развіцця інтэрнэту, бо дазваляў выкарыстоўваць больш кампактныя (па памеры файла) па параўнанні з іншымі фарматамі выявы на вэб-старонках. Хоць да цяперашняга часу фармат шмат у чым састарэў і для яго замены створаны фармат PNG, ён па-ранейшаму шырока выкарыстоўваецца. GIF-фармат запатрабаваны пры стварэнні так званых сінемаграфаў.
GIF першапачаткова выкарыстаў прапрыетарныя алгарытмы, аднак тэрмін дзеяння патэнтаў на іх мінуў. У ЗША патэнт на алгарытм сціску LZW, які выкарыстоўваецца ў GIF (патэнт № 4 558 302) скончыўся 20 чэрвеня 2003 года. Тэрмін дзеяння канадскага патэнта завяршыўся 7 ліпеня 2004 года. Дзеянне патэнта для Вялікабрытаніі, Францыі, Германіі і Італіі завяршылася 18 чэрвеня 2004 года, а для Японіі — 20 чэрвеня 2004 года.
Тэрмін дзеяння апошняга патэнта на GIF скончыўся 11 жніўня 2006 года[7].
Існуе фармат APNG, створаны ў 2004 годзе, які выкарыстоўвае 24-бітныя колеры і 8-бітную напаўпразрыстасць, які працуе ў браўзеры Mozilla Firefox пачынаючы з 2007 года. Некаторыя праграмы і пашырэнні таксама падтрымліваюць APNG.