Повышения качества обработки изображений в PHP-библиотеке GD

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

Дело в том, что по умолчанию качество обработки jpg в библиотеке стоит 75 (из 100 возможных), поэтому повысить качество можно задав этот аргумент явно:

 imagejpeg($filein, $fileout, 100);

Всем красивых изображений на сайтах! :)

PS

Существуют альтернативные библиотеки — сервисы, которым нужны дополнительные возможности и качество, как правило, используют другие решения, например Imagick  — но плюс GD в том, что она входит в базовый набор PHP, а значит есть везде, на любом хостинге. Выбор за вами!

 

Сайт: Geronimo Model Management

Завершил очередную работу — сайт модельного агенства. Примечателен тем, что по сути является веб-приложением — одна страница, js-логика. Объем относительно небольшой — писал просто на jQuery, хотя, конечно для таких вещей созданы фреймворки. Следующий подобный проект будет уже на AngularJs — так как свои роутеры  и т.п. писать это конечно интересно, но не более чем один раз :)

http://geronimo-models.com

gm

Как правильно подключать javascript?

За последние пару дней несколько начинающих разработчиков обращались ко мне за советом — уж не знаю где и как всплыли мои контакты, помочь я всегда готов  — удручает одно, молодняк «заваливается» в личку без элементарного «здравствуйте». Ну да ладно — жизнь научит вежливости :) Вопросы были разные, но что было общее — поголовное непонимание где именно подключать js-файлы в теле страницы — момент очень простой, но рассмотрим его раз и навсегда, а заодно и будет запись с дефолтным html5 шаблоном:

 

<!doctype html>

<html lang="ru">
<head>
  <meta charset="utf-8">

  <title>The HTML5 template</title>
  <meta name="description" content="HTML5 - базовый шаблон">
  <meta name="author" content="">

  <link rel="stylesheet" href="css/styles.css">

  <!--[if lt IE 9]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  <![endif]-->
</head>

<body>

   // Ваш код здесь
  <script src="js/scripts.js"></script>
</body>
</html>

Как видно из шаблона — js мы подключаем В КОНЦЕ тела страницы, то есть перед закрытием тега BODY. Практически все неофиты подключают джаваскрит там же где и css — в HEAD, думаю причиной тому являются старые туториалы в эпоху малой востребованности JS.

Так почему же подключать необходимо именно там? Ответ прост — корректная работа и быстродействие. В начале необходимо загрузить HTML — чтобы пользователь уже начинал видеть процесс плюс элементарно JS должен запускаться когда DOM уже загружен. В несложных проектах порядок загрузки неощутим — именно поэтому новички «лепят» подключение скриптов в HEAD, но правильным и профессиональным будет все же подключение JS-файлов в конце.

Хорошо, скажете вы, а почему тогда в шаблоне файл html5.js подключается в HEAD?

Дело в том, что данная конструкция предназначена для браузера IE9 к котором как всегда что-то да не так — на этот раз реализация HTML5. Этот скрипт, подключается только для IE9 и реазлизует поддержку HTML5 — он должен подгружаться именно там, иначе HTML5-плюшки не будут работать — ведь в том же HTML, находящемся в BODY уже могут быть специфические теги 5й версии, которые надо корректно обработать, не говоря уже о фичах типа Canvas.

Итак, подключаем Javascript перед закрытием BODY и только так!

Всем красивого кода!

Hello, World!

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

Еще один момент — некий интерес к WP. Являясь веб-разработчиком я все же решил взять за основу эту систему публикаций — дабы посмотреть на неё изнутри и привыкнуть, ибо кое-какие планы на неё есть (да и просто было лениво «запиливать» велосипед :)

Итак, о чем же пойдет речь и кто вообще это все ведет? Меня зовут Евгений Поляков, живу в Челябинске. Занимаюсь много чем, в том числе веб-разработкой как фрилансер. Мне интересно писать свои классы (прибегаю к готовым CMS только если на этом настаивает заказчик, что крайне редко), решать нестандартные задачи. Основная сфера моей деятельности как разработчика это PHP. Что же касается front-end то разумеется это JS и все что с этим связано. Начинаю изучать Objective-C так что посты на эту тему возможно тоже будут встречаться.

В этом блоге я буду выкладывать моменты, мысли и решения из своей практики, а посему наиболее часто используемыми метками будут PHP, JS, jQuery, HTML5

Что из этого получится — скоро увидим. Спасибо что читаете и добро пожаловать! :)