\documentclass[11pt]{article}
\usepackage{fullpage}
\usepackage[francais]{babel}
\usepackage{url}
\usepackage{graphicx}
\usepackage{fourier}

\newcommand{\DSL}{\texttt{DSL}}

\title{\textbf{Utilisation de \DSL v1.1}}
\author{Rémi Synave}
\date{}

\begin{document}

\maketitle
\thispagestyle{empty}

\vspace{2cm}
\tableofcontents

\newpage
\section{Introduction}
%Dans le cadre d'activités de recherche, nous nous intéressons à l'esthétique des images et notamment à leur composition. La composition d'une image, qu'elle soit un tableau, une photographie, une gravure ou autre, s'appuie sur une palette de couleur et une construction.
Ce logiciel permet de tracer des lignes sur des images. Les lignes ne sont pas directement intégrées à l'image mais sont enregistrées dans un fichier \texttt{json}. Ces fichiers portent le même nom que l'image mais avec un suffixe vous identifiant et l'extension \texttt{json}. Vous pourrez également exporter l'image avec les lignes dans un fichier au même nom que l'image suivi du suffixe vous identifiant et l'extension \texttt{png}.

\newpage
\section{Lancer le logiciel}

Pour télécharger le logiciel, rendez-vous sur la page wiki de \DSL :\\
\url{https://gogs.univ-littoral.fr/synave/dsl/wiki}\\
ou directement sur la page de téléchargement :\\
\url{https://gogs.univ-littoral.fr/synave/dsl/src/master/standalone_version}\\~

Choisissez évidemment la dernière version disponible.

\subsection{Utilisateurs Windows}
Décompressez l'archive et lancez l'application \texttt{dsl.exe} s'y trouvant.

\subsection{Utilisateurs Linux}
Décompressez l'archive et exécutez \texttt{dsl.sh} s'y trouvant. Si nécessaire, vous pouvez passer par un terminal en exécutant la commande \texttt{./dsl.sh} depuis le répertoire où se trouve ce fichier.

\newpage
\section{Les menus}
Chaque entrée de sous menu posséde un raccourci clavier. Ils ne sont pas forcément donnés dans ce document mais peuvent être retrouvés en lançant l'application est en naviguant dans les menus avec la souris.
\subsection{Menu \texttt{File}}
Vous trouverez dans le sous menu \texttt{File} :
\begin{itemize}
\item \texttt{Open image} : Cette entrée de menu vous permet d'ouvrir une image (voir section~\ref{sec:parcourir}).
\item \texttt{Save} : Enregistre les lignes tracées dans un fichier \texttt{json} (voir section~\ref{sec:saveExport}).
\item \texttt{Export in PNG} : Exporte l'image courante avec ses lignes dans un fichier \texttt{png} (voir section~\ref{sec:saveExport}).
\item \texttt{Exit} : Permet de quitter l'application.
\end{itemize}

\subsection{Menu \texttt{Edit}}
\label{sec:sousMenuEdit}
Vous trouverez dans le sous menu \texttt{Edit} :
\begin{itemize}
\item \texttt{Automatic Loading Line json file} : Indique si le chargement automatique des lignes est actif ou non. Par défaut, au lancement de l'application, le chargement automatique est actif. Si un fichier \texttt{json} contentant des lignes et correspondant à l'image parcourue et votre suffixe vous identifiant est présent sur le disque, alors les lignes seront automatiquement affichées. Si l'option est désactivée, les lignes existantes ne s'afficheront plus. Vous risquez donc d'écraser une version précédente des lignes dessinées à tout moment.
\item \texttt{Read Only} : Passe l'application en mode visionneuse d'image avec affichage ou non des lignes existantes en fonction de l'activation ou non de l'option ci-dessus. Si cette option est activée alors vous ne pourrez pas modifier les lignes présentes ni en ajouter ni en supprimer.
\end{itemize}

\subsection{Menu \texttt{Image}}
\label{sec:sousMenuImage}
Vous trouverez dans le sous menu \texttt{Image} :
\begin{itemize}
\item \texttt{First} : Affiche la première image du répertoire. Cette entrée peut être activée en appuyant sur la \texttt{flèche haut} de votre clavier.
\item \texttt{Previous} : Affiche l'image précédente du répertoire. Cette entrée peut être activée en appuyant sur la \texttt{flèche gauche} de votre clavier.
\item \texttt{Next} : Affiche l'image suivante du répertoire. Cette entrée peut être activée en appuyant sur la \texttt{flèche droite} de votre clavier.
\item \texttt{Last} : Affiche la dernière image du répertoire. Cette entrée peut être activée en appuyant sur la \texttt{flèche bas} de votre clavier.
\end{itemize}
\subsection{Menu \texttt{About}}
Ce menu fait apparaitre une boite de dialogue qui affiche des informations concernant ce logiciel.

\newpage
\section{Parcourir les images}
\label{sec:parcourir}
Au lancement de l'application, une fenêtre grise apparait (voir figure~\ref{fig:lancement}). Celle-ci prend presque tout l'espace de votre bureau.

\begin{figure}[!htbp]
\centering
\includegraphics[width=15cm]{../images/ecran00.png}
\caption{\label{fig:lancement} Ecran de démarrage de l'application. Une fenêtre grise vide.}
\end{figure}

La demande d'ouverture d'une image provoquera l'apprarition de plusieurs fenêtres.

La première vous demandera quelle image ouvrir (voir figure~\ref{fig:choixImage}). Seules images jpg et png sont supportées. De plus, si les images contiennent des données de rotation (dans les données exif), celles-ci sont bien prises en compte et les images affichées dans la bonne orientation. 

\begin{figure}[!htbp]
\centering
\includegraphics[width=9cm]{../images/ecran01.png}
\caption{\label{fig:choixImage} Choix de l'image à ouvrir.}
\end{figure}

Ensuite, une boite de dialogue s'ouvrira et vous demandera le suffixe à utiliser pour l'enregistrement des fichiers (voir figure~\ref{fig:suffixe}). Le suffixe est l'identifiant qui permet de savoir qui a tracé les lignes. Il est donc important d'utiliser un suffixe qui permette de vous identifier facilement comme \texttt{\_NomPrenom}.

\begin{figure}[!htbp]
\centering
\includegraphics[width=4cm]{../images/ecran02.png}
\caption{\label{fig:suffixe} Choix du suffixe à utiliser pour l'enregistrement des fichiers.}
\end{figure}


Lorsque ces éléments sont renseignés, l'application fonctionne sur le même principe qu'une visionneuse d'images (voir figure~\ref{fig:afficheImage}). Vous pouvez passer d'une image à l'autre avec les flèches du clavier. (voir section~\ref{sec:sousMenuImage} pour le détail).

\begin{figure}[!htbp]
\centering
\includegraphics[height=12cm]{../images/ecran03.png}
\caption{\label{fig:afficheImage} Image à analyser.}
\end{figure}

\newpage
\section{Tracer des lignes}
Tracer des lignes est intuitif. Il vous suffit de définir la ligne en cliquant à deux endroits différents sur l'image. Une ligne passant par ces deux points sera alors créée.\\
Les deux clics seront représentés par des petits cercles verts que vous pourrez ensuite déplacer (voir figure~\ref{fig:cerclesVerts}) pour ajuster la ligne comme vous le désirez.

\begin{figure}[!htbp]
\centering
\includegraphics[height=15cm]{../images/ecran05.png}
\caption{\label{fig:cerclesVerts} Image avec deux lignes tracées. Les lignes sont paramétrées par les cercles verts qui peuvent être déplacés.}
\end{figure}

\danger Si vous avez ajouté, modifié, supprimé des lignes d'une image et que vous changez d'image avec les flèches de votre clavier, un message d'avertissement apparaitra pour vous informer que les modifications seront perdues (voir figure~\ref{fig:avertissement}).\\~

\begin{figure}[!htbp]
\centering
\includegraphics[width=6cm]{../images/ecran06.png}
\caption{\label{fig:avertissement} Message d'avertissement lorsque l'on change d'image alors qu'il y a des données non enregistrées.}
\end{figure}

\danger Si l'option de chargement automatique des lignes existantes est activée(voir section~\ref{sec:sousMenuEdit}) alors, lors du visionnage des images, les lignes existantes apparaissent automatiquement. Si l'option est désactivée, aucune ligne n'appraitra même si elles ont déjà été créées. Vous pourriez ainsi écraser un tracé déjà existant !!\\~

\danger Lorsque l'application est en mode \texttt{Read Only}, les lignes s'affichent (à condition que le chargement automatique soit également activé), mais les cercles verts ne sont pas accessibles.


\newpage
\section{Enregistrement des lignes et export des images avec les lignes}
\label{sec:saveExport}
Pour enregistrer les modifications effectuées sur les lignes d'une image, il vous suffit de faire \texttt{CTRL+S} ou de passer par le menu \texttt{File} $\to$ \texttt{Save}.

Pour exporter les images avec les lignes, le raccourci est \texttt{CTRL+E} ou passer par le menu \texttt{File} $\to$ \texttt{Export in PNG}.\\~

L'enregistrement et l'export ne donnent pas lieu à l'apparition de boite de dialogue.\\~

Les données concernant les lignes seront enregistrées dans un fichier \texttt{json} et les images exportées avec les lignes dans des fichiers \texttt{png}. Les noms de ces fichiers sont formés sur le modèle du fichier image ouvert en y ajoutant le suffixe à la fin du nom de fichier et la bonne extension.

Par exemple, si vous avez choisi \texttt{\_bob} comme suffixe et que l'image affichée s'appelle :\\
\texttt{../images/IMG1245.jpg}\\
alors les lignes seront sauvegardées dans un fichier nommée :\\
\texttt{../images/IMG1245\_bob.json}\\
et si la demande d'export de l'image avec les lignes est faite, alors le fichier sera enregistré sous le nom :\\
\texttt{../images/IMG1245\_bob.png}\\~\\



\end{document}

