Aperçu de la liste des sujets (legacy)

Les miniatures sont désormais générées par le cœur du système. Elles ne créeront pas de versions plus grandes que l’image originale.

En y réfléchissant, ce que vous souhaitez, c’est une taille de miniature variable, ce qui risque de donner un aspect un peu désordonné ? Cette fonctionnalité n’est actuellement pas prise en charge.

Je vous suggère de trouver un compromis et de réduire la taille des miniatures afin que les versions basse résolution paraissent moins mauvaises.

1 « J'aime »

D’accord, cela pourrait expliquer le problème avec certaines miniatures, mais pas avec d’autres. Nous avons plusieurs sujets (certains publiés aujourd’hui, d’autres avant la mise à niveau du plugin TLP, remontant donc à plusieurs semaines) qui contiennent des images uploadées de plus de 2000 px de large, mais qui génèrent des miniatures très petites de 50 px et 100 px pour la page d’accueil.

Non, nous souhaitons une largeur et une résolution standard uniques, avec une hauteur variable selon nos paramètres :

topic_list_thumbnail_width est réglé sur 284
topic_list_thumbnail_height est réglé sur 0
topic_list_thumbnail_resolution_level est réglé sur 4 (j’ai dû utiliser 4 car la valeur par défaut de 2 n’est pas correcte… Elle générait des miniatures de 1024 px quand laissée à la valeur par défaut de 2, alors que j’avais besoin de la taille 400, qui semble correspondre à 4)

Comme je comprends ces paramètres :

  1. Les miniatures d’images auront une largeur de 400 px
  2. Les tuiles afficheront les images avec une largeur de 284 px et une hauteur variable selon le ratio de l’image originale uploadée

Cependant, le forum semble servir aléatoirement des miniatures de 50 px ou 100 px de large pour certains sujets… Et ces images sont affichées dans le cadre de la tuile, qui fait toujours 284 px sur notre site, d’où le flou car la petite miniature est étirée pour remplir la tuile.

2 « J'aime »

Vérifiez la sortie de votre fichier /latest.json dans Firefox pour voir quelles vignettes sont stockées.

Vous pouvez également vérifier la taille des vignettes affichées sur la page en utilisant l’inspecteur du navigateur.

Faites-moi savoir si vous remarquez quelque chose d’étrange.

Ah, le paramètre de largeur est sans objet pour les tuiles. (Essayez de le diminuer ou de l’augmenter considérablement). Seule la résolution compte.

Peut-être que les tuiles ne sont pas le bon type de vue pour vous ?

Devrais-je peut-être empêcher l’affichage de vignettes de faible résolution dans la vue Tuiles ? C’est-à-dire ne pas les afficher du tout. Peut-être filtrer toutes celles de 50 x 50.

1 « J'aime »

Je pense avoir justement compris ce qui se passe… voici ma meilleure hypothèse basée sur ce que j’observe :

C’est un problème lié à la façon dont TLP accède aux thumbnails dans /latest.json. Le tableau thumbnails ne contient pas toujours le même nombre d’éléments par sujet. Si l’image d’origine du sujet choisie pour créer la miniature fait moins de 1024 px, cette taille de miniature ne sera pas générée et ne figurera donc pas comme élément/entrée dans le tableau thumbnails. Comme un élément manque dans thumbnails, le compteur du plugin sera décalé d’une unité et renverra la mauvaise taille de miniature. Si l’image d’origine du sujet fait moins de 800 px de large, alors les largeurs 1024 et 800 ne seront pas générées, le compteur du plugin sera décalé de deux unités et renverra une miniature encore plus petite et incorrecte :wink:

Il semble que le plugin parcoure le tableau thumbnails jusqu’à un élément prédéterminé, alors qu’il devrait rechercher un élément avec une max_width spécifique correspondant au paramètre de site pour la résolution de la liste des sujets. De cette manière, les sujets peuvent avoir des tableaux thumbnails de longueurs variables dans latest.json tout en renvoyant toujours la bonne largeur de miniature.

Cela expliquerait pourquoi certaines vignettes de sujets sur notre forum affichaient une largeur de 50 px, d’autres 100 px, tandis que la plupart avaient la bonne largeur de 400 px… les sujets avec des largeurs plus petites correspondaient à des images originales de moins de 1024 px ou de moins de 800 px de large.

