?

Log in

No account? Create an account

Deja Vu
sirmaxfrei
Вычитал у одного пламенного патриота замечательный лозунг:
«Национальная идея - Улыбаемся И Пашем!»
А ведь я такое уже кое-где видел. У Оруэлла, в «Скотном Дворе».
Это звучало так: «Я буду работать еще больше».

Ла-Манш - «Погляд» - чьи это слова?
sirmaxfrei
Давненько не слышал этой песенки; услышал краем уха, скачал, послушал - и удивился.
А кто, собственно, поёт?... Не представляю себе обстоятельств таких, чтоб женщина спела это мужчине, и наоборот тоже.
Похоже, что единственный вариант - нава.

1С, но не 1С
sirmaxfrei
Поскольку в Незалежной всё московское объявлено дьявольским (что, в принципе, не так уж далеко от истины), гос-структуры объявили тендеры на замену московского софта отечественным. Отличная идея, да...

А выиграли тендер талантливые программисты из Харькова, вырезавшие все 1С-овские копирайты, логотипы без потери функциональности программы.

Сообщил об анекдоте нацист Вишталюк: https://www.facebook.com/VJaroslaw/posts/2415090415228107

Пиво кончилось
sirmaxfrei

Последнее качественное европейское пиво пропало в магазинах. Заменено той же маркой, но уже молдавского производства. Ради удовольствия выпить уже нечего: на полках местная дешевая моча и дорогая заграничная моча. Качественного продукта не осталось СОВСЕМ.

Я это переживу, вопрос в другом. Мы типа ж в Гейропу идём, да? Но как же это получается, что Европа от нас отдаляется?


Сказ о старинных иконках. Загадка 18 цветов. Прозрачный и инверсный цвета.
sirmaxfrei
Ну же, найдите мне того, кому ныне не плевать на лишние 100..300 байт!? Вот для этого зануды человека эта заметка и написана. )

В тех единичных случаях, когда мне нужно было записать выразительную иконку (.ico) приложения и одновременно следовало сэкономить байты, я пользовался следующим хаком: записывал изображение в 16-цветном режиме - но!  - не в обычной фиксированной палитре, а в адаптивной.

Что это даёт? Иконка 48х48, 1-битовая прозрачность, 256 цветов = 3774 байта, она же в 16 цветах = 1662 байт. Выигрыш – 2 килобайта, при незначительном падении качества изображения.


Пример. Слева - направо:
• 256-цветный оригинал
• фиксированная стандартная 16-цветная палитра (причем здесь пару минут подбирал штриховку, чтоб изображение имело хоть сколько-нибудь приличный вид)
• адаптивная 16-цветная палитра + штриховка (dithering).

Как это работает? Как ни странно, 16-цветная иконка всегда носит в себе палитру. То есть, 99.9% старинных иконок несут в себе абсолютно одинаковую 64-байтную таблицу цветов (4 байта на цвет). И, да – оказывается, её можно перепрограммировать.

К сожалению, я не знаком с программой, что умеет полноценно работать с такого рода иконками. Поэтому вот рецепт, как «неполноценно» состряпать подобную иконку: возьмите IrfanView, загрузите в него картинку: либо заранее подготовленную 16-цветную, либо уменьшите количество цветов прямо в нём: меню – изображение – уменьшить глубину цвета… – 16 цветов. Теперь: меню – сохранить как… – выбрать формат .ico. Всё? Нет, не всё: Irfan View не умеет работать с прозрачностью, её придется восстановить вручную в другой программе. Microangelo Studio умеет загружать и редактировать такие иконки (увы, создавать из них библиотеку, ровно как и создавать такие иконки «с нуля» он не позволяет). Загружаем иконку в Microangelo и… возможно, с ходу получаем окошко с предупреждением насчет «некорректной палитры» - что это значит на практике, будет рассказано позже. Инструментами «заливка» и «карандаш» отмечаем прозрачные зоны; записываем; готово!

