Skip to content

Instantly share code, notes, and snippets.

View Ser-Gen's full-sized avatar
💭
https://github.com/pixhub-int/image-processing

Sergei Vasilev Ser-Gen

💭
https://github.com/pixhub-int/image-processing
  • Voronezh, Russia
View GitHub Profile
@Ser-Gen
Ser-Gen / FastPreview.md
Last active August 29, 2015 14:08
Генерация миниатюр изображений

Для того, чтобы показывать миниатюры изображений, выбранных соответствующим полем формы, можно использовать возможности FileReader, при помощи метода readAsDataURL() кодируя изображение. Проблема в том, что процесс чтения и кодирования достаточно длителен, отчего выбор нескольких больших фотографий может привести к длительному зависанию вкладки, в которой исполняется скрипт. Пример использования этого способа в файле t0-dataURL.html.

Гораздо быстрей будут генерироваться ссылки на файлы при помощи createObjectURL(), который достаточно широко поддерживается. Этот способ реализован в файле t1-objectURL.html. Сгенерированные ссылки на выбранные файлы указываются в атрибуте src миниатюр, которые при помощи стилей уменьшаются до требуемого размера. Так

// Переписать на https://github.com/chjj/marked
// ==UserScript==
// @name Use Markdown, sometimes, in your HTML.
// @author Paul Irish <http://paulirish.com/>
// @link http://git.io/data-markdown
// @match *
// ==/UserScript==
/*!
* $.preload() function for jQuery – http://mths.be/preload
* Preload images, CSS and JavaScript files without executing them
* Script by Stoyan Stefanov – http://www.phpied.com/preload-cssjavascript-without-execution/
* Slightly rewritten by Mathias Bynens – http://mathiasbynens.be/
* Note that since this script relies on jQuery, the preloading process will not start until jQuery has finished loading.
*/
jQuery.preload = function(array) {
var length = array.length,
//EnhanceJS isIE test idea
//detect IE and version number through injected conditional comments (no UA detect, no need for cond. compilation / jscript check)
//version arg is for IE version (optional)
//comparison arg supports 'lte', 'gte', etc (optional)
function isIE(version, comparison) {
var cc = 'IE',
b = document.createElement('B'),
@Ser-Gen
Ser-Gen / about.md
Last active October 19, 2015 15:32
Работа с видео

Изначально видео может быть слишком большим, что может создать проблемы пользователям медленных интернетов; видео нужно оптимизировать.

Репозиторий модуля для упрощения оптимизации видео, пример его настройки.

Модуль использует ffmpeg для преобразования видео. Здесь можно узнать, как устанавливать ffmpeg на вин, её сборки тут. Полезно будет прочитать, какие настройки использовать для оптимизации.

Чтобы воспроизведение через флеш начиналось сразу, нужно дополнительно конвертировать видео при помощи qt-faststart ([подробнее](https://www.adobe.com/devnet/vi

@Ser-Gen
Ser-Gen / prefix.js
Last active December 16, 2015 21:39 — forked from barneycarroll/detectCSS.js
Проверка поддержки CSS-свойств
// позволяет проверить, поддерживается ли CSS-свойство.
// если да, возвращается свойство с нужным браузеру префиксом, нет — false
// например,
// var e = document.getElementById( 'element' ),
// s = prefix( 'transform' );
// if (s) {
// e.style[s] = 'rotate( 45deg )';
// }
//
function prefix (property) {