Добавить печать, подписи, логотип и QR-код для оплаты в шаблон счёта

Чтобы кастомизировать внешний вид счетов на оплату и предоплату, добавьте в них логотип вашей компании, печати и подписи. Также можно добавить QR-код, по которому ваши клиенты смогут быстро оплачивать счета.

Пример счёта с QR-кодом, логотипом, подписью и печатью

Чтобы настроить отображение этих элементов, отредактируйте шаблон. Можно изменять:

Каждый шаблон счёта состоит из нескольких файлов. Вам понадобятся файлы с расширением .post — они отвечают за внешний вид документа. Например, в предустановленных шаблонах это файлы:

  • inv.post — для счёта на оплату,
  • inv_prepay.post — для счёта на предоплату.

Названия post-файлов у шаблонов, которые вы добавляли в систему, могут быть другими.

Открыть post-файл шаблона

Шаблоны хранятся в директории /usr/local/billing/templates.

Откройте post-файл нужного шаблона. Пример:

nano /usr/local/billing/templates/inv.post

Отредактируйте в файле параметры в зависимости от того, какие элементы вам нужны.

Настроить отображение QR-кода

Настройте параметр $useqr:

  • 0 — не печатать QR-код,
  • 1 — печатать QR-код.

Пример:

$useqr = 1;  // Печатать QR-код

Логотип будет печататься в верхнем левом углу первой страницы счёта. Предварительно подготовьте файл с логотипом. Требования:

  • формат — png, jpg, jpeg,
  • максимальный размер — высота 100 px, ширина 200 px.

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

В post-файле настройте параметр $logo — укажите путь к изображению. Пример настройки:

$logo = "/usr/local/billing/templates/logo.png";

Добавить подписи и печать

Предварительно подготовьте файлы с подписями и печатью. Требования:

  • формат — png,
  • изображение должно быть без фона, т.е. иметь прозрачный альфа-канал,
  • максимальная ширина — 100 px.

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

В post-файле укажите путь к изображениям в параметрах:

  • $sign — первая подпись (в примере — подпись директора в нижней части документа слева).
  • $sign2 — вторая подпись (в примере — бухгалтера в нижней части документа справа).
  • $stamp — печать организации.

Пример:

$sign = "/usr/local/billing/templates/signature.png";
$sign2 = "/usr/local/billing/templates/accountant_signature.png";
$stamp = "/usr/local/billing/templates/stamp.png";

Дополнительные настройки отображения подписей и печати

За вывод подписей и печати в счёте отвечает метод TCPDF::Image(). Вы можете отредактировать в post-файле аргументы этого метода, чтобы задать дополнительные свойства изображений: например, сдвинуть их на листе или изменить размер.

Описание аргументов метода TCPDF::Image()

Пример:

if (file_exists($sign)){
    $pdf->Image($sign, $currX + 100, $currY - 75, 100, '', 'PNG', 'ceo_sign', '', false, 300, '0');
}
if (file_exists($sign2)){
    $pdf->Image($sign2, $currX + 400, $currY - 75, 100, '', 'PNG', 'accountant_sign', '', false, 300, '0');
}
if (file_exists($stamp)){
    $pdf->Image($stamp, $currX + 100, $currY - 75, 100, '', 'PNG', 'romashka_stamp', '', false, 300, '0');