Это было то, что я делал раньше, лет десять назад. Теперь, внимательно присмотревшись к палитре Microangelo, у меня возникли вопросы. Что это за странная палитра, 18 цветов? Как вообще можно хранить 18 цветов в файле? Число-то не круглое, господа программисты так не поступают; им это просто не удобно. )) Видно, что в палитре есть сплошных 16 цветов и два служебных: «прозрачный» и «инверсный». Что за «инверсный»? – если такой цвет встречается, он отображает негатив того, что лежит под ним; используется это чаще всего в курсорах; а курсор – он и по сути и по структуре файла –  тоже иконка. Но как хранятся все эти цвета? Если обычные точки изображения упакованы по 4 бита (16 цветов), то прозрачность может хранится только как отдельная битовая маска (1 бит на каждую точку изображения). Окей, а где же тогда хранится инверсия? Ещё одна маска, что ли? Не экономично, но возможно… Давайте-ка посчитаем.

Иконка 48х48, 16 цветов, 1 изображение. Размер файла 1662 байта. Что в нём? Я слабо представляю себе тонкости, но попробуем прикинуть. Главная часть, само изображение: 48*48/2 = 1152 байта. Палитра: 16*4 = 64 байта. Маска прозрачности 48*48/8 = 288 байт. Заголовок .ico, официально = 6 байт. Описание кадра (1 шт.) из документации = 16 байт. Итого: 1152+64+288+6+16 = 1526. Наверное, там есть что-то ещё, ведь реальный размер файла больше – но это не важно; важно другое, остаток «несходняка» мал: 136 байт, и он явно не позволяет разместить еще одну битовую маску размером 288 байт. Значит… инверсный цвет каким-то образом встроен в саму картинку. Может, теперь вы уж догадаетесь сами, как они это сделали?

А сделали они это, судя по всему, так: в оригинальных Windows (Win 95OSR2, Win 98, Win 2000; и частично Win XP и более новых, вплоть до Win 10) в иконках и курсорах, говоря строго, настоящего прозрачного цвета не существовало. Если альфа-маска показывала: текущая точка курсора/иконки «прозрачна» - брался цвет под курсором/иконкой и XOR-ился («исключающее “или”»; а может и просто вычитание было) – внимание! – с текущим цветом точки, взятым из палитры иконки.

Что получается? Если это был первый цвет (черный в фиксированной палитре), XOR (или вычитание?) делали с фоном «ничего» - цвет становился просто прозрачным. Если это был последний цвет (в фиксированной палитре – белый) – цвет менялся полностью, превращался в негатив. Это и есть весь секрет, как хранились «18 цветов»… Т.е., еще раз: «прозрачный» = черный + альфа-маска, «инверсный» = белый + альфа-маска. А теперь – поговорим о «глюках».

Упомянутое выше предупреждение Microangelo гласит: «у вас в палитре нет полноценного белого и черного цветов, работа с прозрачностью будет некорректной!». И вправду, наша адаптивная палитра вполне может обойтись без черного или белого цветов. Как же тогда отработает прозрачность? О, именно так, как мы и ожидаем: возьмется какой-то цвет из палитры (например, зеленый), «отксорится» (XOR) с фоном, и мы получим прекрасный фиолетовый цвет вместо прозрачности. )) Или иной пример - на место последнего цвета в палитре случайно попал черный: и «инверсия» превратилась в обычную полноценную прозрачность.


Пример: слева стандартная палитра, справа перепрограммированная. Слева прозрачность (P) и инверсия (I) отрабатывают как надо; справа – явно нет.

Впрочем, все эти прелести иконок мы можем наблюдать только в оригинальных Windows. Современные поделки, такие как Win 10, игнорируют цвета палитры, и битовая маска «прозрачность» всегда работает именно как прозрачность в чистом виде: XOR-а нет, и инверсии соответственно нет тоже. Однако, в механизме отображения курсора, всё-таки есть совместимость – там работает полноценная старая добрая экономичная схема; «тёплая, ламповая», и… мало кому понятная и нужная.


Пример: различное отображение одних и тех же иконок в Windows 2003 и в Windows 7.
Tags:

Рио вокруг бомбы - Край света
sirmaxfrei
Не нашел в интернетах лирики... пришлось на слух записать самому.
Вызывает вопрос слово «вето»... но, черт побери, «лето» там не уместно абсолютно.

Рио вокруг бомбы - Край света
1990
http://archive.org/details/rvb.tlt/09-.mp3

Край света, где небо
нырнет дельфином в глубину морей.
Край света, где света
не хватит нам среди полярных ночей.

Ты бродишь босая,
ищешь цветы среди холодных снегов.
Срывая букеты
морозов, айсбергов и вечных льдов.

