БлогNot. Блог ПерСа

Помощь дата->рейтинг Поиск Почта RSS канал Статистика nickolay.info Домой

блог chrome ошибка css html mathcad математика учебное софт windows c++ программирование шахматы маразм россия php алгоритм числа книги сервер чат музыка стихи сон образ личное опсосы деньги random jquery алкоголь афоризмы ретро политика деградация новосибирск фото графика сервис игра дата javascript цвет люди rip история список статистика быт погода все теги все комментарии


[1-15] [16-30] ... [1561-1575] [1576-1577]


Прикреплённое сообщение, правила и всё такое

Остеклить балкон, лоджию в Новосибирске? Проверено, Вам сюда

Encoding: Windows-1251 (Russian). Если картинки выключены: Поиск ::: Статистика ::: Помощь ::: E-mail ::: RSS ::: Nickolay.info

Для полноценной работы блога нужны картинки + JavaScript + Cookies. Ссылки, открывающие новое окно (вкладку), подсвечены.

Даже по законам Эрефии этот блог не является СМИ, все сообщения выражают личную точку зрения автора блога и являются оценочными суждениями, при этом любые совпадения мест, имён, названий и действующих лиц далеко не случайны. В блоге нет файлов, способных нанести вред Вашему компьютеру или мобильному устройству. Если Вам не исполнилось 18+, срочно отвалите отсюда, прикиньтесь ветошью и не отсвечивайте покиньте этот блог. Учтите, что читая этот блог, Вы вторгаетесь на мою личную территорию :) Страница статьидалее...
19.01.2038, 15:15 [5937]


Chrome и "разрыв рамок" в 1 пиксел

Изначально вопрос был о лишних вертикальных отступах, появляющихся в "Хроме" для ячеек таблиц <td>, содержимым которых являются картинки в теге <img>. Просто тег <img> - не совсем обычный, по устаревшей ныне терминологии он "блочно-строчный", а не чистый блок и не инлайн. Вертикальное выравнивание vertical-align у него по умолчанию равно значению baseline, то есть низ картинки будет находиться там, где находится нижний край всех "обычных" букв. А вот буквы вроде "р", "ф", "д" и другие имеют выступающую снизу "закорючку", потому и появляется отступ. Отсюда следует, что указание в стиле последовательности

td img { vertical-align:bottom; line-height: 0; }

(или отдельного класса CSS) вполне способно спасти ситуацию. С

img { margin:0; padding:0; border-width:0; }

, наверное, будет ещё надёжнее.

Но проблемы бывают не только с лишними отступами, а ещё и с неправильным вычислением размеров "Хромом" (статья на близкую тему), связанным с субпиксельным рендерингом.

Так что разрывы эти, скорее, не в пиксел, а в пол-пиксела размером :)

В настоящее время проблема проявляется, например, на 64-разрядных системах с версией Chrome 55 dev. Особенно при высоких разрешениях экрана, вроде 1920x1080. Даже мой бложек на такой системе вдруг "заглючил": Страница статьидалее...
29.09.2016, 16:14 [26]


Mathcad: про нормы векторов и матриц

Вообще-то, норм можно придумать 100500 штук, так как, по определению, нормой вектора x называется значение ||x||, удовлетворяющее трём аксиомам:

  1. ||x||≥0, причём, ||x||=0 тогда и только тогда, когда x=0;
  2. ||α*x||=|α|*||x||для любого вектора x и любого числа α;
  3. ||x+y|| = ||x|| + ||y|| для любых векторов x, y.

На практике наиболее употребительными являются следующие три нормы: Страница статьидалее...
27.09.2016, 14:13 [43]


Mustek Scan Express A3 vs Windows 7

Обычные фокусы с немецкими сканерами, Mustek Scan Express A3 USB (да-да, лист A3) под Windows 7.

Победил так, потребовалась пара часов борьбы: при выключенном из сети и из интерфейса сканере ставим ftp://ftp.mustek.com.tw/pub/driver/A3USB/XP_Vista_7/Setup_v1.5-1.exe

