Project

General

Profile

Actions

Anomalie #1608

closed

Edition PDF étiquettes et adresse comprenant plusieurs lignes

Added by Alain Paris almost 3 years ago. Updated about 1 year ago.

Status:
Fermé
Priority:
Normal
Category:
Files generation
Target version:
Start date:
12/22/2021
Due date:
% Done:

100%

Estimated time:
Version utilisée:

Description

Bonjour,
La génération des étiquettes pour les personnes ayant plusieurs lignes dans leur adresse n'est pas correcte.
Toute les données sont sur 1 seule ligne avec 1 symboles ▯ entre les données.


Files

etiquettes (6).pdf (150 KB) etiquettes (6).pdf Alain Paris, 12/22/2021 11:07 AM
etiquettes (11).pdf (150 KB) etiquettes (11).pdf Alain Paris, 01/04/2022 07:28 PM
adresse courrier france.jpg (162 KB) adresse courrier france.jpg Adresse type la poste Alain Paris, 01/05/2022 03:24 PM

Related issues 2 (0 open2 closed)

Related to Galette - Anomalie #1625: Format des adresses et PUBLIPOSTAGERejeté02/08/2022

Actions
Related to Galette - Anomalie #1638: PdfContributions - Champ adresseRejeté06/23/2022

Actions
Actions #1

Updated by Alain Paris almost 3 years ago

1 ou 2 symboles....

Actions #2

Updated by Guillaume AGNIERAY almost 3 years ago

  • Status changed from Nouveau to In Progress

Pour corriger ce problème :

  1. supprimer source:galette/lib/Galette/IO/PdfMembersLabels.php#L167
  2. remplacer source:galette/lib/Galette/IO/PdfMembersLabels.php#L177 par $this->writeHTMLCell($this->lw, $this->line_h * 2, $x, $y + $this->line_h, nl2br($member->address), 0, 0, 0, true, 'L', true);
Actions #3

Updated by Guillaume AGNIERAY almost 3 years ago

  • Status changed from In Progress to Commentaire

Je me demande également si il ne faudrait pas ajouter au passage une variable {ADDRESS_ADH_MUTLI} pour afficher l'adresse avec les retours à la ligne dans les modèles PDF.

Actions #4

Updated by Johan Cwiklinski almost 3 years ago

Guillaume Agnieray a écrit (#note-3):

Je me demande également si il ne faudrait pas ajouter au passage une variable {ADDRESS_ADH_MUTLI} pour afficher l'adresse avec les retours à la ligne dans les modèles PDF.

Ça pourrait certainement être utile, oui

Actions #5

Updated by Alain Paris almost 3 years ago

Bonsoir,je viens d’essayer la modif.
Il y a je pense un hic au niveau de la taille des caractères ,comme si la réduction tenait compte de l’ensemble des lignes.
D’où une réduction de la taille des lignes de l'adresse parfois assez drastique.
Dans les versions antérieures de galette il y avait que 2 lignes d'adresse ,et sur les étiquettes de moins de 30mm de haut pas de problème,
maintenant il y a possibilité de mettre 3 lignes ou plus et alors attention risque de chevauchement avec le code postal 35 mm mini pour 3 lignes par exemple.

Actions #6

Updated by Guillaume AGNIERAY almost 3 years ago

Oui, cette simple modification ne traite que les retours à la ligne inhérents au nouveau champ d'adresse (2cd6ac) et considère que l'adresse ne fait pas plus de 2 lignes comme auparavant.

En l'état, la taille du texte de l'adresse dans sa cellule est toujours ajustée en fonction de la largeur occupée par l'adresse sans retours à la ligne pour ne pas qu'elle sorte du cadre de l'étiquette : source:galette/lib/Galette/IO/PdfMembersLabels.php#L169

Et chaque cellule a une position "prédéterminée" sur l'étiquette.
Ex : source:galette/lib/Galette/IO/PdfMembersLabels.php#L189

Je ne suis pas certain de la meilleure façon de procéder pour les adresses de 3 lignes et plus.

Actions #7

Updated by Guillaume AGNIERAY almost 3 years ago

Guillaume Agnieray a écrit (#note-6):

Je ne suis pas certain de la meilleure façon de procéder pour les adresses de 3 lignes et plus.

Après réflexion, je propose de simplifier les étiquettes :)

Actuellement, elles ne sont pas formatées "uniformément" (nom et ville en gras, pays aligné à droite).
Après une recherche rapide chez différents services postaux internationaux, il semble que ce ne soit pas la façon la mieux recommandée pour formater une adresse postale.
Communément, il faudrait "idéalement" que toutes les lignes soient alignées à gauche, tous les caractères de la même taille et avec le même style, et le même interligne partout.

En France, la poste accepte jusqu'à 6 lignes max (et recommande d'écrire en majuscules).
Cela supposerait de limiter le nombre de lignes dans le textarea du champ d'adresse.
Mais en même temps, je n'ai vu cette limite chez aucun autre service postal chez qui j'ai regardé.
Plus de 6 lignes, cela semble un cas "extrême" ; ça reste ajustable en adaptant le format des étiquettes et/ou la taille de la police.

Voici les modifs proposées : https://framagit.org/galette/galette/-/merge_requests/10/diffs

  • plutôt que de disposer les lignes de l'adresse une à une dans des cellules indépendantes, on prépare l'adresse complète ligne par ligne dans un tableau
  • on utilise ensuite la ligne la plus longue pour ajuster la taille de la police de l'adresse complète pour qu'elle ne dépasse pas la largeur de l'étiquette
  • on affiche enfin l'adresse complète dans une seule cellule
  • enfin on ajoute une variable pour les modèles

