August 20th, 2012

Corvax

hugin

     Оказывается, если взять старинный велосипед - что-то типа "большеколёсного велосипеда Джеймса Старли" (ну, все себе его представляют), и постепенно дорабатывать-заменять-добавлять отдельные детали, то можно в результате собрать небольшой внедорожничек - ну так, класса "УАЗ-патриот", причём все промежуточные этапы эволюции будут вполне себе ездить (хотя и иногда требовать обматывания скотчем или отталкивания ногой при старте, ну или съезжать в кювет при неудачном порыве ветра), и сама эволюция будет довольно плавной, с одним резким скачком - установкой на раму ДВС.
     Доказано программой Hugin: основана она на пакете PanoTools, который, в-общем, примерно этот велосипед из себя и представлял (причём в духе "юниксвея" - ну или IKEA, кому что больше нравится - больше напоминал "ведро с болтами и железными плашками, перед использованием скрутить", чем монолитную программу), "резкий скачок" - собственно, создание hugin'а, как графической "обёртки" вокруг всей этой "банки с червяками" (к тому времени независимо доэволюционировавшей примерно до уровня горного вела на чугунной раме), а дальше - плавная эволюция к тому, что мы сейчас имеем. Собственно, УАЗик и имеем: прёт не разбирая дороги, но КПП естественно ручная, и "под капотом" иногда надо пошаманить.

     Это я сегодня поставил свежескачанный hugin, и, помня о том, как он вёл себя раньше, радостно удивлялся, что теперь он, блин, спокойно работает "из коробки", без необходимости читать линуксовые исходники и рисовать странные батники для обхода "встроенных внутрь" синтаксических ошибок :-) Просто работает, и всё тут. Кстати, ночной кадр из позапрошлого поста собран hugin'ом - конкретно, программой enfuse. Как мне упорно кажется, её результат получается лучше, чем "классический HDR" - ну, или я этот самый классический HDR готовить не умею.

     Впрочем, "enblend: excessive overlap detected; remove one of the images // enblend: info: remove invalid output image "crw-IMG_1856-2020_exposure_0001.tif" я всё равно считаю издевательством (не буду даже объяснять почему), а дефолтное ограничение использования памяти программой enblend в 1Гб в 64-битной системе (самая памятежручая часть пакета, при этом скорость работы резко - на 1-2 десятичных порядка! - зависит от используемой памяти) - это, хм, вызывает недоумение :-) Оно настраивается, конечно (я поставил 12Гб), но для этого надо знать, что оно вообще настраивается (для начала - что оно существует), после чего "искать нужный ключик" (проще всего - запуском из командной строки), поставлять ключик в строчку настроек... в-общем, опять юниксвей. Впрочем, и с 1Гб оно работает. Только тормозит на больших панорамах.
сисадмин Глюкин 2

max-width

     Продолжаю терзать несчастный стиль max-width.
     Несколько постов назад запостил широкую (1600px) фотку, без ката, но добавив в img стиль style="max-width:90%". Проверил "на себе" (на своей френдленте, на френдленте произвольного взаимофренда, проверялось в хроме) - всё масштабировалось нормально.
     Сейчас выяснил, что в ряде случаев этот img таки рвёт ленту - например, при просмотре в FF. Хотя при этом по inspect element выдаётся, что max-width ничем не перекрыт и активен.
     У кого-нибудь ещё тот пост (с ночной фоткой) ленту рвал? Есть идеи, как предотвратить (кроме явного задания ширины в пикселях и/или прятания под кат)? Или, может быть, я где-то лажанулся и не заметил?
     !important пробовал - с ним вообще магия происходит: в хроме всё работает как и работало (и !important в коде страницы есть, я проверял), а в опере и ФФ - из кода страницы(!) исчезает этот самый !important. Что лично меня несколько фрустрирует - ладно, допустим жежешечка сама срезает "опасные" по её мнению стили, но не селективно по браузерам же :-)

     UPD: I win, I win!!! Просто style="max-width:90%!important" недостаточно, надо дополнительно явно указать width="90%"! Тогда, тьфу-тьфу, не рвёт. [Хотя по-моему это бардак.]Но вообще бардак по-моему. Если width не указан - должен использоваться naturalwidth (или как там его), если указан max-width - width должен ограничиваться по max-width, если ширина указана в процентах, по стандарту она берётся "от ширины родительского элемента". И в хроме всё так и есть, а в ФФ - нет. Если же я указал width=90% и max-width=90%, то во-первых это тавтология (90%, но не более 90%), а во-вторых при этом получается что на широком экране (с охватывающим элементом больше naturalwidth) я прошу браузер увеличить картинку больше чем она есть! Но этого - не происходит, картинка остаётся естественного размера. То есть получается что надо бы мне сделать width=90%, а max-width - равным naturalwidth, но что-то не очень хочется это тестировать - а ну как опять сломается. Бардак, в-общем :-/
     В подспойлерную фотку добавил width="90%" - проверьте теперь, не рвёт ли? И, это. Если у меня чего кого рвёт и мечет - пишите сразу, ок? А то я ведь могу и не знать, что кому-то ленту разорвал :-)

[для удобства - та самая фотка под спойлером]