Край света, где небо
взорвётся яростным сияньем огней.
Край света, где вето
на вечный праздник бесконечных дней.

2 x {
Ты краем ладони
смахнешь за край вчерашнюю любовь.
Со смехом, сквозь слёзы
Уйдешь, чтобы сюда вернуться вновь.
}

Верлибр
sirmaxfrei
...открыт! =) Мною  - для себя.

Вечная история: попался стих какого-то прибалта:
«Ух ты! Раз этот таков, каковы же прочие?! Верно, ещё лучше?...»
Но оказалось, автором был Арво Метс - лучший из когда-либо писавших свободным стихом на русском.

Эво и имидж
sirmaxfrei
Имидж - самая мутная из тем, подымаемых пани Мариной.
http://evo-lutio.livejournal.com/420227.html
Типичный процент ошибок в разборе задачек у пользователей в комментариях свыше 70%!
А это значит, что никто ни черта вообще не понимает.
Не понимаю и я.
Tags:

Открытое письмо Литресу
sirmaxfrei
Оригинал взят у david_m в Открытое письмо Литресу
Уважаемый Литрес (mylitres)! Я являюсь клиентом вашего магазина уже пять лет. За это время я приобрёл у вас электронных книг на сумму в несколько тысяч рублей. Мне нравится ваш магазин и удобным интерфейсом и хорошим выбором книг, и я бы с удовольствием оставался вашим клиентом и дальше. Но, к сожалению, последние новости заставляют меня принять другое решение.

Вчера на форуме 4pda.ru появилось письмо автора программы Moon+ Reader: http://4pda.ru/forum/index.php?showtopic=184358&view=findpost&p=19177079

В двух словах: Moon+ Reader — это популярное (около 10 миллионов установок) Android-приложение для чтения электронных книг и поиска в каталогах интернет-библиотек. Это приложение на днях было удалено из магазина Google Play по жалобе некоего Алексея Сангалова из Литреса на нарушение DCMA. Повод для удаления — приложение содержит ссылки (!) на каталоги интернет-библиотек, которые Литрес считает пиратскими. Приложение не имеет к Литресу никакого отношения, его автор даже не знает русского языка. Он оказался просто поставлен перед фактом удаления его программы с Google Play.

На 4pda.ru можно найти также любопытную позицию Литреса по этому вопросу: http://4pda.ru/forum/index.php?showtopic=184358&view=findpost&p=19196306. Оказывается, чтобы Литрес отозвал свою жалобу, автору приложения нужно получить от Литреса «чёрный список» сайтов, которые нельзя будет добавить в программу даже в ручную. А за это Литрес, от щедро своей широкой души, даже поделится с автором процентом с продажи своих книг через программу.

Также известно, что аналогичное письмо с угрозами и требованием вставить в программу «чёрный список» поступило автору другой читалки — Cool Reader (неск. миллионов установок): http://4pda.ru/forum/index.php?showtopic=184358&view=findpost&p=19186213

Таким образом, не имея возможности или желания бороться собственно с «пиратскими» сайтами, Литрес решил бороться с авторами приложений-читалок, которые к книгам, читаемым посредством их приложений, не имеют ни малейшего отношения. Но зато этих авторов можно очень легко «прижать» при помощи DCMA.

Дополнительный штрих к картине: Литрес имеет собственную программу-читалку на Google Play, популярность которой (сотни тысяч инсталляций) гораздо меньше популярности вышеперечисленных программ.

Уважаемый Литрес! Я не пользуюсь ни Cool Reader-ом ни Moon+ Reader-ом, однако я уверен, что такие методы «конкурентной борьбы» — путём шантажа и выкручивания рук — являются совершенно недопустимыми.

Как ваш клиент, я требую безусловного отзыва жалоб на программы-конкуренты и публичного извинения перед их авторами. Надеюсь, что вы сможете признать ошибочность своих действий.

До тех пор пока это не произойдёт, я прекращаю любые покупки в вашем магазине и приложу все усилия, чтобы мои друзья сделали то же самое.

Прошу моих друзей всячески репостить, лайкать, ретвитить и распространять эту информацию. Если, конечно, вы тоже согласны, что шантажу не место на рынке.

Оптимизм
sirmaxfrei
"Свистят – от восторга! Сигналят в пробках кортежам – от ликования! На вилы поднимают – чтобы рассмотреть получше!"