zds-site
zds-site copied to clipboard
Le logo de la licence CC-BY-NC est mal affiché dans les PDFs
Description du bug
Sur la première page des PDFs, l'image correspondant à la licence CC-BY-NC est mal affichée :
Cela se produit avec la licence CC-BY-NC, CC-BY, mais pas avec CC-BY-SA.
Comment reproduire ?
Créer un billet avec l'une des licences qui pose problème. Publier le billet puis générer le PDF :
python manage.py generate_pdf $id
Observer le logo de la licence sur la première page.
Je n'arrive pas à reproduire en local...
Je n'arrive pas à reproduire en local...
Différence de version avec la prod?
On constate que le by-nc.svg a été généré en format Inkscape SVG, Inkscape est réputé pour implémenter/suivre de façon très complète la norme svg, il implémente tellement bien la norme que certains viewers de svg ne suivent pas la cadence (ont un support moindre des règles).
Le .svg
a été sauvegardé en format Inkscape SVG au lieu de Plain SVG. Ca se remarque par la présence de règles inkscape:****
qui ne seraient pas présente dans le cas contraire. Je me demande si tu les sauvegardes avec Export > Plain SVG, le problème sera encore présent.
Quand on fait export, dans inkscape, on a le choix :
Je proposerais de:
- Essayer de sauvegarder en plain svg et de voir le résultat sur la beta si le bug est présent dessus ;
- Essayer de sauvegarder avec un autre éditeur (illustrator) en svg.
- Se rabattre sur les .png?
Je ne le vois pas en prod sur des contenus récents ou moins récents.
Quoi qu'il en soit, le support de SVG est très inégal entre les différents logiciels qui le supportent, même sans utiliser des formats un peu étendu comme Inkscape peut le faire. Il y a des différences significatives de rendu entre Chrome et Firefox par exemple, notamment pour la gestion du texte. Et ces deux navigateurs par exemple ne rendent pas tout à fait pareil (voire pas du tout pareil dans certains cas) que la visionneuse de mon système.
Si on veut diminuer le risque d'avoir des rendu foireux dans certaines conditions, il faut éviter tous les exotismes (le texte SVG en fait partie) et se concentrer sur les formes les plus simples (les chemins typiquement).
Il n'y a pas de texte, comme j'ai dis plus haut, certain svg ont été sauvegardé en svg de travail pour inkscape ça se voit avec les règles préfixés "inkscape", sauf erreur de ma part ça prouve que ça a été sauvegardé en Inkscape SVG au lieu de Plain SVG.
https://github.com/zestedesavoir/zds-site/blob/36c6bbc50fdecd936768ef5a566d98f5d757fcbf/assets/licenses/by-nc.svg?short_path=597a622#L39