Salut à tous,

Je vais vous expliquer comment vectoriser facilement un petit logo.

D’abord, quelques notions à avoir :
Une image « normale » est composée de pixels, c’est-à-dire de points. Donc en agrandissant cette image nous ne pouvons qu’agrandir les points, et il y a donc une perte de qualité.
Une image « vectorielle » est composée de courbes, de droites et de formes géométriques. Chacun de ces objets a ses caractéristiques propres : coordonnées, couleur, taille, …
Donc une image simple c’est un ensemble de points et une image vectorielle un ensemble de fonctions mathématiques.

Voilà pour la théorie, maintenant passons à la pratique.

Pour vectoriser une image il va vous falloir un programme, je vous recommande Inkscape que vous pouvez télécharger gratuitement et pour tous les systèmes (Windows, Linux, Mac). Voici le lien apt pour Ubuntu.

Une fois Inkscape installé, munissez-vous du logo que vous voulez vectoriser, un logo simple de préférence. Moi j’ai pris celui d’OVH que voici :
Suite à une utilisation frauduleuse du logo (dans le cadre de fishing) OVH m’a demandé de retirer le logo, ce que j’ai fais n’étant pas d’accord avec ce genre de pratiques frauduleuse, je laisse le tutoriel en ligne, mais ne fournirai plus les logos OVH).


Une fois votre logo choisi, ouvrez Inkscape et allez dans « Fichier > Ouvrir » et choisissez votre logo.

Vous devriez donc avoir ceci :

logo ovh inkscape - t0m-s -

Cliquez sur une image pour l'agrandir

Maintenant nous allons sélectionner notre image en cliquant dessus, ensuite rendez-vous dans « Chemin > Vectoriser le bitmap ».

Là une fenêtre devrait s’ouvrir avec plein d’options bizarres.

paramètres inkscape image vectorielle - t0m-s -

Ici vous allez devoir jouer avec les réglages jusqu’à ce que l’image dans le cadre à droite (n’oubliez pas de cliquer sur « Mettre à jour » après chaque changement) ressemble environ à l’image de base.

Moi j’ai utilisé ces réglages-là :

paramètres inkscape image vectorielle - t0m-s -

Maintenant cliquez sur valider (vous pouvez toujours annuler en faisant « Ctrl+Z » et ensuite re-cliquer sur valider, jusqu’à ce que les réglages vous plaisent) et fermez la fenêtre de réglages.

Là votre logo est devenu tout noir, cliquez dessus et déplacez-le un peu sur le côté pour voir la différence.

Si vous zoomez un peu (Ctrl+ molette de la souris, ou le bouton loupe dans le menu à gauche) vous pouvez voir que votre nouveau logo reste très net, et l’ancien pixellise très fort.

comparaison image vectorielle pixel - t0m-s -

À gauche le logo vectorisé, à droite le logo de base.

Avant de sauvegarder, faites un clic droit sur l’ancien logo et choisissez « Supprimer », ensuite dans le menu « Fichier > Enregistrer sous » et choisissez l’emplacement (avec cette méthode vous le sauvegarder au format « .svg » il va donc être vectoriel.

Si vous préférez l’enregistrer sous un format plus classique (.png par exemple) : sélectionnez votre logo et allez dans « Fichier > Exporter en bitmap » ici une fenêtre s’ouvre, les seule options à renseigner sont celle de la taille du logo, voici un exemple pour un logo de 2000 pixels de large (la hauteur se réglera proportionnellement à la largeur) :

export image vectorielle - t0m-s -

N’oubliez pas de renommer votre logo avant l’exportation 😉
Bien sûr cette méthode n’est pas parfaite, elle ne marchera pas sur une photo, car c’est beaucoup trop de points, mais vous pouvez toujours tester pour vous amuser.

J’espère que ce petit tuto vous a plu, n’hésitez pas à poser vos questions dans les commentaires.

Ah oui, pour ceux qui veulent les fichier originaux : le logo OVH d’origine, la version vectorisée, une exportation de 2000 pixels de large.
Même raison que plus haut …

Voila un petit script pour tous ceux qui voudraient faire des sauvegardes de leur base de donnée.

<?php
// création d'une fonction comportant les identifiants de connexion au FTP :


function mysql_structure() {
$host = 'mon_serveur';
$user = 'mon_login';
$pass = 'mot_de_passe';
$base = 'nom_de_la_base';

// création d'un fichier affichant en boucle le contenu des tuples de la base :

mysql_connect($host, $user, $pass);
mysql_select_db($base);
$tables = mysql_list_tables($base);
while ($donnees = mysql_fetch_array($tables))
{
$table = $donnees[0];
$res = mysql_query("SHOW CREATE TABLE $table");
if ($res)
{
$insertions = "";
$tableau = mysql_fetch_array($res);
$tableau[1] .= ";";
$dumpsql[] = str_replace("\n", "", $tableau[1]);
$req_table = mysql_query("SELECT * FROM $table");
$nbr_champs = mysql_num_fields($req_table);
while ($ligne = mysql_fetch_array($req_table))
{
$insertions .= "INSERT INTO $table VALUES(";
for ($i=0; $i<=$nbr_champs-1; $i++)
{
$insertions .= "'" . mysql_real_escape_string($ligne[$i]) . "', ";
}
$insertions = substr($insertions, 0, -2);
$insertions .= ");\n";
}
if ($insertions != "")
{
$dumpsql[] = $insertions;
}
}
}
return implode("\r", $dumpsql);
}


// creation d'une fonction file_put_content si le script est en PHP4 :

if(!function_exists('file_put_contents')) {
function file_put_contents($filename, $data, $file_append = false) {
$fp = fopen($filename, (!$file_append ? 'w+' : 'a+'));
if(!$fp) {
trigger_error('file_put_contents ne peut pas écrire dans le fichier.', E_USER_ERROR);
return;
}
fputs($fp, $data);
fclose($fp);
}
}


// création du fichier de dump sur le même niveau que ce fichier dump.php

file_put_contents("sqldump_".date("d-n-Y").".sql", mysql_structure());

// effacement du fichier precedant (créé 7 jours plus tot)
$time_old = getdate(mktime()-(7*24*3600));
$an = $time_old['year'];
$mois = $time_old['mon'];
$jour = $time_old['mday'];


// formatage des jours à 1 chiffre

for($k=1; $k<10; $k++)
{
if ($jour==$k)
{
$jour='0'.$jour;
}
}

$date_old=$jour.'-'.$mois.'-'.$an;
$file_old="sqldump_".$date_old.".sql";
unlink($file_old);
?>

Le script n’est pas de moi, je l’ai honteusement pompé sur webtolosa (la flemme de coder un truc qui existe déjà, je sais, c’est mal).Vous devrez peut-être commenter l’avant dernière ligne (lui rajouter des « // » devant), sous peine de voir un beau message d’erreur lors de la première exécution du script.

Vous pouvez bien sur améliorer le script pour qu’il compresse le fichier sql, pour qu’il fasse une sauvegarde de vos fichiers et place le tout dans un fichier .tar.bz2, et par exemple qu’il vous envoie le tout par mail (attention à la taille des pièces jointes dans ce cas là, si c’est trop gros ça risque de ne pas s’envoyer).

L’avantage avec le script php est que vous pouvez le lancer vous même en vous rendant dessus, ou vous pouvez l’intégrer dans une page de spécifique de votre site.

Pour le faire tourner automatiquement chez ovh (peut-être un rapport avec le fait que je soit passé chez eux hier …) c’est simple, uploadez le script dans votre FTP (dans le répertoire /home/votre_login/www/ ), passez le en chmod 704, ainsi vous pouvez l’exécuter vous même depuis le web.
Bon là tout le monde peux le lancer donc arranger vous pour lui donner un nom bien dur à trouver du style « mega_back-up_de_la—b-a-s-e–my_sql.php » ainsi les gens ne s’amuseront pas à le lancer pour vous (et faire ramer votre site par la même occasion, surtout si la base de donnée est grosse).

Rendez-vous ensuite dans votre interface d’administration, allez dans la gestion de votre hébergement, et ensuite dans « planificateur de tâches ».

Planificateur de taches ovh - t0m-s -

Créez une nouvelle tache, et renseignez l’endroit où se trouve votre script php, indiquer quand vous voulez qu’il s’exécute et enregistrez les modifications, voila, une sauvegarde vous attendra dans votre ftp tout les jeudi minuit par exemple.

Si vous ne comprenez pas quelque chose demandez moi.

8 novembre, 2009Changement d’hébergeur

Salut,

J’ai changé d’hébergeur, l’autre m’obligeait à placer des pubs tout les 2cm.

Je suis maintenant sur un hébergement OVH (depuis hier), j’espère que vous verrez une différence niveau vitesse de chargement des pages ect

@+