J’espère que cela a du sens !

Pourriez-vous également ajouter register_topic_thumbnail_size [300, 300] ? Nous avons besoin d’une largeur de 284 px pour nos vignettes, et charger des miniatures de 300 px nous convient mieux que des miniatures de 400 px. Idéalement, nous préférerions générer exactement la bonne largeur, mais je finirai probablement par passer au Composant de thème lorsque vous le publierez officiellement, et j’ajouterai ma propre largeur personnalisée.

Merci pour votre travail sur le plugin et le composant ! :clap:

Désolé, je ne comprends pas encore le problème.

Votre exemple de résolution n’est pas pertinent car il ne génère pas de miniatures supérieures à 800x800. La miniature de la plus haute résolution dans le tableau est simplement l’image originale.

Dans tous les cas, je pensais que vous vous préoccupiez des images de basse résolution. Pourquoi fournir un exemple concernant une image aussi grande ? Voulez-vous dire que cette grande image est affichée au niveau 50x50 ?

Oui, bien sûr, la longueur du tableau des miniatures varie. L’algorithme est conçu pour gérer cela. Il peut y avoir un bug, mais le fait que la liste des miniatures soit de longueur variable est déjà l’hypothèse implicite du code actuel.

Il sélectionne le niveau de résolution de miniature que vous choisissez et le modifie si nécessaire. Par exemple :

  • Si l’écran est identifié comme rétinien, il décale la sélection d’un cran pour obtenir une résolution plus élevée.

  • Si la résolution n’est pas disponible, il sélectionne la suivante la plus élevée disponible.

Comme je l’ai dit, si seule la résolution 50x50 est disponible, je devrais probablement supprimer complètement les miniatures dans Tiles.

Si vous souhaitez ajouter des résolutions personnalisées, veuillez bifurquer le plugin pour le moment. Les miniatures sont délibérément des doubles les unes des autres. Les modifier uniquement pour vous augmenterait l’utilisation de l’espace disque pour tous les utilisateurs. Je ne pense pas qu’il soit si important de correspondre aussi étroitement aux originaux : il ne s’agit que d’aperçus de miniatures. Cela dit, il y a peut-être un intérêt à avoir une résolution qui correspond plus étroitement au cas d’usage courant de Tiles. Laissez-moi y réfléchir.

1 « J'aime »

Oui, nous constatons plusieurs sujets où une grande image est affichée au niveau 50x50, même si des niveaux 400x400 et 200x200 sont également disponibles. La seule cohérence que j’ai observée entre ces sujets est que l’image originale téléchargée avait soit une largeur inférieure à 1024 px, soit une largeur inférieure à 800 px, ce qui rendait ces tailles absentes du tableau des miniatures. Cela m’a amené à penser que la manière dont le plugin accède aux miniatures est en quelque sorte liée à la longueur du tableau des miniatures.

Je comprends tout à fait la réticence à ajouter des tailles personnalisées. Merci pour l’explication détaillée :+1:

1 « J'aime »

Ah d’accord, c’est une bonne information. Il pourrait y avoir un bug. Je regarderai dès que j’aurai le temps.

2 « J'aime »

Nous l’utiliserions absolument, car j’aimerais beaucoup générer une vignette d’une taille temporelle bien précise !

1 « J'aime »

Pouvez-vous m’envoyer en message privé une image complète qui pose problème afin que je puisse la tester ? Merci également de confirmer le niveau de résolution que vous avez défini et sur quel appareil vous rencontrez le problème.

2 « J'aime »

C’est fait ! Merci à @merefield pour avoir examiné cela.

1 « J'aime »

Je ne sais pas si c’est uniquement moi, mais les vignettes sur mobile avec le composant de thème ont cessé de fonctionner. Elles fonctionnent toujours avec le composant de thème des vignettes de sujets, ce qui semble indiquer un bug. Pour information, je ne vois rien de pertinent dans la console.

2 « J'aime »

Impossible de reproduire, tout est bon sur les derniers tests réussis.

1 « J'aime »