Перезагрузить комп.

Включить сканер в сеть и интерфейс.

Поставить полные права для юзера "Все" на папки C:\Program Files\ACD Systems (этой прогой сканировал), C:\Program Files\ScanExpress A3 USB\Driver (там дрова), C:\Temp (назначена в системе для временных файлов).

Тогда типа работает из программ, из той же ACDSee. Под Windows 8 бяку, вероятно, придётся перезагружать в режиме без проверки подписей драйверов. Страница статьидалее...
23.09.2016, 22:51 [159]


C++/CLI: одномерный и двумерный массивы array

Почему-то не оказалось такого простого примера. Между тем, описание вектора и матрицы в управляемом коде бывает проблемой после "обычного" классического C/C++. В коде ниже описана и заполнена вещественная матрица A и вещественный вектор x. Выполнить код можно из приложения Windows Forms, например, по событию загрузки формы (Load). Многострочное текстовое поле для вывода данных размером во всю клиентскую часть окна формы код создаст себе сам.

Размеры вектора и матрицы задаются переменными, то есть, могут быть динамическими. Страница статьидалее...
17.09.2016, 01:37 [243]


Тренерские дебюты...

Сильно:

В любом случае, попробуем разобраться более глобально – почему так затянулась чёрная полоса, в которую попала команда, начиная с 2004 года.

Мне так довольно на фото посмотреть

- и уже ясно почему (на фото - гражданин Израиля Эмиль Сутовский, по абсолютно неясным причинам комментирующий довольно таки провальное выступление сборных РФ на шахматной олимпиаде-2016 :) Художественный акадэмик Филатов молчит, однако... Впрочем, нет, считает свой тренерский дебют успешным :) Ну, Абрамович вот зачем покупал футбольный клуб? Да порулить просто интересно. Или зачем РАН нужна ФАНО? Да прикольно акадэмиками подвигать на доске.

Как говорится, хоть что-то в глаза... "новое поколение управленцев" повсюду, даже в chess... а ведь ещё лет 15-20 назад, когда они только шестерили в магазинах, уже всё было ясно :( "Хорошо разливал чай" (с личных слов). Интересно, а любой перворазрядник разливать чай бы не смог? Более глобально - сколько ещё "тренерских дебютов" во всех сферах жизни данной несчастной страны мы переживём?

Ещё сильнее: Страница статьидалее...
16.09.2016, 22:46 [232]


PHP: проверка ошибок арифметики через error_get_last и эмуляция error_clear_last в PHP5

Как минимум, при любом арифметическом вычислении на PHP неплохо бы проверить:

В переменные $n1, $n2, $n3 занесём тестовые величины - 10 в тысячной степени (обязана проинтерпретироваться как бесконечность), ноль и строку (вместо числа) соответственно.

С помощью массива $operations подготовим примеры, которые будут решаться функцией eval - в данном случае это безопасно, так как решаемые выражения находятся только в коде, но не зависят от действий пользователя.

Массив $errors содержит номера и строковые идентификаторы ошибок PHP, они описаны, например, здесь.

Стандартная обработка последней ошибки PHP реализована с помощью функции error_get_last.

К сожалению, сбросить предыдущее состояние ошибки можно будет только в PHP7 функцией error_clear_last. В PHP5 можно вместо неё только эмулировать код вида

set_error_handler('var_dump', 0); 
@$undef_var; 
restore_error_handler(); 

После этих 3 строк error_get_last будет, по крайней мере, в известном состоянии "Undefined variable: undef_var", что и использовано в коде.

Вот полный листинг примера: Страница статьидалее...
16.09.2016, 20:54 [233]


Как преобразовать систему счисления без переворачивания строки цифр?

Везде в примерах строка переворачивается. Дело в том, что "естественный" способ перевода чисел между системами счисления (как на бумажке, с делением и выписыванием остатков) даёт цифры в обратном порядке, и их надо переставлять от последнего символа к первому (инвертировать строку).

Проблему легко решить с помощью рекурсии, сразу дающей нужный порядок цифр, вот пример кода: Страница статьидалее...
15.09.2016, 11:25 [249]


Четыре опасных коня

Надо же, немеркнущая оказалась задача, хотя за демонстрацию её решения теперь в РФ может и 6 лет лагерей светить.

Вот текст опасного условия:

На шахматной доске стоят 4 коня - на полях h1, g2, f3, e4 (по диагонали из правого нижнего угла). Требуется разделить доску на 4 одинаковые по форме части, на каждой из которых стоял бы в точности один конь.

Решение - свастика, уходящая в бесконечность.

В 1978 году органы как-то просмотрели, и замечательную книгу Е.И. Игнатьева "В царстве смекалки" таки выпустили в переиздание. Сегодня такая провокация бы не прошла. Страница статьидалее...
14.09.2016, 22:25 [248]


Как не настроить Denwer на реальный хост :)

