50 lines
1.3 KiB
Typst
50 lines
1.3 KiB
Typst
#import "/.template/lib/api.typ": load-company, recipient, signer
|
|
#import "/.template/lib/presentation/foundation.typ": apply-foundation, render-media-slot
|
|
#import "/.template/lib/presentation/components.typ": corp_table, company-footer, letter-header, signature-block
|
|
|
|
#let company = load-company("test-company")
|
|
#let addressee = recipient(
|
|
company: "ООО «Получатель»",
|
|
title: "Руководителю проекта",
|
|
name: "П.П. Примерову",
|
|
)
|
|
#let director = signer(
|
|
company.director.name,
|
|
company.director.title,
|
|
signature: company.resources.signature,
|
|
stamp: company.resources.stamp,
|
|
)
|
|
#let ctx = (
|
|
company: company,
|
|
options: (watermark: none),
|
|
)
|
|
|
|
#show: apply-foundation.with(
|
|
ctx: ctx,
|
|
page-options: (margin: (x: 2cm, y: 1.5cm)),
|
|
)
|
|
|
|
#letter-header(
|
|
company,
|
|
addressee,
|
|
date: "26.08.2026",
|
|
reference: "TEST-1",
|
|
title: "Проверка компонентов",
|
|
)
|
|
|
|
#v(0.8cm)
|
|
Общая presentation-основа не зависит от конкретного профиля документа.
|
|
|
|
#v(0.8cm)
|
|
#corp_table(
|
|
columns: 2,
|
|
[Компонент], [Состояние],
|
|
[Таблица], [Работает],
|
|
[Media slot], [#render-media-slot(none, width: 3cm, height: 1cm)],
|
|
)
|
|
|
|
#v(1cm)
|
|
#signature-block(director, company: company)
|
|
|
|
#place(bottom + left, dy: 0.5cm, company-footer(company))
|