ruslan2k, например, mPDF позволяет использовать задником уже готовый PDF и добавить любые элементы (хоть текст, хоть картинки) поверх.
Например, Inkscape позволяет открыть PDF для редактирования - но, как я уже сказал, не гарантирует его сохранность.
Проблема, вполне возможно, еще в том, что ваш PDF - многостраничный, а под это инструменты совсем плохо заточены. Впрочем, есть утилиты, которые режут и собирают страницы, так что это не критичное препятствие.
ruslan2k, а что, этот PDF сам по себе откуда-то взялся? Сплошь и рядом подпись-печать ставится на тех документах, которые сам же и создаешь. Ну а затея влезть в PDF и налепить туда печатей, как в ворде - заведомо бег по граблям, PDF не для редактирования создавался, и в любом инструменте, который позволит его отредактировать, неприлично велик шанс, что документ будет нарушен. Что перехеривает всю затею.
Ближайший костыль я тоже обозначил: брать эту PDF, как-то вручную для каждого документа определять, в какое место должны быть поставлены подпись с печатью (например, отрастеризовав и дав пользователю ткнуть в картинку) - и сгенерировать новый PDF, использовав старый как подложку.
CryptBomj, реально, конечно. Уже существующие CMS, внезапно, были написаны, ни одна с неба не упала.
Только ваши вопросы показывают, что вы сами не знаете, чего хотите. То "личный кабинет с базами", то WP, то OpenCart. В огороде бузина...
Wataru, увы мне, за четверть века неиспользования "вышки" я ее таки забыл.
Но разве произведение не придется выполнять для пар точек?
А "тригонометрию" считаем один раз для каждой точки. O(n).
Drno, тимвьювер на тормозных сетях? Совершенно неочевидное из вопроса, да и вообще несбыточное желание. Собственно, и ненужное, с линями-то.
Непонятно, чем вас спасет "не VPN" на слабых сетях. Даже если какой-то софт позволит снюхаться напрямую, а не через сервер - та же слабая сеть и останется бутылочным горлышком.
Один из вариантов "правильного вопроса" в этой ситуации - а с какого, собственно, при наличии "своего сервака" так уж не желателен VPN, для таких задач, в принципе, и предназначенный? Любой P2P потребует для начала соединить эти P между собой, а их обоих в общем случае можно с уверенностью считать находящимися за NAT.
Если валидируются не файлы - выделить из формы ту часть, которая валидируется, и второй формой предлагать прикрепить к ней файлы (уже имея ID заполненных данных).
Не создавая сложных конструкций на ровном месте.
lz961, были прецеденты съезжания того форматирования при открытии того же docx на другом компьютере. Офисные форматы и гарантии сохранения форматирования есть вещи несовместные.
Евгений Шатунов, ну, я как бы и возражаю по первому пункту: совершенно не факт, что этот объект знает слишком много.
В Вики определение, как в российском законодательстве - многозначительно и предельно неконкретно... а проблема GO, как таковая - в размытии областей ответственности и высокой связности такого кода, с которой можно и нужно бороться декомпозицией. Здесь, похоже, декомпозиция тоже показана, но на этом сходство с GO, вполне возможно, и заканчивается.
pfedorov031090, есть готовое решение - забыть о существовании MS Office и сгенерировать банальный HTML. Сохранить его с расширением .docx - и, внезапно, Ворд ничего даже не заметит...
Евгений Шатунов, GO, как я его понимаю - это не про объем и разделение, а про грубое нарушение инкапсуляции. Там, где должны быть интерфейсы и разделение логики - GO хватает что хочет откуда хочет и влезает в любой процесс в любом месте.
А тут - вполне возможно, что вся работа с этим классом идет через один-единственный метод, и ничего лишнего, кроме необходимого, он об окружающем коде не знает. Просто сама его работа достаточно развесиста и может быть вынесена в подклассы.
Виктор, это ничего не меняет.
Логично СНАЧАЛА собрать данные, а ПОТОМ из них уже делать запрос, ЕСЛИ он вообще имеет смысл. Это позволит через год, разбираясь в этом коде, не крыть трехэтажно того, кто такого наворотил. Стыдливо вспоминая, что сам же и обосрался.
Зря. ТС в который раз тыкают носом в то, что ошибки нужно постить текстом, но намеков он не понимает.