...не сохранился длинный диалог о тонкостях настройки Denwer на внешний IP, привязки к нему же домена etc. От чего, кстати, я Николсона тщательно отговаривал.

Резюме закономерно: Страница статьидалее...
13.09.2016, 20:00 [251]


Visual C++: меняем размер шрифта для всех элементов формы сразу

В предыдущей заметке мы воспользовались компонентой TableLayoutPanel для удобной и гибкой компоновки интерфейсных элементов формы по табличной сетке. Однако TableLayoutPanel при изменении размеров окна программы растянет или сожмёт только сами кнопки и поле ввода. Размеры шрифта, которым выведены подписи на кнопках и текст на "дисплее" калькулятора, останутся без изменений, так что 8 пунктов при окне приложения 600x600 пикселов будут смотреться странновато.

Как "подогнать" для всех нужных элементов формы размер шрифта (свойство Font::Size) или другое подобное свойство? Готового рецепта в примерах .NET нет, но сделать такое можно всего за 3 шага.

1. Прописать в классе формы текущий размер шрифта и переменную класса "Шрифт", пусть они будут приватными:

private: Single currentSize;
private: System::Drawing::Font ^Font;

2. Предусмотреть обработчик события SizeChanged формы, который на изменение размеров окна поменяет шрифт для кнопок и поля ввода: Страница статьидалее...
12.09.2016, 20:17 [268]


Visual C++: размещаем компоненты с помощью TableLayoutPanel

В основном, этот пример был мне нужен для демонстрации того, как выравнивать компоненты по ячейкам таблицы, не мучаясь с их "ручным" позиционированием. А приложение-калькулятор - всегда хороший пример программы с "нестандартным" размещением интерфейсных элементов.

Предположим, наш калькулятор должен выглядеть так:

Внешний вид приложения
Внешний вид приложения

Видно, что все компоненты уместились в сетку таблицы 5 на 5 ячеек, при этом некоторые компоненты занимают более одной ячейки. Мы разместим и растянем компоненты в стандартном контейнере TableLayoutPanel, но сначала подготовим пустую форму и выставим ей некоторые нужные свойства:

MaximumSize: 600; 600
MinimumSize: 200; 200
Size: 240; 240
StartPosition: CenterScreen
Text: Калькулятор

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

Теперь добавляем на форму контейнер TableLayoutPanel из списка "Контейнеры" Панели Элементов, ставим ему свойство Dock в значение Fill и с помощью встроенного инструмента "Задачи" переходим к правке строк и столбцов: Страница статьидалее...
11.09.2016, 18:07 [305]


Перекрёсток нуля дорог :)

Что–то такое билось мне в голову весь предыдущий день, когда я был свободен от любых обязанностей (это было 6 июля, провёл его в междугороднем автобусе). Второй такой приход случился вчера, посчастливился выдался одинокий ночлег на даче, так что затаившаяся мысль не преминула раскрыться во сне стихотворением, как всегда, в итоге разочаровав передержанностью и плоскостью. Ведь архетипы Пограничника, Изгнанника и проч. почти столь же стары, сколь сами переходы и изгнания...

