Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

НАВЫКИ

PHP5, Linux, опыт написания конвертеров в PDF (работа с текстом, изображениями и простыми таблицами), умение тестировать свой код.

ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ

Linux, Pentium4 или выше, PHP 5 или выше. Оптимизация кода по скорости выполнения.

ОПИСАНИЕ

Функция предназначена для формирования русскоязычного текста договора в формате pdf в режиме реального времени. Для этого используется шрифт Times New Roman 12. Форматирование договора можно видеть в примере по ссылке :

На вход функции CreateDogovor($title, $name1, $name2, $city, $date, $body, $sign, $stamp, $reqtable) подаются:

$title - название документа (в теле документа идёт жирным шрифтом, новая строка отделяется символом "\n", выравнивание по центру);

$name1 - наименование одной стороны (используется в нижнем колонтитуле);

$name2 - наименование другой стороны (используется в нижнем колонтитуле);

$city - город;

$date - дата;

$body - массив строк в некотором формате (см. ниже);

$sign - ссылка на графический файл в формате jpg с подписью (переменная может быть пустой), эта подпись размещается на каждой странице справа от $name1, если переменная пустая, то слева от $name1 располагается подчёркивание (место для подписи);

$stamp - ссылка на графический файл в формате jpg с печатью и подписью (переменная может быть пустой);

$reqtable - массив из восьми строк для заполнения таблицы с реквизитами.

На выходе должен получаться массив из двух документов в формате pdf. Первый с подписями на каждой странице и печатью в конце, второй лишь с местами для подписей и без печати. Документ с подписью на каждой странице должен выглядеть так же, как и документ без подписи (с местом для подписи).

Переменная $body содержит массив с последовательным списком всех строк тела договора. Если строка начинается без спецсимволов, то это просто новый абзац. Если строка начинается с номера, который отделён от текста пробелом, то это какой-то уровень нумерации. Первый уровень печатается жирным шрифтом. Остальные обычным. Цифры разделяются точками (1.1.1. - третий уровень отступа). Если строка начинается со знака "минус", то это ненумеруемый пункт и у него такой же отступ, как у строки документа из предыдущей строки массива + 1 см отступ для текста. Текст имеет выравнивание по обе стороны, весь текст с отступами, кроме первых абзацев без нумерации, выравнивается по одной линии на расстоянии +1 см от линии выравнивания номеров пунктов.

$reqtable - это данные для построения таблицы реквизитов в конце документа. Переменная представляет собой массив с шестью строками:

$reqtable[0] - реквизиты первой компании (новая строка отделяется символом "\n");

$reqtable[1] - реквизиты второй компании (новая строка отделяется символом "\n");

$reqtable[2] - должность подписывающего лица первой компании;

$reqtable[3] - должность подписывающего лица второй компании;

$reqtable[4] - фамилия и инициалы подписывающего лица первой компании;

$reqtable[5] - фамилия и инициалы подписывающего лица второй компании;

$reqtable[6] - наименование первой компании (печатается жирным шрифтом);

$reqtable[7] - наименование второй компании (печатается жирным шрифтом).

ПРИМЕР ИСПОЛЬЗОВАНИЯ

$title = "ДОГОВОР\nна оказание услуг";

$name1 = "Заказчик";

$name2 = "Исполнитель";

$city = "Москва";

$date = time();

$body[] = "Какой-то длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный текст";

$body[] = "1. Какой-то длинный-длинный длинный-длинный текст";

$body[] = "1.2. Какой-то длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный текст";

$body[] = "Какой-то длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный текст";

$body[] = "1.2.1. Какой-то длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный текст";

$body[] = "2. Какой-то текст";

$body[] = "- Какой-то длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный длинный-длинный текст";

$sign = "img/sign.jpg";

$stamp = "img/stamp.jpg";

$reqtable[0] = "ИНН 787978978\nКПП 67678\nЮр. Адрес 125454, Москва, ул. Космодемьянских, д. 345, корп. 1, стр. 67, офис 4574";

$reqtable[1] = "ИНН 687667878\nКПП 67678\nЮр. Адрес 125454, Москва, ул. Космодемьянских, д. 345, корп. 1, стр. 67, офис 4574";

$reqtable[2] = "Генеральный директор";

$reqtable[3] = "Главный конструктор";

$reqtable[4] = "Вий А.М.";

$reqtable[5] = "Петров А.М.";

$reqtable[6] = "ООО "Гватемалы"";

$reqtable[7] = "ООО "Гаваи"";

$pdf = CreateDogovor($title, $name1, $name2, $city, $date, $body, $sign, $stamp, $reqtable);

?>

ПРИМЕР ТОГО, ЧТО ДОЛЖНО ПОЛУЧИТЬСЯ ПО ВЁРСТКЕ

См. во вложении. Приведено в виде rtf, так как это удобнее. Нужно итоговый документ cверстать так же, но в pdf.

15 лет назад
multiportal
Гость 
45 летРоссия
18 лет в сервисе
Был
15 лет назад
5 отзывов
Выбранный исполнитель
knight2007
Владимир 
47 летРоссия
17 лет в сервисе
Был
2 года назад
15 лет назад
$40
2 дня
Сделано быстро, в срок, понятный код, предоставлены качественные примеры для наглядного тестирования.
Можно работать. Точное техническое задание, своевременная оплата.
  • Похожие заказы
  • $100

    Суть счетчика - показ количества населения Украины в сравнении с населением Египта. Размер счетчика - примерно 150x200 (чтобы помещался в колонку). Счетчик должен показывать прирост и уменьшение населения Египта и Украины в динамике (будет на ...

    Закрыт
    15 лет назад
  • Требуется создать скрипт или программу для автоматической регистрации на сайтах dle. Что необходимо: -Регистрация с возможностью указание описания -Оставление комментариев(автоматически) -Распознование каптч Готов так же рассмотреть готовые варианты. Пишите сроки и сумму.Без них предложения не рассматриваются. В ЛС так же писать ...

    Закрыт
    15 лет назад
  • $100

    Интернет магазин. Нужно создать на Аяксе подгрузку картинок к товару в зависимости от выбора покупателя. Точнее изменение основной картинки товара. Жду предложения в личку. От Веб студий предложения не принимаются, общеизвестный факт, что в итоге попаду ...

    Закрыт
    15 лет назад
  • Если коротко, то есть проект, у которого сильно поджимают сроки реализации. Есть программист - исполнитель, но он не справляется - нужны кодеры для выполнения кусков работы - основная часть работ должна быть выполнена ...

    Закрыт
    15 лет назад
  • Есть установленный Wordpress, добавленные в него шаблоны. Необходимо откорректировать их на русский язык. Нужно будет установить еще некоторые плагины. Вобщем жду Ваши предложения и Цены!

    Закрыт
    15 лет назад
  • $15

    Модуль "Каталог" (База данных) Пример: http://dancingpeople.ru/base/djs Вся информация должна добавляться\редактироваться только из админки, в соответствующем разделе "Каталог" в нем: —Добавляние\Редактирование Категорий\разделов —Добавление\Редактирование контента(содержимого) каталога по разделам Модуль по идее не такой уж сложный :) Пользовательская часть: Аналог http://dancingpeople.ru/base/djs Пользователю самому ничего добавлять не ...

    Завершен
    15 лет назад
  • Нужно установить и настроить скрипт банерообменной сети Самого скрипта еще нет. Предложите вы. Лучше поставить уже готовый скрипт, чем разрабатывать Напишите, в чем преимущества вашего скрипта и как он работает. Цену писать в ВМЗ

    Закрыт
    15 лет назад