В моей компании есть приложение для автоматизации маркетинга, и у нас есть аналогичный инструмент, созданный для разработки открыток, писем и электронных писем, которые мы автоматически отправляем на принтер для клиента.Я ненавижу Flash (он медленно умирает, слава богу!), Поэтому я настоял на чистом HTML, CSS и JQuery с бэкэндом PHP.Я занимаюсь разработкой пользовательского интерфейса около 15 лет, и это, безусловно, самая сложная задача, с которой я когда-либо сталкивался из-за множества сложностей.
Я подошел к задаче, используя функциональность JQuery Draggable (и другие), чтобы установить позиционирование элементов.Трудно иметь дело с переполнениями и перекрытиями, поэтому ожидайте, что будете бороться с этим за большую часть вашего программирования.Я приблизился к «водосточным желобам», сделав мою редактируемую область смещенной от фактического фона, что означало, что мне не пришлось программировать дополнительную область «вне пределов».Для обработки «слоев» элементов на каждой странице имеется выбираемый / сбрасываемый список каждого добавляемого элемента, такого как изображения, текст, элементы дизайна и т. Д. Сохранение происходит автоматически через jQuery Ajax каждые 5 минут с момента открытия пользователем окна.Координаты X, Y сохраняются в базе данных MySQL для последующего редактирования или отправки на принтер.
Вот в чем дело.У нас есть ОЧЕНЬ специализированный принтер, который наклоняется назад для нас.Мы ежедневно общаемся с ними и внедрили процесс, обеспечивающий бесперебойную работу наших клиентов: от одобрения до печати и до дома исполнения.Это была нелегкая дорога, чтобы добраться до этой точки!Если вы собираетесь использовать стандартный принтер для печати, ожидайте почти ежедневных головных болей, так как клиенты выводят проекты, которые принтер скажет, что вы не можете сделать, после чего вам придется перенастроитьваше приложение.Существует так много разных способов, которыми клиент может создать что-то, что приведет к тому, что принтер получит криволинейный шар, и практически невозможно объяснить их все.Если бы это был я и я шел по этому пути, я мог бы фактически рассматривать покупку качественного цветного принтера как часть моего бизнес-плана, чтобы я мог полностью контролировать процесс.