GIF
GIF | |
---|---|
Ընդլայնում | .gif |
MIME | image/gif |
Մշակող | CompuServe?[1] և Steve Wilhite? |
Ֆորմատի տեսակ | raster-graphics file format?, lossless compression?, image compression? և video compression? |
Բայթերի հերթականություն | little endian? |
Հիմք | Lempel–Ziv–Welch? |
GIF file format Վիքիպահեստում |
Gif-ը (անգլ.՝ Graphics Interchange Format — պատկերների փոխանակման ձևաչափ (ֆորմատ)) գրաֆիկական պատկերների հայտնի ձևաչափ է։ Ունակ է պահպանել առանց որակի կորստի խտացված տվյալներ 256 գույնից ոչ ավել ձևաչափով։ Սարքային ապահովումից կախում չունեցող Gif ձևաչափը 1987 թվականին (GIF87a) մշակել է CompuServe ֆիրման ռաստրային պատկերները ցանցով փոխանցելու համար։ 1989 թվականին ձևաչափը վերափոխվում է (GIF89a), ավելացվում են թափանցիկության հնարավորություն և անիմացիա։ GIF-ն օգտագործում է LZW-կոմպրեսիան, որը թույլ է տալիս խտացնել նիշքերը (ֆայլ), որոնցում շատ են միասեռ գունալցումները (լոգոտիպ, մակագրություն, սխեմա)։ Երկար ժամանակ Gif-ը Համացանցում ամենատարածված ձևաչափերից մեկն էր։
Անվան արտասանությունը
[խմբագրել | խմբագրել կոդը]«Ջիֆ», անունն այսպես էին արտասանում ձևաչափի ստեղծողները /dʒɪf/[2]։ Բայց և այնպես անգլալեզու աշխարհում լայն կիրառություն ունի «գիֆ» արտասանությունը /gɪf/, հիմնված նրան, որ GIF —ը անգլ.՝ Graphics Interchange Format հապավումն է։ Ըստ Օքսֆորդի անգլերեն բառարանի[3] և Ամերիկյան ժառանգության բառարանի[4] երկու տարբերակն էլ համարվում են ճիշտ։
Օգտագործման բնագավառը
[խմբագրել | խմբագրել կոդը]Gif ձևաչափում պատկերները պահպանվում են տողահաշվով, ընդունվում է միայն ինդեքսավորված գունակազմությամբ ձևաչափը։ Ստանդարտը նախագծվել է միայն 256 գունային ներկապնակին օժանդակելու համար։
Գույներից մեկը ներկապնակում կարող է հայտարարվել «թափանցիկ»։ Այս դեպքում ծրագրերում, որոնք օժանդակում են Gif-ի թափանցիկությունը (օրինակ՝ բրաուզերների մեծ մասը) «թափանցիկ» ներկված փիքսելների միջով կերևա ֆոնը։ Փիքսելների «կիսաթափանցիկություն» (ալֆա-ուղի տեխնոլոգիա) չի օժանդակվում։
Պատկերի անիմացում
[խմբագրել | խմբագրել կոդը]Gif ձևաչափը օժանդակում է անիմացիոն պատկերներ։ Դրանք իրենցից ներկայացնում են մի քանի ստատիկ կադրերի հաջորդականություն, ինչպես նաև տեղեկություն այն մասին, թե յուրաքանչյուր կադրը որքան ժամանակ պետք է երևա էկրանին։ Անիմացիան կարող է լինել ցիկլային (անգլ.՝ oop), երբ վերջին կադրին հաջորդում է առաջին կադրի վերարտադրությունը։
GIF անիմացիան օգտագործում է թափանցիկությունը, որպեսզի չպահպանի հերթական կադրն ամբողջությամբ, այլ միայն նախկինի համեմատ փոփոխությունները։ Ոչ փաստաթղթային, բայց օժանդակող հնարավորություն է հանդիսանում մեծաթիվ գույների պահպանումը կադրերի միջև զրոյական ուշացումով անիմացվախ GIF-ի միջոցով։ Այդ դեպքում հաղթահարվում է 256 գույնի սահմանափակումը. յուրաքանչյուր կադր պարունակում է իր ներկապնակը։
Խտացումը
[խմբագրել | խմբագրել կոդը]GIF-ն օգտագործում է խտացման LZW ձևաչափը։ Այսպիսով, լավ խտացվում են պատկերները, որոնք ունեն կրկնվող հատվածներ, հատկապես նրանք, որոնցում շատ են հորիզոնական միագույն փիքսելները։
LZW խտացման ալգորիթմը վերաբերվում է առանց կորստի խտացման ձևաչափերին։ Դա նշանակում է, որ GIF-ից վերականգնված տվյալները ճշտությամբ կհամապատասխանեն փաթեթավորվածին։ Հարկ է նշել, որ սա ճիշտ է ներկապնակով 8-բիթանոց պատկերների համար։ Գունավոր լուսանկարի համար կորուստները պայմանավորված են 256 գույնի անցմամբ։
LZW մեթոդը 1978 թվականին մշակել են հրեաներ Աբրահամ Լեմպելը և Յակոբ Զիվը, իսկ ավելի ուշ ԱՄՆ-ում Թերի Վելչը ավարտին է հասցրել այն։ LZW-ն նիշքում խտացնում է տվյալները նույնանման հաջորդականությունների (դրանց անվանում են փուլեր) որոնման միջոցով։ Հայտնաբերված հաջորդականությունները պահպանվում են աղյուսակներում, դրանց տրվում են ավելի կարճ մարկերներ (բանալիներ)։
LZW մեթոդը այնպես, ինչպես RLE մեթոդը, լավ է գործում միասեռ, խանգարումներից զերծ գույների հատվածում, այն գործում է RLE-ից շատ ավելի լավ, կամայական գրաֆիկական տվյալների խտացման դեպքում, բայց կոդավորումը և բացումն ընթանում են դանդաղ։
Միահյուսված GIF
[խմբագրել | խմբագրել կոդը]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 ձևաչափի 2 դասակարգում՝ GIF 87a և GIF 89a:
Առաջին դասակարգումն ստեղծվել է 1987 թվականին CompuServe ընկերության կողմից, հնացած RLE ձևաչափի փոխարինման համար։ GIF դարձավ հայտնի համացանցի զարգացման հետ, քանի որ թույլ էր տալիս վեբ-էջերում օգտագործել այլ ձևաչափերի համեմատ ավելի սեղմ (նիշքի չափով) նկարներ։ Չնայած այժմ ձևաչափը հնացել է և նրա փոխարինման համար ստեղծվել է PNG ձևաչափը, այն նախկինի նման լայնորեն օգտագործվում է։ GIF ձևաչափը պահանջված է այսպես կոչված սինեմագրաֆների ստեղծման համար։
Այլընտրանք
[խմբագրել | խմբագրել կոդը]Գոյություն ունի 2004 թվականին ստեղծված, 2007 թվականից Mozilla Firefox բրաուզերում աշխատող APNG ձևաչափը, որն օգտագործում է 24 բիթանոց գույներ և 8-բիթանոց կիսաթափանցիկություն։ Որոշ ծրագրեր և ընդլայնումներ ևս օժանդակում են APNG ձևաչափը։
Ծանոթագրություններ
[խմբագրել | խմբագրել կոդը]- ↑ http://apps.nationalarchives.gov.uk/pronom/fmt/3
- ↑ http://lenta.ru/news/2013/05/22/jif/%7Ctitle=ռուս.՝ Формат «ГИФ» оказался форматом «ДЖИФ»(չաշխատող հղում)
- ↑ http://dictionary.oed.com/cgi/entry/50292950?
- ↑ http://dictionary.reference.com/browse/GIF%7Ctitle=անգլ.՝ American Heritage Dictionary