Я уже немного писал про создание макетов сайтов в Adobe® Illustrator. А сегодня случайно набрёл на простой способ создания пиксельной графики.

Что нам собственно нужно?

  • Привязка линий строго по пиксельной сетке;
  • Отсутствие сглаживания

Решение как всегда пришло конца. У меня на маке не оказалось достойного кириллического пиксельного шрифта. А те, что на скорую руку нашлись в интернете отображались в Illustrator просто отвратительно. Кроме того, в Illustrator, в отличие от Photoshop, никак нельзя управлять сглаживанием шрифта. В результате набрёл на такую настройку: Preferences > General; снимаем галку «Anti-aliased Artwork», далее работаем в режиме Pixel Preview (View > Pixel Preview).

Снимок экрана 3.png

В итоге получаем шрифты без антиалиасинга, что почти то, что мне хотелось.

Снимок экрана 6.png

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

shots-200.png

shots-3200.png

Есть и ложка дёгтя. Пока что не удалось получить такой же результат при выполнении команды File > Save for web — картинка растеризуется так, как будто никто и не отключал антиалиасинг у Artboard. При этом при выполнении команды File > Export всё пучком.

Этот неприятный минус, а так «квадратные» края у кривых, не позволяют использовать этот метод как основной в разработке макетов. Однако для создания схем и графиков, а так же черновых набросков — самый сок.

И помни, путь джедая — всегда «прибивать» опорные точки кривых к узлам пиксельной сетки.

P.S.: В статье использована картинка в к учебному пособию по курсу «Профессиональная вёрстка сайтов».

Технологическим стандартом де-факто для создания графических макетов сайтов стал Adobe Photoshop. Такой макет будет принят любым верстальщиком, если выполнить минимальный набор требований, да и все входы-выходы давно описаны. Поэтому я не буду их описывать, а дам несколько рекомендаций по созданию графических макетов в Adobe Illustrator.

В своё время я неоднократно вливался в холивары на тему «Приносите нам макеты только в фотошопе» и придерживался непопулярного мнения о том, что макет нужно делать в той программе, которая позволит сделать это максимально быстро и удобно. И верстальщик должен обладать минимальными навыками работы с разными графическими пакетами. Однако я не учёл одного маленького, но важного фактора — дизайнер должен выполнить свою работу качественно и аккуратно. Только в этом случае не возникнет проблем и деформации кармы.
Читать полностью »

С некоторого времени мои сайты, расположенные на одном аккаунте виртуального хостнга стали подвергаться атаке: в код страницы дописывался JavaScript-код, вызывающий загрузку вредного кода с другого сайта. Вариантов кода было несколько — и декодируемый, и просто iFrame.

Периодически я замечал такую пакость и вычищал соответствующую страничку, благо зловредный код располагался либо непосредственно после открывающего тега <body>, либо в конце страницы. Код внедрялся либо на страницу index.htm/index.php, либо в какой-нибудь инклюд (admin_header для wordpress, например).

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

Поскольку происходила модификация кода от имени моего аккаунта (больше некому), то я просто решил изменить права доступа к файлам. Имея доступ по ssh это очень просто — воспользуемся командой chmod:

chmod 444 *.php *.inc *.html *.htm

В данном случае мы переводим в режим «только для чтения» все файлы, оканчивающиеся на php, inc, html и htm. К сожалению, данную команду пришлось запускать в каждом каталоге отдельно, поскольку рекурсивный обход файловой системы (chmod -R) почему-то не работал.

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

find * -mtime -120

В данном случае, мы ищем все файлы, модифицированные за последние 120 дней (я давненько ничего не менял на этих сайтах). Результатом выполнения команды был список файлов, которые я и отредактировал.

Для того, что бы иметь возможность выполнять команды непосредственно на сервере нам потребуется подключение по протоколу SSH (Secure Shell). Если хостинг не предоставляет возможности подключения по данному протоколу — тысячу раз подумайте перед тем, как переносить к нему свои ресурсы.

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

Решил (а точнее за меня решили %) вспомнить немного Flash и сваял за ночь вот такую незамысловатую игрушку. Дед Мороз катается на метро и периодически устраивает праздник.

Всех с наступающим! Всяческих удач!

Сначала была собака. И были электронные письма, и конференции и много ещё всего интересного было. Потом пришёл World Wide Web. Но был тот веб совсем не широкий. Со временем появились картинки и сложились они в Мозаику. Дальше началось сейчас.

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

Совершенно неожиданно Apple Developer Connection оказался крайне аскетичен и даже сташноват относительно прочих ресурсов.

NB: по-возможности я указал ссылки на локализованные (русские) разделы, однако, как правило, там находится малая часть от айсберга, а на сайте Mozilla ещё и ссылки тоже переведены на русский и как результата — битые через одну. Поэтому лучше всё искать на базовых сайтах.