Enforce configurable height and pixel limits for tablet documents

This commit is contained in:
sebastien committed 2026-10-26 15:09:05 +01:00
1 parent 8918d64452
commit a38c1ff4b3
10 files changed
+187 -57

No files matched your search

+15 -8
View File
@@ -245,10 +245,15 @@ OU
Le mode =--refaire= exige un fichier =refaire.json= et écrit dans
=BRnot=.
Les documents sont limités à 32 000 pixels de haut par défaut, comme
pour =BGnot=. Pour modifier cette limite commune, définir
=ANNOTATION_MAX_HEIGHT_PX = 32000= dans =config.py= avec la hauteur
souhaitée (entier strictement positif, en pixels).
Les documents sont limités à 33 000 pixels de haut et 67 108 864 pixels
de surface (largeur maximale × hauteur totale), comme pour =BGnot=.
Pour modifier ces limites communes, définir
=ANNOTATION_MAX_HEIGHT_PX = 33000= et
=ANNOTATION_MAX_PIXELS = 67108864= dans =config.py= (entiers strictement
positifs). La limite de surface vient des observations sur DS02VA : les
quatre groupes dépassant 2^26 pixels sont flous dans Squid Android.
Cela représente 256 Mio pour un bitmap à quatre octets par pixel ;
ce seuil est une hypothèse empirique, pas une limite documentée par Squid.
Le réglage s'applique aux prochaines générations ; utiliser
=--overwrite= pour régénérer les documents déjà présents.
Les grandes copies sont découpées entre les labels en =Part1=, =Part2=,
@@ -263,10 +268,12 @@ OU
réponses par question.
Enregistrées dans =BGnot=
Les groupes visent la hauteur maximale =ANNOTATION_MAX_HEIGHT_PX=
(32 000 pixels par défaut). Si le bloc
d'un seul élève dépasse cette limite, il reste entier dans un groupe
dédié, même lorsqu'il ne contient qu'une seule réponse.
Les groupes respectent les deux limites =ANNOTATION_MAX_HEIGHT_PX=
et =ANNOTATION_MAX_PIXELS= ci-dessus, en comptant les marges blanches
nécessaires pour aligner les réponses sur la largeur maximale du groupe.
Le bloc d'un élève reste entier s'il respecte ces limites ; sinon il est
séparé entre deux réponses. Une réponse individuelle dépassant l'une
des limites produit une erreur explicite.
_Needs_ : label_groups file (made automatically by this function),
qui dit quelles questions regrouper.