Projet Java

Christian Delmas & Stéphane Rouvière

[javalogo52x88]

[javacup] Proposé par : Jean-Louis Faraut (jlf@essi.fr)

Sujet : Ecrire en Java un browser d'images à la xv, permettant de visualiser d'un coup plusieurs images de format différents, situés sur le filesystem local ou sur le réseau (dans ce cas, on passera l'URL d'un directory, par exemple http://www.essi.fr/images ou ftp://ftp.inria.fr/images) .

Travail Réalisé:

Notre browser d'images permet de visualiser les images au format jpg et gif.

Le menu File dispose des options suivantes :

Quelques explications sur le fonctionnement de notre application :

[redball]Open File... permet de visualiser le contenu d'un répertoire. Il s'agit en fait d'un browser de fichiers, qui prend en compte l'ensemble des formats les plus connus (jpg, gif, tiff, doc, html, zip, ...). Notre application ayant pour but principal de traiter les images, un double click (ou un simple click et un load) sur une image au format jpg ou gif, permettent de faire apparaitre l'image dans sa taille réelle.

[XvText]

Note Technique: La classe pincipale est MyList. En reprenant le type List de base de java, cette classe gère l'affichage de la liste des fichiers, les boutons et la scrollbar.

[redball]Open Location... permet de visualiser des images à distance.

Il suffit alors de rentrer une adresse http ou ftp. Le Browser (version texte) apparait alors comme ci dessous:

[redball]Open Visual Browser... permet de visualiser le contenu d'un répertoire, mais on peut dire que c'est un croisement entre l'explorateur Windows et le Schnauzer de Xv4.

Voici un exemple de l'interface graphique disponible :

Comme on peut le voir ci dessous, notre Browser reconnait les types de fichiers les plus courants. Comme un browser classique, il permet de naviguer dans les répertoires. Toutefois, il affiche en plus les images jpg et gif iconifieés. Les tailles de ces dernières sont donc réduites, mais les proportions entre largeur et hauteur sont conservées. Pour ce qui est des noms, ils sont inscrits bien évidemment sous le fichier correspondant. Si le nom est trop long, la fin de ce dernier est coupée (on en a toutefois affiché le maximum suivi de 3 points de suspension.)

Pour visualiser une image, comme dans le cas précédent, un double click (ou un simple click et un load) sur une image au format jpg ou gif, suffisent.

[XvVisual]

Note technique: Ce Visual Browser utilise des classes spécifiques, MyIcons et MyListVisual. (Celà ressemble beaucoup à MyList mais toute la partie graphique est regérée) :

[redball]Open Remote Browser... fonctionne exactement sur le même principe que le visual browser. Cependant, lors de son utilisation, une fenêtre apparait demandant une adresse ftp ou http. On visualise donc ensuite le contenu d'un répertoire distant.

Note technique: Lorsque l'on essai d'ouvrir un répertoire distant, on recoit en fait le contenu d'un page html. Il faut ensuite parser ce contenu pour ne récupérer que les fichiers (situés dans les HREF="..." du code html). On peut récupérer l'ensemble de ces fichiers ou comme dans notre cas, ne récupérer que les images au format gif ou jpg. Il est nécessaire de faire attention au probleme suivant : dans une page html, il est possible de faire référence à des fichiers ou à des répertoires qui ne sont pas situés au même endroit que la page que l'on est en train de parser. Il faut en tenir compte, si on affiche tout, pour ne pas avoir de problèmes lors de la navigations dans les répertoires.

Remarques Générales sur notre application :


Enfin, il est possible de récupérer les sources de cette application. Vous devez télécharger les fichiers suivants :

Et pour finir, voici les sources à récupérer .....

Enfin, si vous voulez nous écrire :

[e-mail1] Chritian Delmas

Stéphane Rouvière