feat(verbale): logo Gepafin SVG ufficiale nel verbale PDF
Carlo ha fornito il logo Gepafin ufficiale (SVG vettoriale, colore #4A644E verde istituzionale, 118x50 viewbox). Sostituito il placeholder testuale <span class="hdr__logo">GEPAFIN</span> con il logo reale. Implementazione: - app/static/gepafin-logo.svg — logo copiato dal repo FE Gepafin (8.7KB SVG) - verbale.py: aggiunto STATIC_DIR + LOGO_FILE_URL con path file:// assoluto (weasyprint risolve file:// localmente senza HTTP fetch) - template passa logo_path nel contesto Jinja - verbale_istruttoria.html: CSS .hdr__logo-img (altezza 38pt) sostituisce .hdr__logo testuale Verificato: PDF da 23KB -> 32KB (incluso SVG), XObject embedded OK, header PDF-1.7 valido. Nel PDF il logo appare in alto a destra dell'header accanto al sottotitolo 'Finanziaria regionale dell\'Umbria'.
This commit is contained in:
@@ -23,6 +23,9 @@ router = APIRouter(prefix="/api/remission-practices/instructor", tags=["verbale"
|
||||
|
||||
|
||||
TEMPLATES_DIR = Path(__file__).resolve().parent.parent / "templates_jinja"
|
||||
STATIC_DIR = Path(__file__).resolve().parent.parent / "static"
|
||||
# URL file:// assoluto per weasyprint (che non fa HTTP fetch ma risolve file://)
|
||||
LOGO_FILE_URL = f"file://{STATIC_DIR.resolve()}/gepafin-logo.svg"
|
||||
|
||||
|
||||
# ---------- Jinja env & filters ----------
|
||||
@@ -244,6 +247,7 @@ def _build_context(db: Session, practice: RemissionPractice, user: AuthUser) ->
|
||||
"custom_checks_merged": custom_checks_merged,
|
||||
"previous_tranches": previous_tranches,
|
||||
"max_tranches_snapshot": max_tranches_snapshot,
|
||||
"logo_path": LOGO_FILE_URL,
|
||||
}
|
||||
|
||||
|
||||
|
||||
1
app/static/gepafin-logo.svg
Normal file
1
app/static/gepafin-logo.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 8.5 KiB |
@@ -50,8 +50,8 @@
|
||||
padding-bottom: 10pt;
|
||||
margin-bottom: 14pt;
|
||||
}
|
||||
.hdr__logo {
|
||||
font-size: 22pt; font-weight: 900; color: #1a365d; letter-spacing: 1pt;
|
||||
.hdr__logo-img {
|
||||
height: 38pt; width: auto;
|
||||
display: inline-block;
|
||||
}
|
||||
.hdr__subtitle {
|
||||
@@ -186,7 +186,7 @@
|
||||
{% if practice.period_label %}<div><small>{{ practice.period_label }}</small></div>{% endif %}
|
||||
</div>
|
||||
<div>
|
||||
<span class="hdr__logo">GEPAFIN</span>
|
||||
<img src="{{ logo_path }}" alt="Gepafin" class="hdr__logo-img" />
|
||||
<div class="hdr__subtitle">Finanziaria regionale dell'Umbria</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user