VladChekunov, у PDF нет "множества имплементаций", у нее есть четкий стандарт с вариантами, которые ориентированы на разное - потому что у типографий, библиотек и веба банально разные требования к документу. Ну, и ряд версий, в которых добавлялись плюшки по мере развития стандарта.
Задача же распознавания документа с неизвестно каким источником уверенно решается только методами эмпирического распознавания - как картинку файнридером. Потому что увидеть, что вот именно этот текст и эти линии - это таблица, человек может сразу, а читающий PDF компьютер - нет. Ну, и создать эти линии и этот текст именно на этих позициях можно сильно по-разному, закономерности не всегда прослеживаются. И легкие алгоритмы, пытающиеся просто угадать такие закономерности, будут закономерно давать неважные результаты.
Всю эту историю лучше начать реализовывать с понимания, что история явно не вся.
Отдел продаж - чего, например? Состав заявок - наверное, как-то связанный с тем, что продается?
Уровни доступа? Шаблоны документооборота? штат сотрудников? аналитика для руководства...
В общем, CRM вам уже посоветовали, и стоит к ним приглядеться.
Потому что такие системы, будучи приложены к рабочему процессу искусственно и снаружи - мешают.
А поддерживающие этот процесс изнутри, во всех подробностях - спасают.
scroogemcfawk, дело в том, что местный контингент отвечающих довольно давно не сталкивался с литературой "для чайников", вот вам и вспоминают какого-нибудь Фигурнова. Мы сами, буде понадобится решать подобную задачу, придем в книжный и будем листать-подыскивать... А уж указать конкретное по памяти - увы, это не сюда.
Нет, шрифт - это глифы и их размерные характеристики.
Могут быть отдельно прописаны глифовые пары типа "Гр", чтобы устранить визуальные дыры.
Но межбуквенное расстояние (letter spacing) - это именно добавка к координатам каждого следующего глифа строки определенной величины сверх прописанного в шрифте.
А word spacing вообще, как правило, применяется программами верстки для выключки колонки текста по ширине, высчитывается просто как (ширина строки - длина текста) / кол-во пробелов. И на эту величину удлиняется каждый пробел.
Сделайте не голый SVG, а HTML, в нем - DIV с размерами в миллиметрах, а в нем - тот SVG, спозиционированный, как надо. Ехать ничего не должно, если у вас не различаются стили отображения и печати.
Сергей delphinpro, да, это я был невнимателен.
Но там же, скорее всего, не только delete, но и edit и прочие like
И мне лично было бы проще вывести пустую форму, после нее - скрипт с функцией ее заполнения (выверенный один раз), а на кнопки прописывать запуск этого скрипта с параметрами. Хоть Алексей и против ;)
Кнопка "удалить", надо полагать, где-то рядом с постом. Форма захватит всю страницу, а внутри поста может оказаться голосовалка, например, со своей формой.
Неаккуратненько.
CityCat4, необязательно на асме.
Я к диплому писал расчетную программу на ТрубоПаскакале с интерфейсными окнами такого типа - тоже прямым рисованием их в памяти, потому что библиотечные функции, вызывавшие int 10h / int 21h, работали со скоростью захода солнца.
Задача же распознавания документа с неизвестно каким источником уверенно решается только методами эмпирического распознавания - как картинку файнридером. Потому что увидеть, что вот именно этот текст и эти линии - это таблица, человек может сразу, а читающий PDF компьютер - нет. Ну, и создать эти линии и этот текст именно на этих позициях можно сильно по-разному, закономерности не всегда прослеживаются. И легкие алгоритмы, пытающиеся просто угадать такие закономерности, будут закономерно давать неважные результаты.