GIF

Материал из Неолурк, народный Lurkmore
(перенаправлено с «Гиф»)
Перейти к навигации Перейти к поиску

GIF (сокр. от Graphics Interchange Format, гиф, гифка, ерет. джиф) — формат изображения, изобретенный в 1987-м году специально для передачи по интернетам и обосновавшийся там до сих пор. Доставляет прежде всего возможностью уродовать веб-страницы рябящей в глазах анимацией.

ТТХ[править]

GIF является форматом сжатия без потерь, поддерживающий, правда, до 256 цветов в палитре. Впрочем, это могут быть любые 256 цветов — хоть Web Safe, хоть 256 оттенков серого или, скажем, жёлтого. Так что сложносочинённые градиентики и фоточки в ГИФе выглядят фигово, зато разные скриншоты, диаграммы и схемы — очень неплохо (гораздо лучше чем в JPEG при заметно меньшем размере). Умеет использовать пиксели разных пропорций, чем никто и никогда не пользуется, а также прозрачные пиксели (один из 256 цветов может быть «прозрачным»). Это, кстати, единственный из графических форматов с прозрачным цветом, правильно отображаемый б-гомерзким IE6, поддержку которого до сих пор требуют от верстальщиков особо изощрённые заказчики. И, что самое главное, поддерживает покадровую анимацию изображений: можно задавать последовательность картинок, каждая из которых висит на экране X сотых долей секунды, а потом сменяется следующей.

Кошерной заменой для GIF без анимации явлется PNG (который, к слову, ещё и меньше занимать будет), так как в indexed color (изображения с палитрой — 256 цветов и менее) ослик IE6 таки отображает прозрачность в PNG правильно — Ken Silverman (автор движка Duke Nukem 3D) гарантирует это: pngout. Поскольку PNG не поддерживает анимацию, был создан формат MNG. Но вскоре MNG умер, и на его смену пришёл неофициальный формат APNG, который впоследствии тоже R.I.P.

Применение[править]

Широко и разнообразно; основной, впрочем, смысл — привлечь внимание какой-нибудь анимацией. Началось всё с анимированных логотипов и крутящихся черепов эпохи Веб 1.0, а также проном в те времена, когда никаких ютубов порнотубов и в проекте не было. Подробнее:

Ещё можно использовать как один из вынужденных методов для просмотра стереофото, также позволяет увидеть стереофото одноглазым.

Вообще, применение ГИФов на настоящий момент сложно и многогранно. Дело в том, что «крутую анимацию» можно вставить практически куда угодно обычным IMG-тегом, а для изготовления почти не требуется мозга. В результате гифы используются в Педивикии для иллюстрации, например, физических или математических процессов, создаются гипнотические и рекурсивные гифы, а также такие, которые можно располагать друг за другом мозаикой и получать связную анимацию. Есть специальные сайты типа http://giftube.com, где можно обмениваться гифами. Разумеется, можно хвастаться перед коллегами-школьниками гифом с волнительно колеблющимися сиськами из любимого прона. Ну и картинки с сюрпризами, куда уж без них.

Будущее[править]

ГИФ все ещё популярен как никогда, и деваться никуда не собирается. И плевать, что пост с большим количеством гифов (особенно — огифенных сцен из фильмов) весит примерно столько же, сколько полнометражный фильм в AVI, и на нём виснет браузер. Новомодные теги HTML5 типа video хоть и могут теоретически вытеснить ГИФ, но их всё ещё поддерживают не все браузеры, ещё меньше блогов и форумов, ну и главное — вставка видео таки требует минимального количества мозга, а гиф — «поставил и оно крутится». Гипотетически возможен заменитель в виде анимированного PNG, но, поскольку не являясь, ни стандартом W3C, ни даже стандартом libpng самого PNG, подавляющее большинство браузеров APNG игнорирует, да и преимущество, в общем-то, небольшое — снято ограничение на 256 цветов, а вот весит оно… Не говоря уже о том, что сжимать ПНГ можно разными способами, что ещё больше сбивает с толку простодушного анонимуса. Так что мы очень любим ГИФ! Только ГИФ! Хайль ГИФ!

На Уютненьком[править]

На Уютненьком загрузка гифов с некоторых пор запрещена по техническим причинам с формулировкой «нахуй это ваше задротство» (до сих пор при желании можно найти немало пикч в этом формате, залитых ещё до введения запрета). Потому иллюстраций в этой статье не будет, кроме, конечно же, рекламы в GIF слева. Хотите залить — перезаливайте в APNG.

На самом-то деле, причина в том, что медиавики некорректно обрабатывает некоторые варианты отлупа, которые могут на некоторых гифках вернуть похапэшные библиотеки, что, при правильной гифке, кладёт движок Лурки чуть более, чем полностью. А ещё этим грешит KusabaX — ну да вы наверняка сталкивались. Рекламные движки (и допиленная умелым админом покусямба) это дело знают и обрабатывают корректно. Поэтому некоторые модераторы, в случае экстремальной важности, готовы руками проверить гифку на кошерность и залить её — по крайней мере, теоретически обещали, но в реале того, чего принципиально нельзя конвертнуть, пока не встретилось.

Вконтакте[править]

Дуров в 2012-м году запилил на своем сайтике поддержку GIF-ов, видимо, в надежде приблизить конец света (поддержку ввели где-то за месяц до). Конец света так и не наступил, а гифки остались. В результате в Рунете наступил новый бум GIF-ов, потому что школота принялась радостно вставлять движущиеся картинки, выражающие ее эмоции лучше, чем смайлики.

APNG[править]

APNG — это какбе обычный PNG, который украл анимацию у GIF. При этом все кадры имеют одни и те же цветовой режим и палитру (если она есть). Каждый кадр может обладать свойством наложения на предыдущий кадр. APNG не может иметь локальную палитру (а ведь именно это свойство помогает обойти ограничение в 256 у GIF, однако размер может сильно вырасти), но может использовать 24-бит цвета и 8-бит альфа-канала. Работает исключительно в Огнелисе, браузере разработчика формата, Safari 8+ и Opera 11/12. Для остальных браузеров отображается статичная картинка.

Для отображения в прочих браузерах можно использовать хреновый костыль в виде особых CSS-уловок, которые доступны любым браузерам, поддерживающим HTML5 Canvas, — например, IE 9, для Google Chrome есть специальное расширение для отображения APNG, работающее по этому принципу костыля. По сути, оно получает, затем ломает APNG на множество отдельных PNG-картинок и воспроизводит их через HTML5 Canvas.

Отдельно стоит отметить, что APNG, будучи исключительно поделием Mozilla, не имеет никакого отношения ни к Web-стандартам, ни к самому стандарту PNG и его libpng, что делает поддержку формата сторонними браузерами не только маловероятной, но даже вредной. С графическими редакторами ситуация ещё хуже, из-за непродуманности и кривости формата, работа с APNG чревата сбоями и глюками при работе со стандартными PNG (конфликт стандартов), вследствие чего, нативная поддержка APNG не внедрена даже в GIMP, куда радостно втыкают поддержку любого GPL поделия. Остаются только разные просмотрщики изображений — для них не критично.

Поэтому совершенно внезапно в конце июля 2013 года на неофициальном сайте формата появилась таинственная надпись:

Animated PNGs are dead and will never return.

Однако сайт в один прекрасный день воскрес. Кстати, никто не знает, но хром поддерживает анимированный WebP (как lossy, так и lossless). Недавно появилась поддержка APNG в WebKit и Safari. Желающие могут забубенить и APNG, и WebP, и GIF через Modernizr. Впрочем, терпению может прийти конец. Тогда можно просто взять и скомпилировать chromium с APNG, благо исходники имеются. Один программист обещает опубликовать для желающих код с APNG… предварительная версия уже имеется.

По состоянию на 2016 год, плагин поддержки APNG полностью перестал работать в Chrome\Chromium\Opera, а его автор разводит руками. Причина проста — разработчики движка Blink закрыли дырку, позволявшее окружению дважды перезагружать изображение капчи, а в месте с тем закрыли возможность работать данному расширению построенному на этом принципе.

См. также[править]

Ссылки[править]