К развёрнутой мифологии границ располагает сама Вселенная, состоящая почти исключительно из огня звёзд и льда пространства. На их хрупких стыках ютится всякое бытие.

Всё настоящее – стихи,
Они бывают
На перекрёстке двух стихий,
Переднем крае

На стыке камня и огня
В остывшем пепле,
У перехода, где хранят
Ключи и цепи

Граница воздуха с водой
В песке прибоя –
С небытием последний бой,
Как всё живое

Есть только север и восток
Превыше плоти,
Живого мака лепесток
На повороте

В опушке леса и у пня
Разбитым камнем
Я корни рыл иного дня,
Чтоб крепла память

У плюса воздуха –
Земли лежачий минус,
И утонули корабли
Наполовину

Последний абзац говорит о том, что школьная физика не стёрлась из моей памяти - известно, что воздух несёт положительный заряд, а почва - отрицательный :)

А вот вторым стихом сонное подсознание отвечает, видимо, на растущее раздражение против "внешнеполитического курса" и "внутриэкономического звездеца", устроенного стране кучкой спятивших казнокрадов. Настолько мерзко от этого, что в стихе даже есть пара удачных строчек, например, мне кажутся такими "Ты с размаху целовала Тех, что падали во тьму". Страница статьидалее...
11.09.2016, 18:01 [275]


Привет, яровые тарифы :)

У меня лично пока остался озимый, но вот надолго ли? :)

Первые последствия ещё не действующих, но уже разорительных "законов Яровой" налицо - как-то незаметно и быстро в России умерла классическая сотовая связь. При которой телефон используется просто, чтобы позвонить за разумные деньги, не считая минут и "остатков пакетов", а также не платя "неизвестно за что", как говорят пенсионеры, абонентку.

На сайтах всех операторов - сплошные "пакеты Интернета" с платой от 300 рублей. Необычайно "выгодно", скажем, для человека, просто совершающего 2-3-10 звонков в неделю :) Но такие абоненты опсосам и не нужны в "новых экономических условиях".

Особенно отличился билайн, например, Монстр общения 2011 (0.90 р. первая минута, потом 0.60 р. поминутно) абонентам Новосибирской области принудительно сменили на кемеровский "Монстр общения +" (2 р. в сутки абонентка, 1.90 р. первая минута, потом 0.95 р. поминутно + звонки по 4.95 р. в минуту на городские, в старом тарифе на город действовала единая цена). СМС-кой при этом, разумеется, предупредили 23-го августа вечером, как там с законом о своевременном уведомлении? Похоже, будут ссылаться на осточертевшее "наш сайт - это СМИ", не посмотрела бабушка раз в 10 дней сайт билайн - её проблемы :)

Мало того, после супер-смены тарифа оператор отметился ещё и массовым "тихим" подключением следующей услуги:

Хайвей 5 МБ. Сервис предоставляет быстрый интернет для вашего мобильного устройства. Абонентская плата составляет 495 рублей в месяц.
После использования интернета по данной услуге, плата за интернет будет взыматься, согласно основному тарифу, который подключен к сим-карте. Отключение: *115*070#
Страница статьидалее...
10.09.2016, 00:22 [267]


Массив случайных целых чисел без повторений

Желательно, чтобы числа эти ещё и лежали в заданном диапазоне значений [min,max].

Если нас не особо волнует скорость алгоритма, поступить можно по-простому, как показано в листинге ниже.

Функция getRandomArrayUnique вернёт 0 если массив удалось заполнить или 1, если переданы ошибочные параметры (например, мы требуем 100 различных целых значений, лежащих в диапазоне от 0 до 9). Страница статьидалее...
08.09.2016, 17:59 [266]


[1-15] [16-30] ... [1561-1575] [1576-1577]

  в началопоиск по блогунаписать авторустатистика

Наверх Яндекс.Метрика
© PerS
вход