Avec les paramètres par défaut de Galette, cela permet d'imprimer des étiquettes jusqu'à 6 lignes sans dépasser la hauteur de l'étiquette (35mm).
Dans le cas d'une adresse avec une ligne (très) longue, celle-ci occupe alors toute la largeur de l'étiquette, et la taille de l'adresse complète est adaptée pour rester uniforme.

Actions #8

Updated by Alain Paris almost 3 years ago

Les lignes 169 et 189 sont un peu du charabia pour moi,je ne programme pas.

1 Peux t'on modifier facilement PDFMembersLabels.php pour fixer une taille des caractères des lignes adresse (que celle-ci ne soit pas dépendante de la longueur de l'adresse).
( Une variable avec la valeur en dur dans une ligne ).

2 Il faudra certainement pour la version future de galette (1 suggestion parmi d'autres):

Limiter la zone de texte adresse (nombre de ligne) dans la fiche adhérent.(en France la poste préconise maxi 6 lignes en tout avec nom et code postal)
Utilisation de 3 et plus de lignes dans l'adresse, déterminer la taille des caractères en fonction de l'espace vertical restant entre le nom et le code postal.

et enfin extraire les lignes de l'adresse séparément ,contrôler la longueur de chacune d'elle et régler la taille en fonction de la ligne la plus longue.

Actions #9

Updated by Alain Paris almost 3 years ago

J’étais en train de chercher mes mots et tu as fais avancer le schmilblick

Actions #10

Updated by Guillaume AGNIERAY almost 3 years ago

Alain Paris a écrit (#note-8):

Il faudra certainement pour la version future de galette (1 suggestion parmi d'autres):

Limiter la zone de texte adresse (nombre de ligne) dans la fiche adhérent.(en France la poste préconise maxi 6 lignes en tout avec nom et code postal)
Utilisation de 3 et plus de lignes dans l'adresse,

Limiter à 3 lignes max dans le textarea est faisable.
Mais personnellement je ne pense pas que ce soit indispensable avec la dernière modif proposée et les possibilités d'ajustement du format des étiquettes dans les préférences de Galette.

déterminer la taille des caractères en fonction de l'espace vertical restant entre le nom et le code postal.

Sauf erreur de ma part, je ne crois pas que ce soit possible :/
Au final ma nouvelle proposition résout ce problème autrement.

Alain Paris a écrit (#note-9):

J’étais en train de chercher mes mots et tu as fais avancer le schmilblick

J'ai l'impression que tu arrivais à la même conclusion que moi en suggérant au final d'extraire les lignes de l'adresse séparément :)

N'hésites pas à me faire part de tes tests avec la dernière solution proposée.
Pour ma part, je n'ai aucune adresse de plus de 5 lignes. Et je trouve le résultat plutôt satisfaisant pour mes cas d'utilisation ;)

Actions #11

Updated by Alain Paris almost 3 years ago

J'ai essayé avec les dernières modifs, moi cela me convient.
Pour l'histoire du nombre de ligne j'ai une base qui est adaptée aux 2 lignes (nom, adres1, adres2, code postal) donc 4 lignes,et 5 si la personne avait rentré le Pays.Cela tient sur des étiquettes de 29mm de haut avec une police de 12.
Sur la configuration d'origine de Galette soit étiquettes de 35mm et police 12 on peut avoir 6 lignes en tout.

Actions #12

Updated by Guillaume AGNIERAY almost 3 years ago

  • Status changed from Commentaire to Résolu

Alain Paris a écrit (#note-11):

Sur la configuration d'origine de Galette soit étiquettes de 35mm et police 12 on peut avoir 6 lignes en tout.

Parfait. À moins que quelqu'un d'autre y voit une objection, je pense qu'on peut considérer cette anomalie comme résolue :)

Actions #13

Updated by Johan Cwiklinski almost 3 years ago

Guillaume Agnieray a écrit (#note-12):

Alain Paris a écrit (#note-11):

Sur la configuration d'origine de Galette soit étiquettes de 35mm et police 12 on peut avoir 6 lignes en tout.

Parfait. À moins que quelqu'un d'autre y voit une objection, je pense qu'on peut considérer cette anomalie comme résolue :)

Le statut passe généralement en résolu lorsque les commits sont intégrés au dépôt ;)

Actions #14

Updated by Guillaume AGNIERAY almost 3 years ago

  • Status changed from Résolu to In Progress

Johan Cwiklinski a écrit (#note-13):

Le statut passe généralement en résolu lorsque les commits sont intégrés au dépôt ;)

OK. Laissons les commits agir :)

Actions #15

Updated by Guillaume AGNIERAY almost 3 years ago

  • Status changed from In Progress to Résolu
  • % Done changed from 0 to 100
Actions #16

Updated by Guillaume AGNIERAY over 2 years ago

  • Related to Anomalie #1625: Format des adresses et PUBLIPOSTAGE added
Actions #17

Updated by Guillaume AGNIERAY over 2 years ago

Actions #18

Updated by Johan Cwiklinski about 1 year ago

  • Category set to Files generation
  • Status changed from Résolu to Fermé
  • Assignee set to Guillaume AGNIERAY
  • Target version set to 1.0.0
Actions

Also available in: Atom PDF