zest-writer icon indicating copy to clipboard operation
zest-writer copied to clipboard

Améliorer la gestion des images

Open njourdane opened this issue 8 years ago • 6 comments

Fonctionnement actuel

Actuellement, ZW permet d'insérer des images et procède ainsi :

On a le choix d'insérer soit une image provenant d'une URL, soit une image locale. Pour ce dernier cas, ZW ajoute l'image à la galerie d'images de ZdS correspondant au tutoriel et intègre le lien de l'image dans la balise image de l'éditeur.

Remarque

Ce fonctionnement a des défauts, entre autres :

  • ce n'est pas un éditeur hors-ligne à proprement parler, car les images ne sont pas affichées en l'absence de connexion internet ;
  • lorsqu'on insère une image depuis la galerie, ZdS génère la balise avec un chemin absolu, comme ![mon image](/media/galleries/3691/99864bcc-6b76-4831-b484-40bd81c454f3.png). Donc les images provenant de contenus récupérés depuis ZdS ne sont pas affichées ;
  • c'est source de bugs, en tout cas j'ai déjà eu des problèmes à plusieurs reprises avec les images (peut-être liés à #123).

Proposition n°1

Utiliser uniquement des images locales :

  1. lorsque on télécharge un contenu depuis ZdS, ZW télécharge les images et les place dans offline/media/galleries/3691/99864bcc-6b76-4831-b484-40bd81c454f3.png ;
  2. lorsque on ajoute une image, ZW copie l'image dans offline/images/toto.png ;
  3. lorsque l'utilisateur clique sur Envoyer vers ZdS, ZW envoie toutes les images du dossier offline/images/ dans la galerie du contenu, en récupérant les URLs à chaque fois ;
  4. une fois cela fait, ZW met à jours tous les chemin des images, ie offline/images/toto.png -> offline/media/galleries/3691/99864bcc-6b76-4831-b484-40bd81c454f3.png et supprime le dossier offline/images/

Ainsi les images seraient affichées à la fois en ligne et hors-ligne.

Edit : Proposition n°2

Je viens de découvrir ceci sur la page Importer un contenu :

Pour importer des images, veuillez spécifier la seconde archive. Pour que vos images soient automatiquement intégrées, ajoutez le préfix « archive » dans l'adresse de vos images. Par exemple : ![légende](archive:chemin/vers/image.extension). Les chemins seront remplacés par les URLs générées par le site.

On pourrait adopter le même mode de fonctionnement :

  • lorsque on télécharge un contenu depuis ZdS, ZW télécharge les images et les place dans offline/mon_contenu/media/99864bcc-6b76-4831-b484-40bd81c454f3.png ;
  • lorsque on ajoute une image, ZW copie l'image dans offline/images/toto.png et insère dans l'éditeur : ![légende](archive:nom_image.png) ;
  • lorsque l'utilisateur clique sur Envoyer vers ZdS, ZW envoie toutes la galerie d'images ;
  • le viewer Markdown est modifié pour permettre le support de ![légende](archive:nom_image.png).

On aurait également une nouvelle hiérarchie pour les contenus :

workspace┬offline┬mon_tuto┬text┬manifest.json
         │       │        │    └...
         │       │        ├media┬mon_image_locale.png
         │       │        │     ├99864bcc-6b76-4831-b484-40bd81c454f3.png (image téléchargée depuis ZdS)
         │       │        │     └...
         │       │        ├mon_tuto_media.zip
         │       │        └mon_tuto_text.zip
         │       └autre_contenu─...
         │
         └online┬mon_tuto.zip
                └...

Personnellement, je préfère cette dernière proposition.

njourdane avatar Oct 28 '16 16:10 njourdane

J'ai mis à jour ici avec une 2ème proposition.

njourdane avatar Nov 03 '16 18:11 njourdane

Ah merci pour ce travail d'analyse. Pour le moment, je ne suis pas encore favorable a l'idée d'utiliser l'import des galleries locales. Je m'explique : la fonctionnalité d'import d'archive d'images chez zds n'est pas adaptée, car si je tente d'uploader une archive avec des images qui existent déjà sur zds, elles seront dupliquées dans ma gallerie. Si je refais une troisième fois, elles seront triplées, etc.

Du coup, la gallerie coté zds deviendra rapidement illisible après plus de 3 imports.

L'idéal pour pouvoir se servir de cette fonctionnalité, serait de n'envoyer que des images qui n'existent pas encore dans la gallerie distante, ce qui posent d'autres problèmes.

Du coup, j'aimerai bien avoir votre point de vue là dessus.

firm1 avatar Nov 14 '16 16:11 firm1

Faut peut-être attendre l'API des galleries ?

njourdane avatar Nov 14 '16 20:11 njourdane

Faut peut-être attendre l'API des galleries ?

Oui mais on risque d'attendre un bon petit moment...

WinXaito avatar Nov 14 '16 21:11 WinXaito

Oui mais on risque d'attendre un bon petit moment...

Malheureusement. Je crois que on est bloqué la dessus

firm1 avatar Nov 15 '16 10:11 firm1

ping @DevHugo, si tu as un poc en local, tu veux pas PR quelque-chose ? :P

njourdane avatar Nov 25 '16 10:11 njourdane