O.L.D. — Online Layout Designer

en
ua
ru
© Lexey111, 2012

Что это?

Що це?

What is it?

O.L.D. — это такой онлайн-редактор картинок с некоторой дополнительной функциональностью: кусочек ERP, немного от хранилища фотографий, чуть-чуть от управления допечатной подготовкой.

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

O.L.D. — це такий онлайн-редактор картинок з деякою додатковою функціональністю: шматочок ERP, трохи від сховища фотографій, трохи від управління підготовкою до друку.

Це частина інтегрованого сайту для друкарні або міні-видавництва, де користувач може створити свій власний виріб або використовувати і модифікувати наявний: візитку, календар, фотокнигу, брошуру і тому подібне.

O.L.D. — it is an online image editor with some additional functionality: a bit of ERP, a bit of photo storage system, a piece of pre-press processing.

This is a part of an integrated website for printing or mini-publishing houses, where the users can create their very own products or use and modify already prepared: business cards, calendars, photobooks, brochures and the like.

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

Звичайно, вся робота як редактора, так і допоміжної частини ERP будується на асинхроннiй взаємодії без перезавантаження сторінки.

Of course, all works in the editor either in the auxiliary subsystem (ERP) are based on asynchronous communication without page reloading.

Что на выходе?

Що на виходi?

What the output is?

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

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

Результат роботи системи дуже простий: це готовий до друку PDF-документ, що включає різні об'єкти - растрову і векторну графіку, текст та примітиви. Ці PDF можуть бути як простими односторінковими, так і містити кілька десятків сторінок різних розмірів одночасно. Підтримуються також сторінки-шаблони, фіксовані сторінки і таке iнше.

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

Result of all these works is very simple: print-ready PDF document with combined objects — raster, text, vector images and primitives simultaneously. These PDFs can be a single pages or consist of many sheets with different dimensions; include templates and fixed pages and so on.

Unfortunately, I can't demonstrate this system online because it is integrated with the host site very deep. So I have to restrict myself and show only the screenshots.

Архитектура

Архітектура

Architecture

O.L.D. построен по асинхронной клиент-серверной технологии с обменом данными в формате JSON. Основные механизмы обработки сосредоточены на сервере и по большей части это различные процедуры для рендеринга изображений. В качестве базовой библиотеки использован Imagick. Хранилище данных — mySQL.

Следует отметить библиотеку TCPDF, которая является ядром рендеринга PDF.

Я использовал jQuery как основу моего JavaScript-движка.

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

O.L.D. побудований за асинхронною клієнт-серверною технологією з обміном даними в форматі JSON. Основні механізми обробки зосереджені на сервері і по більшій частині це різні процедури для рендеринга зображень. В якості базової бібліотеки використаний Imagick. Сховище даних — mySQL.

Слід зазначити бібліотеку TCPDF, яка є ядром рендеринга PDF.

Я використовував jQuery як основу мого JavaScript-движка.

І, зрозуміло, слід згадати чудову бібліотеку Raphael, яка застосована в редакторі векторних об'єктів.

Software built on asynchronous client-server technology with JSON-based data exchange. Main processing routines concentrated on the server side, and mostly it is different image rendering libraries. Server also support multilevel caching, transitions between vector- and raster graphic; rendering of PDF, operative and final images. As base library is used the Imagick. Storage is mySQL.

Need to remark that TCPDF library is the kernel in the PDF creation.

I use the jQuery as the crankcase for my editor engine.

And, of course, last but not least — Raphael in the vector part: rotations, primitives etc.

Некоторая примечательная функциональность

Деяка примітна функціональність

Some of the notable features

Пользователи могут загружать и хранить свои фотографии в так называемых фотоальбомах и использовать их при создании композиций.

Користувачі можуть завантажувати і зберігати свої фотографії в так званих фотоальбомах і використовувати їх при створенні композицій.

Users can upload and keep their photos in so-called photo albums (up to 5 per user) and use it in their own compositions.

Фотоальбомы и галереи клипартов: множественная загрузка с автоматическим поворотом на основе EXIF, поддержка форматов PNG, JPG, EPS и SVG, развитые возможности для сортировки и поиска изображений.

Фотоальбоми і галереї клiпартiв: багатопоточне одночасне завантаження з автоматичним поворотом на основі EXIF, підтримка форматів PNG, JPG, EPS та SVG, розвинені можливості для сортування і пошуку зображень.

Photo albums and clipart galleries: multiupload with EXIF-based image auto rotation, support of PNG, JPG, EPS and SVG formats, flexible sorting and search possibilities.

Редактор обеспечивает множество мощных и удобных инструментов для работы:

Редактор забезпечує багато потужних і зручних інструментів для роботи:

There are a lot of powerful tools inside editor:

Работа с изображениями: обрезка, поворот, настройки яркости, контрастности и оттенков, выравнивание горизонта, удаление эффекта красных глаз, резкость и так далее.

Робота з зображеннями: обрізка, поворот, налаштування яскравості, контрастності і відтінків, вирівнювання горизонту, видалення ефекту червоних очей, різкість та таке iнше.

Photo manipulations — cropping, rotation, image adjustment, horizon alignment, red-eye removal, sharpening etc.

Также O.L.D. включает в себя ряд инструментов для работы со страницами: центр управления страницами, шаблоны страниц, изменение порядка страниц, дублирование и т.д.

Також O.L.D. включає в себе ряд інструментів для роботи зі сторінками: центр керування сторінками, шаблони сторінок, зміна порядку сторінок, дублювання і т.д.

Also O.L.D. includes a row of tools to work with pages: management center, page templates, changing the order of pages, duplicating etc.

ERP часть

ERP частина

ERP part

Эта часть даже сложнее, чем сам редактор. Здесь менеджеры могут работать с моделями (с точки зрения системы, "модель" означает предварительно подготовленный шаблон изделия), пользователями, готовыми макетами, очередями печати и др. А так как программное обеспечение не только многопользовательское, но и многоджобберское (то есть, позволяет управлять несколькими отдельными типографиями), то также реализована подсистема гибкого управления правами.

Ця частина навіть складнiша за редактор. Тут менеджери можуть працювати з моделями (з точки зору системи, "модель" означає попередньо підготований шаблон вироба), користувачами, готовими макетами, чергами друку і др. А так як програмне забезпечення не тільки багатокористувацьке, але й багатоджобберське (тобто, дозволяє управляти декількома окремими друкарнями), то також реалізована підсистема гнучкого керування правами.

This part is even more complicated than the editor is. Here managers can work with models (in the system's terms, "model" means preliminarily prepared template), users, ready layouts, print queues etc. According to fact that the software is not only multi-user but multi-jobber system flexible permission management subsystem is also implemented.

Under The Hood:

700