03ef4f7db0cccdf39bf013566aed31bd.jpg Системы, без которых машина просто откажется работать
СистемыAndroidDOSFreeBSDHaikuЛинуксMenuetOSMacOS (OS X) / Хакинтош / iOSOS/2ReactOSWindows / ВиндаРусОСФантом ОСUnixHarmony OSWindows vs. LinuxАстра ЛинуксMATEKaiOSChimbalixIOS 18WinGetThe Amnesic Incognito Live SystemTemple OS
СредыGNOMEGNU EmacsKDEЛинус Торвальдс vs x86 64
ЛюдиБалмерГенерал ФейлорПоттерингСтоллманТорвальдсФолькердингРуслан КармановRealme (компания)
Дистрибутивы LinuxArchDebianFedoraFinnixGentooLFSUbuntu (BolgenOS) • СлакаUncom OSTiny10Tiny11Дешёвые ключи для Windows
Версии виндыWindows 95Windows 98Windows 2000Windows XPWindows VistaWindows 7Windows 10Windows 11Windows Phone 7Windows Phone 8ГовносборкиWindows MEWindows Школьник
ПользователиАдминБздун • Виндузятник • КрасноглазикЛинуксоидЯблочник
Площадки/s/LORru macru.os.cmpstoplinux.org.ru
Мемы/dev/null • BSD, not LSD • GIFGNOME vs. KDEMac vs. PCOS-tanrm -rfSystem32TRUE-DEATH-PRIMITIVE-LINUX-MITOLLWindows vs LinuxБубенВендекапецГномикиДаунгрейдЕсли бы…Ждём ебилдовКЛБМаздайПатчить KDE2 под FreeBSDПереустановка WindowsПриборчикРаспечатать лицензию на ЛинуксTuxТупые свитчерыФениксНе работай под рутомБлокировка Windows в РоссииОСВзлом Windows через Metasploit
Достойные упоминанияAmigaСтарая копипаста:Шindows
Dt2.png В/гсч и-т т-нты в ппк
ILADSLAFAIKAFKAISBAJAXASLASMRAYBABTUBBSBOFHBRBBSODBTWC&CCMSCYADCDDLCDDoSDFCDRMEFGFAQFNAFFTGJFTNFTLFTWFUBARGIFGNGNAAGPONGTAGTFOHISHEI2PIANALICWYDTIIRCinb4IMHOIRCITTJFGI (UTFG)RYTPJBJFGIKISSKSPLFSLMAOLMDLOICLOLMILFMMORPGNEDMNRBNSFWNYPAOMGO RLY?P2PPHPRACROFLRPGPSGRTFMRTSSADMSEOSICPSOPASTFUTBStl;drTorTOSTTYLUWBFTPWOWWTFXABYFRYOBAYTMNDZMHKSPCSDOSICQGGYFWTFWYOLOHFYIEHYIPSBI
ИЖ265АПВОВНВ? • АПВС? • АСДПБАОБАПББПЕБХКПВА? • ГКГСРДТФЕБМПЕВПОЧЯЕМНИПЕОТCPWWWИПХЕРЖЖЖИЧСХКБиОКГ/АМКЛБКПЗКСМЛОРЛППМНУМПХНЁХОБВМОБЧРОИНЧОСОЯШПГМПНХППКСРЛОСЗОТСИГСПГСССЗБСУБДСХБТВНТКПТПУГУМВРУЧНН(С)РФГМХЗХЗКНРЧСВЭОСЯННПЯПОЭЗКСЕСДS.T.A.L.K.E.R.ЧВИВЦАТСРЕН ТВППСОСПВКЮТКЧЗХЛОМЕРЗССЖГПНСВПСАПРППП
RL14/88YWNBAWA.C.A.B.akaAMVASAPBDSM©CPCOVID-19DIYetcHBOKFCKKKLGRTRMTVNASCARN.B.NHKP. S.R.I.P.SOADsXeWWJDY2KZOGHTFWLMINRIНАТОMacOSTNBMPSPNESDJDEFCONWB
РЖАвтоВАЗ (ТАЗВАЗКамАЗ) • АК-47АКМБАДБГБомжБОЧВВПВИDВУЗ (ИТМОМГИМОМФТИНМУ) • ГДЗГДРГИБДДГЛОНАССГМОГОСТГрОбГСМДКДМБДПНИЕдРоЗПППИБДКВНКЕМКМВКМПКВКНДРКНОРКОБКПЛОКСПМКАДМММНБПНЛОНЛПНОДНОМНТВОБСОпСоСОСАГООТРПДРСПМСПНКСПСППРАЕНРБКРЖДРПЦСДВСОРМСПИДСССРСТССШАТЛЗТНТФБРФСБХУЯСЦАЧГКЫЮАРЮЮДВРРАОЧПУЕM4КПЛПВРУВСУОУКБРГПЕвЖЦПХВСЕГЕИМХВХДТПВПКСПХГММРЛС