from reportlab.lib.pagesizes import A4
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle, PageBreak
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_CENTER
from reportlab.lib.units import cm
path = "/mnt/data/fac_simile_relazione_rissa_villapiana.pdf"
doc = SimpleDocTemplate(
path, pagesize=A4,
rightMargin=1.7*cm, leftMargin=1.7*cm,
topMargin=1.5*cm, bottomMargin=1.5*cm
)
styles = getSampleStyleSheet()
title = ParagraphStyle("title", parent=styles["Heading1"], alignment=TA_CENTER, fontSize=15, leading=18)
subtitle = ParagraphStyle("subtitle", parent=styles["Normal"], alignment=TA_CENTER, fontSize=9, leading=12)
body = ParagraphStyle("body", parent=styles["BodyText"], fontSize=10, leading=15)
small = ParagraphStyle("small", parent=styles["BodyText"], fontSize=8, leading=10)
story = []
story += [
Paragraph("FAC-SIMILE — DOCUMENTO DI FANTASIA", title),
Paragraph("NON È UN VERBALE, DENUNCIA O ATTO UFFICIALE DELLE FORZE DELL’ORDINE", subtitle),
Spacer(1, 12),
Paragraph("RELAZIONE DESCRITTIVA DELL’EVENTO", title),
Spacer(1, 12),
]
data = [
["Soggetto indicato", "Rabie Barakat"],
["Data di nascita", "17/04/2007"],
["Origine / cittadinanza indicata", "Marocchino"],
["Luogo dell’episodio", "Villapiana (CS)"],
["Data", "Venerdì 7 agosto 2026"],
["Ora indicativa", "01:30 circa"],
["Tipologia dell’episodio", "Colluttazione / rissa tra più persone"],
]
t = Table(data, colWidths=[6.2*cm, 10.6*cm])
t.setStyle(TableStyle([
("GRID", (0,0), (-1,-1), 0.6, colors.grey),
("BACKGROUND", (0,0), (0,-1), colors.whitesmoke),
("FONTNAME", (0,0), (-1,-1), "Helvetica"),
("FONTNAME", (0,0), (0,-1), "Helvetica-Bold"),
("FONTSIZE", (0,0), (-1,-1), 9),
("VALIGN", (0,0), (-1,-1), "TOP"),
("TOPPADDING", (0,0), (-1,-1), 6),
("BOTTOMPADDING", (0,0), (-1,-1), 6),
]))
story += [t, Spacer(1, 16)]
sections = [
("1. Premessa",
"""Il presente elaborato è una ricostruzione narrativa e puramente fittizia di un ipotetico episodio avvenuto in luogo pubblico. I nominativi e le circostanze riportate sono utilizzati esclusivamente per finalità sceniche e non costituiscono accertamento di responsabilità."""),
("2. Descrizione dell’episodio",
"""Secondo la ricostruzione immaginaria, in data 07/08/2026, alle ore 01:30 circa, si sarebbe verificato a Villapiana un alterco tra più giovani successivamente degenerato in una colluttazione. La situazione avrebbe attirato l’attenzione delle persone presenti e richiesto l’intervento delle autorità."""),
("3. Identificazione del soggetto",
"""Nel contesto della ricostruzione viene indicato Rabie Barakat, nato il 17/04/2007 e di origine marocchina. L’indicazione dell’origine è riportata esclusivamente come elemento narrativo e non implica alcuna valutazione sul soggetto."""),
("4. Dinamica ipotetica",
"""L’episodio sarebbe iniziato a seguito di un diverbio verbale. Nel corso della discussione, alcuni dei presenti sarebbero passati a spintoni e successivamente a contatti fisici, dando luogo a una rissa di breve durata. Le parti sarebbero state successivamente separate."""),
("5. Attività ipoteticamente svolta",
"""Nella ricostruzione scenica, gli operatori avrebbero proceduto alla messa in sicurezza dell’area, all’identificazione dei presenti e alla raccolta delle prime informazioni sull’accaduto. Eventuali ulteriori accertamenti sarebbero rimessi alle competenti autorità."""),
("6. Esito della ricostruzione",
"""Il presente testo non stabilisce colpe, non rappresenta una denuncia e non attribuisce formalmente alcun reato a Rabie Barakat o ad altre persone. Qualsiasi riferimento a una possibile responsabilità ha esclusivamente carattere narrativo."""),
]
for heading, text in sections:
story += [Paragraph(heading, styles["Heading3"]), Paragraph(text, body), Spacer(1, 8)]
story += [
Spacer(1, 10),
Paragraph("UFFICIALE", title),
Spacer(1, 6),
Paragraph("Questo documento è stato creato come elemento di fantasia e non proviene da Polizia di Stato, Carabinieri, Guardia di Finanza, Procura della Repubblica o altra autorità pubblica.", small)
]
doc.build(story)
print(f"Creato: {path}")
To embed this project on your website, copy the following code and paste it into your website's HTML: