Module GVExport

De PGVWiki
Sauter à la navigation Sauter à la recherche

ATTENTION ! ce module est proposé par un tiers et n'est pas entretenu par l'équipe de développement de PhpgedView ! l'équipe de PhpGedView vous précise donc que tout bug qui serait causé par l'implémentation de ce module ne pourra pas êtr résolu par l'équipe. Cependant, le développeur de ce type de modules est membre du forum de PhpGedView, et pouvez donc le contacter directement sur le forum en cas de problème.

Le développeur de ce module est: Korbendallas1976 (Ferenc Kurucz)

Le module GVExport peut exporter votre arbre familial vers un fichier DOT, qui est le format de données natif de l'application GraphViz. En utilisant GraphViz vous pouvez convertir ce fichier dans des formats d'images très divers (GIF, JPG, PNG) ou dans un format PostScript, PDF etc...

Un des intérêts de ce module est de pouvoir, avec Graphviz, imprimer votre arbre généalogique sur plusieurs pages au format A4. Le logiciel fait en sorte que ces différentes pages puissant être posées les unes à côté des autres afin de reconstituer l'arbre complet sans "coupure".

Comment obtenir le module GVExport

Vous pouvez télécharger la dernière version de GVExport sur le site personnel de Ferenc Kurucz.
Dernière version: 0.7.2, 2008-10-23
GVExport_0.7.2

Prérequis

PGV

Bien évidemment, vous devz avoir installé PhpGedView (Ce module a été testé avec les versions 4.1.3, 4.1.4, 4.1.5 and 4.1.6). Attention: ce module ne fonctionne pas avec la version 4.2 SVN !

GraphViz

Il vous faut installer Graphviz pour pouvoir exploiter les fonctions de création d'image à partir du fichier créé par le module GVExport.

Linux

Ce module existe pour la plupart des distributions Linux: Debian, Ubuntu, Fedora. Vous trouverez les liens de téléchargement ici: http://www.graphviz.org/Download..php

Windows

Ce module existe aussi sous Windows. Vous pouvez le télécharger ici: http://www.graphviz.org/Download_windows.php

Installation

Il vous suffit de dézipper le fichier téléchargé. ce fichier contient:

le fichier gvexport.php
un dossier appelé gvexport

Vous installez ce fichier et ce dossier à la racine du répertoire PhpGedView/modules/ de votre installation PhpGedView.

Configuration

Dans modules/gvexport il y a un fichier config.php.

Si vous avez installé PhpgedView sur un serveur distant, il faut modifier ce fichier avec un éditeur de texte en "commentant" la ligne qui commence par $GVE_CONFIG["graphviz_bin"]. C'est à dire en mettant "//" au début de la ligne suivante:

//$GVE_CONFIG["graphviz_bin"] = "/usr/bin/dot"; // Default on Debian Linux

Cela évitera ainsi à PhpGedView de chercher à exécuter le programme graphviz sur votre serveur.

Si vous avez installé PhpGedView sur un serveur local et que vous souhaitez utiliser graphviz directement, il vous suffit alors d'indiquer l'emplacement de GraphViz sur la ligne ($GVE_CONFIG["graphviz_bin"]).

Linux

Par défaut, le fichier config.php indique le chemin d'installation suivant pour graphviz: /usr/bin/dot

Utilisation

Si l'installation s'est correctemnet déroulée, vous devriez alors voir apparaître sur la barre de menu une nouvelle icône appelée "Export Graphviz". En passant votre souris sur cette icône, vous verrez apparaître le sous-menu "Arbre tout-en-un". Il vous suffit de cliquer sur ce lien.

Paramètres de sortie

La fenêtre d'export de l'arbre tout-en-un apparait comme suit:

Erreur lors de la création de la miniature : Fichier manquant
Type de fichier généré

Par défaut, il faut cocher la case DOT qui est le seul format disponible si vous n'avez pas installé PhpGedView et Graphviz sur votre ordinateur.

Si vous avez installé PhpGedView et Graphviz sur votre ordinateur, vous aurez la possibilité de choisir les formats JPEG, GIF, SVG, PS et PDF. PNG est le format recommandé pour obtenir une image de votre arbre. SVG est une option intéressante si vous souhaitez que l'on puisse "cliquer" sur les noms (afin d'ouvrir dans votre navugateur web la page d'informations individuelle de la personne dans PhpGedView).

Si votre application GraphViz supporte le format de sortie PDF, je vous recommande de l'utiliser à chaque fois, parce que les temps de calcul sont sont plus faibles et parce qu'il est moins gourmand en taille mémoire.

Attention: JPG a une limite de taille de pixel de 64K pixel (à la fois en largeur et en hauteur) qui ne peut pas être modifiée, PNG n'a pas une telle limitation mais l'utilisation de la mémoire peut être extrêmement importante durant le traitement. Basé sur mon expérience, l'usage recmmandé est le suivant: Largeur * Hauteur * 2 kilobits, afin que la création d'une image d'une taille de 50000x10000 pixels nécessitera environ 1GB de RAM).

Générer un fichier à télécharger

Si vous cochez cette option le fichier (DOT ou image) n'apparaîtra pas dans la fenêtre du navigateur, il vous faudra télécharger ce fichier et le sauvegarder sur votre ordinateur.

Ajouter des sauts de page

Cette option n'a de sens que si vous décidez de convertir votre fichier DOT en PostScript ou PDF. Il y a quelques inconvénients, comme par exemple le fait que çà coupe les boites en leur milieu si elles se trouvent sur les côtés de la page.

Sens du graphe
  • Du haut vers le bas: les ancêtres sont en haut, les descendants en bas
  • De la gauche vers la droite: les ancêtres sont à gauche, les descendants à droite
Paramètres "MCLIMIT"

Cette option vous aide à réduire le nombre de croisements sur votre graphique. En choisissant le nombre le plus élevé cela ralentira le temps de génération du graphique. Voici quelques données basées sur mon expérience:

mclimit : runtime
1       : 1 sec
5       : 2 sec
20      : 5 sec
50      : 15 sec
100     : 25 sec

Préferences du diagramme

En cliquant sur "préférences", un sous menu avec les options suivantes apparaît:

Erreur lors de la création de la miniature : Fichier manquant
Individus à inclure dans le diagramme

Tous

Tous les individus qui existent dans le fichier GEDCOM actif seront pris en compte dans le diagramme.

Toutes les personnes reliées avec cette personne
Le diagramme ne fera apparaître que les individus et les familles qui sont liées à la personne choisie. Vous pouvez déterminer le type de relations:

  • Inclure les ascendants - Les ancêtres de l'individu sélectionné, la profondeur en terme d'ascendance peut être indiquée.
  • Siblings - Siblings of selected individual and of its ancestors (sisters/brothers & aunts/uncles)
  • Cousines - Descendants of the siblings of ancestors of the selected individual (nice explanation :-)) (note: cousines are beeing searched down to the level of the selected individual (s.i.), so if s.i. has a sister and she has a child, then it won't show up on the graph)
  • Descendants - Descendants of the selected individual and all relatives (children & adopted persons), max depth of search can be selected
  • Spouses - Spouses of all included individuals (wifes/husbands of all the people selected in the above options)
  • Mark not blood-related people - Marks with different colors those peoples which are not blood-relate to the selected individual (like mom's brother's wife & adopters)
Mark those individuals which facts are not validated yet

Shows individuals with different color, to recognize those which have data not yet validated. Show last editor's username
Only make sense if you checked the above option. It will help you track submitters of not yet validated data.

Add URL to individuals and families

It works weel if you choose SVG output, it enables clicking on the names & marriages and it will open the relevant PGV page in your browser

Use abbreviated placenames

Use only the first and last part of place name. Like "City, Country" instead of "City, County, Region, Country"

Personal data to be shown
Marriage data to be shown

Appearance

Diagram type

You can choose from four diagram types. The "Combined" type is only working correctly if you use the "anyone related to a person" mode.

Simple

Simple graph

Decorated

Decorated graph

Decorated + photo

Decorated with photo graph

Combined

Combined graph

Font size
Color code of male individuals
Color code of female individuals
Color code of unknown individuals
Color code of families

Advanced Settings

Debug Mode

Dumps DOT file & other debug info on screen

Custom media directory

Changelog

Version 0.7.2 (2008-10-23)
- Fixed  : Clickable containers (INDI and FAM) - now working again
- New    : Family containers could be switched off, so the graph is more compact now (its quite usable for pedigree & descendancy charts)
- New    : PostScript output works (sort of), this is needed if the page-breaking mode is used
Version 0.7.1 (2008-10-19)
- Fixed  : Works correctly with 4.1.6 SVN (file naming difference: person_class.php vs class_person.php)

Version 0.7.0b (2008-10-19)
- Fixed  : missing gvexport.php in the zip file (sorry!)

Version 0.7.0 (2008-07-27)
- Fixed  : Works correctly with 4.1.5 & 4.1.6 SVN (date handling)
- New    : Minor improvements in usability 

Version 0.6.6 (2008-05-01)
- New    : UI settings are saved in cookie (by Till Schulte-Coerne)
- New    : Multiple date formats (under development)

Version 0.6.5 (2008-04-06)
- Fixed  : Workaround for the bug in method Family->getSpouseId() & UI changes (by Till Schulte-Coerne)

Version 0.6.4 (2008-03-22)
- New    : German translation (by Hermann Schulte-Coerne)
- New    : Custom font name

Version 0.6.3 (2008-02-01)
- Fixed  : Multi-platform operability (by Thomas Ledoux), now GVExport & GraphViz should work together on Win OS.

Version 0.6.2 (2008-01-31)
- New    : Custom limit for ancestors and descendants search depth (level)
- New    : Search for cousines (now its a separate checkbox)
- New    : French translation (by Thomas Ledoux)
- Fixed  : URLs in combined mode

Version 0.6.1 (2008-01-23)
- New    : Linked GEDCOMs (only in partial tree mode, not when "Everyone" is selected), URLs are working too for linked GEDCOMs.  
- Fixed  : INDIs with unknown gender in "combined" mode
- Fixed  : INDI id missing in "decorated" mode
- Fixed  : FAM id problems in "combined" mode (linked GEDCOMs)
- Fixed  : Polish translation is up-to-date (by wooc)

Version 0.6.0 (2008-01-22)
- New    : UI redesign
- Changed: Debug mode more self-explanatory

Version 0.5.4 (2008-01-16)
- New    : PDF output (depends on graphviz version)
- New    : Custom media directory
- Fixed  : Absoulte URLs in indi/fam links
- Fixed  : Goofs in HTML formatted texts (& sign)
- Fixed  : Marriage place naming (abbr vs full)
- Fixed  : Left justified texts
- Fixed  : Avoiding estimated birth dates (if death date is present)

Version 0.5.3 (2008-01-14)
- New    : Customizable text on the chart (in config file)
- New    : Full or abbreviated place name (in config file)
- New    : Margin size (in config file)
- Fixed  : Removing double qoutes (") from names	

Version 0.5.2 (2007-12-20)
- New    : Polish translation (by wooc)

Version 0.5.1a (2007-12-13)
- Fixed  : MCLIMIT setting (wasn't functioning at all)

Version 0.5.1 (2007-12-12)
- New    : MCLIMIT setting

Version 0.5.0 (2007-12-02)
- Fixed  : PHP error during "simple" graph processing
- New    : INDI id and FAM id can be shown on graph (TODO #4)
- New    : Clickable containers (INDI and FAM), which opens the indi/fam page in PGV (TODO #2)
- New    : Last editor's username can be shown (TODO #4)

Version 0.4.9 (2007-11-30)
- Fixed  : (Now really fixed) Unvalidated individuals and families are shown (TODO #1) 
- New    : Graph direction selectable (Top-to-Bottom or Left-to-Right)
- New    : Combined graph mode (husband and wife in a single cell together with marriage info) - works correctly only in partial tree mode
- New    : Data shown in the container can be selected

Version 0.4.8 (2007-11-29)
- Fixed  : Unvalidated individuals and families are shown (TODO #1)

Version 0.4.7 (2007-11-28)
- Fixed  : Error handling for GraphViz exec (Pasquale Ceres <pasquale_ceres at yahoo it>)
- New    : Graph can be shown in the browser window (Pasquale Ceres <pasquale_ceres at yahoo it>)

Version 0.4.6 (2007-11-27)
- New    : People with not validated data could be marked

Version 0.4.5 (2007-11-27)
- New    : Pagebreaking output could be selected (it has effect only on DOT files)

Version 0.4.4 (2007-11-25)
- New    : New diagram type - Decorated with photos (could be slow!)
- New    : Not blood related people could be marked with different color (on partial tree)
- New    : Siblings can be included in partial tree
- Changed: Some UI changes

Version 0.4.3 (2007-11-24)
- New    : Custom font size used on diagram

Version 0.4.2 (2007-11-24)
- New    : Ancestors, descendants & spouses are selectable in partial tree mode

Version 0.4.1 (2007-11-24)
- Fixed  : Syntax error in DOT file, when using "decorated" mode

Version 0.4 (2007-11-23)
- New    : Logic rewritten
- New    : Partial tree selection is available (INDI and his/her ancestors)
- New    : Added Italian language file (Pasquale Ceres <pasquale_ceres at yahoo it>)
- New    : Added SVG output format, but seems to be buggy
- Changed: Some speed-up on full tree generation
- Changed: Code cleanup (require files)
- Changed: Default colors in config.php

Version 0.3.2 (2007-11-22)
- Fixed  : If localized language file is missing, then "en" is used

Version 0.3.1 (2007-11-22)
- New    : Basic configuration is available in a dedicated config file
- Fixed  : Proper use of language files
- Changed: No more JS popups (gvexport_output.php is obsolete now)

Version 0.3 (2007-11-22)
- New    : Simple / Decorated (HTML) diagram
- New    : Custom colors for diagram 
- Fixed  : PHP bug (Pasquale Ceres <pasquale_ceres at yahoo it>)

Version 0.2 (2007-11-21)
- Fixed  : PHP4 compatibility (Pasquale Ceres <pasquale_ceres at yahoo it>)
- Changed: Temp files are saved into system temp dir / "md5(username)" subdir instead of "session_id" subdir, so fewer dirs are created now

Version 0.1 (2007-11-15)
- Initial version

TODO list

  • Media Firewall compatibility

Contact

Ferenc Kurucz (korbendallas1976@gmail.com)