Améliorer le rendu de JavaHelp

Le résultat

Une fois les changements effectués, vous pouvez visionner votre aide en utilisant le moteur Cobra. Voici des pages HTML affichées respectivement (de gauche à droite) dans la visionneuse de base, dans la visionneuse Cobra et finalement dans Firefox (pour référence).

Pages de base

Voici une page HTML assez simple avec des tables, des listes, un peu de CSS et un div flottant. J’avoue avoir été surpris par la qualité de la visionneuse de base sur le coup! Pour une mise en page basique de l’aide, changer de visionneuse pourrait même s’avérer inutile. Cependant, comme vous le voyez, le div flottant pose un petit problème et le choix des polices dans la visionneuse de base est assez douteux.

Visionneuse de base, Visonneuse Cobra, Mozilla

Site de Developpez

Le site des forums de developpez.net est largement fournis en CSS et tables en tout genre. Un vrai défi à afficher pour un navigateur ;). Je n’ai donc pas résisté à comparer son affichage. Pour le rendu de base, pas besoin de capture, votre navigateur fera le boulot :D.
Visionneuse de base, Visonneuse Cobra, Rendu de référence

Là aussi, j’ai été surpris par la qualité de la visionneuse de base. Le texte est certe petit, mal dimensionné et les zone « input » sont inutilisable, mais dans l’ensemble le rendu n’a pas l’air pire qu’avec Cobra. Il faut cependant laisser à Cobra un avantage qui ne se vois pas ici. Cobra gère le javascript, le rendu est animé et les selector CSS du type :hover sont gérés correctement.

Css Zen Garden

Le site de « Css Zen Garden » a pour but de démontrer toute la puissance du CSS. Ici, Cobra va prendre de l’avance. On a du CSS en veux-tu en voilà. Comme on peut le voir, la visionneuse de base a du mal avec les CSS complexes et le choix des tailles de police. Le rendu Cobra est loin d’être parfait mais il est très utilisable.
Visionneuse de base, Visionneuse cobra, Rendu de référence

Css Zen Garden, version « sous la mer »

Un deuxième test, avec le même site, mais un CSS complètement différent. La différence est encore plus clairement marquée entre Cobra et la visionneuse de base!
Visionneuse de base, Visionneuse Cobra, Rendu de référence.

A voir de tels rendu, vous pouvez imaginez la qualités des fichiers d’aide que vous pourrez réaliser en utilisant Cobra ou JDIC

Conclusion

Alors que faut-il faire? Utiliser JDIC? Utiliser Cobra? Utiliser la visionneuse de base? J’aurais tendance à vous suggérer de commencer par la visionneuse de base mais de rédiger vos document sans trop en tenir compte. N’oubliez pas qu’il s’agit de documents HTML et qu’ils seront vraisemblablement intégrés dans d’autres moyens d’affichage (site web, documentation pdf, etc…). Vous allez aussi probablement éditer votre aide dans un autre language que le HTML. Peut-être un parent plus ou moins proche des wiki qui peuvent générer plein de formats différents (HTML, PDF, word, winhelp, …).

C’est lors du rendu final dans la visionneuse (ou en cours de projet) que vous pourrez décider de votre stratégie.

  • Soit tout passe bien ou les corrections à effectuer dans vos fichiers seront mineures. Dans ce cas, aucun raison de vous embêter avec une autre visionneuse que celle de base. Ne touchez pas au ContentViewerUI
  • Soit beaucoup de corrections sont nécessaires pour atteindre un résultat acceptable ou les besoins au niveau du design de l’aide ne peuvent pas être rencontrés par la visionneuse de base. Dans ce cas, vous aurez de nouveau deux possibilités:
    • Soit Cobra vous donne entièrement satisfaction
    • Soit vous n’avez plus d’autre choix que de vous orienter vers le navigateur de l’OS. Dans ce dernier cas attendez vous à devoir fournir du support supplémentaire pour tous les cas ou les librairies natives poseront problème

En tout cas, retenez que la visionneuse n’est pas un absolu, et il ne faut pas vous focaliser dessus. Les solutions existent, et je vous en ai proposé quelques une. Vous pouvez très bien en imaginer d’autres si vous le désirez.

Si vraiment vous utiliser JDIC et que vous avez des clients sur des OS non supportés, il faudra recompiler les librairies natives pour ces clients et les embarquer dans l’application. Et bien sûr, mentionner dans la documentation que pour visionner l’aide il faut installer un navigateur.

Dernier détail qui ne se vois pas ici. Pour les pages complexe, le temps de rendu a son importance, et j’ai pu constater que, pour des pages comme le « Css Zen Garden », Cobra est nettement plus rapide à faire le rendu que la visionneuse de base.

2 réflexions au sujet de « Améliorer le rendu de JavaHelp »

  1. Super intéressant …

    J’avais pour d’autre besoin html utilisé SWT et son composant Browser (le problème des librairies natives doit être le même qu’avec JDIC)

    Et j’avais même trouvé une intégration Swing de ce composant SWT.

    Lobo et Cobra, c’est bon à savoir.

Laisser un commentaire