OK tout le monde, la fenêtre de mise à niveau se termine ce week-end.

Je viens de faire un bref test sur Plugin et TC, et tout semble bon.

Veuillez éviter de mettre à niveau après dimanche. Je ne m’engage pas à corriger les changements cassants avant le mois prochain.

1 « J'aime »

Après quelques dépannages, il semble y avoir un conflit avec le plugin des événements. Pouvez-vous le reproduire ?

2 « J'aime »

J’ai donné plus de détails par message privé, mais en résumé, il semble y avoir un problème avec les tailles de résolution personnalisées de TLP. Si nous téléchargeons une image dont la largeur est inférieure ou égale à 1024 px, la vignette de 1024x1024 n’est pas générée. Si nous téléchargeons une image dont la largeur est inférieure ou égale à 800 px, la vignette de 800x800 n’est pas générée. Ce comportement est attendu.

Ce qui n’est pas attendu, c’est que le niveau de résolution 2 ne charge pas réellement des tailles de 400x400, mais charge plutôt ce qui suit :

  1. Des vignettes de 1024x1024 pour tous les sujets ayant une largeur d’image originale supérieure à 1024 px
  2. Des vignettes de 800x800 pour tous les sujets ayant une largeur d’image originale inférieure à 1024 px mais supérieure à
  3. Des vignettes de 400x400 pour tous les sujets ayant une largeur d’image originale inférieure à 800 px mais supérieure à 400 px
  4. Des vignettes de 100x100 pour tous les sujets ayant une largeur d’image originale inférieure à 400 px mais supérieure à 100 px

Je pensais que le niveau de résolution 2 se limiterait à des vignettes de 400x400 pour tous les sujets.

1 « J'aime »

David/Nick,

OK, j’ai revu l’algorithme que j’utilisais pour choisir la résolution et j’ai apporté des améliorations.

Cela a été déployé sur le TC et le Plugin.

NB : la nouvelle échelle de résolution va de 0 à 6, où 0 correspond à l’image originale, 1 à la résolution immédiatement supérieure et 6 à la résolution la plus basse.

Veuillez mettre à jour votre plugin/TC et me faire savoir si cela résout le problème.

@davidkingham, @internet_cookie, merci d’avoir attiré mon attention sur ce point.

(David, je pense que c’est le problème que vous rencontrez, mais je pourrais me tromper).

2 « J'aime »

Merci, Rob. Malheureusement, cela n’a pas résolu mon problème ; je rencontre toujours un conflit avec le plugin Événements. Vous pouvez constater sur mon site de production que les vignettes ne fonctionnent pas sur mobile, alors qu’elles fonctionnent sur mon site de développement lorsque les événements sont désactivés.

2 « J'aime »

Je ne vois pas comment ils ont pu fonctionner ensemble (plugin TLP inclus). Tous deux remplacent le modèle d’élément de liste de sujets mobile. C’est un point bloquant. Pour l’instant, vous devrez choisir entre eux.

Je pourrais expérimenter à plus long terme une version basée uniquement sur des points de sortie CSS/plugin pour éviter une surcharge de modèle, mais ce n’est pas actuellement une priorité absolue pour payer les factures.

Cependant, l’étendue de la surcharge requise par TLP pour afficher une tuile pourrait ne pas être réalisable uniquement avec des points de sortie.

1 « J'aime »

C’est dommage, j’étais ravi de voir les événements revenir enfin haha ! Je trouve curieux que le composant de thème « Miniatures des sujets » fonctionne avec le plugin des événements. Je ne remets pas en question votre conclusion, je cherche juste à aider. Cela semble aussi remplacer le modèle ? Pour être clair, je parle du plugin d’événements de Pavilion, pas de celui de l’équipe Discourse dans le plugin Calendrier.

2 « J'aime »

Parce que la mise en page qu’elle utilise ne nécessite pas de surcharge du modèle. Dans TLP, je dispose davantage d’éléments, dont certains sont contenus dans des div imbriqués, ce qui ne fonctionne pas de la même manière : je dois donc me fier à une surcharge de modèle. Normalement, cela n’est pas très risqué car il s’agit d’un nœud feuille.

2 « J'aime »