Developpez.com - Microsoft DotNET
X

Choisissez d'abord la catégorieensuite la rubrique :


Créer un logo en utilisant le ServiceWeb Xara3D

Date de publication : 18/03/2005 , Date de mise a jour : 18/03/2005

Par Selkis (selkis.developpez.com)
 

Comment créer un logo 3D en utilisant le Service Web distant de Xara3D


I. Introduction
II. Ajouter une référence Web
III. Utiliser la référence
IV. En savoir plus sur les Services Web

Télecharger le code source commenté exemple en vb.net Créer votre logo 3D

I. Introduction

Un service Web est un composant écrit dans différents langage et déployé sur toutes les plates formes, accessible par une URI dont l'interface est définie en XML.
Il propose aux applications de faire appel à ses services et ainsi permettre de simplifier l'échange de données entre eux.

Dans cette exemple nous utiliserons le Service Web gratuit RenderServer3D du site ws.xara.com disponible à cette adresse : http://ws.xara.com/graphicrender/render3d.wsdl


Il nous permet de créer une bannière 3d de différents types suivants les paramètres passés


II. Ajouter une référence Web

Positionnez vous dans L'explorateur de solutions, faites un clic droit sur "Référence" et sélectionnez "Ajouter une référence Web".

Vous devez saisir l'adresse de la référence dans la barre d'adresse et cliquer sur la petite flèche verte.
La référence va se télécharger et vous afficher les méthodes disponibles soit :

  • GetExportTypes() qui nous permet de récupérer sous forme d'array la liste des extensions de sortie possible.
  • GetFonts() qui nous permet de récupérer sous forme d'array la liste des police disponible
  • GetTemplates() qui nous permet de lister sous forme d'array les modèles disponible
  • RenderUrl() qui nous permet , grâce a des paramètres envoyés de type string de récupérer l'adresse url de sortie de notre logo
Il ne vous reste plus qu'à cliquer sur le bouton [Ajouter la référence] pour voir apparaître dans votre explorateur de solution, la Référence.


III. Utiliser la référence

La manière de proceder est tres simple, nous allons lister les polices, templates, extentions de sortie possible fournit par le service.
Lui indiquer Le texte, la couleur du texte , son fond, sa taille et lancer la requete.
Il ne nous restera plus qu'a attendre la reponse du service et recuperer notre logo via une url.

Voici la methode utilisé pour lister les polices disponibles.

il en va de meme pour lister les templates et les extentions.
La première chose à faire est de déclarer une instance de la classe RenderServer3D, soit :

Dim InstXara As New com.xara.ws.RenderServer3D
Le reste est très simple, on récupère le tableau des polices par la propriété GetFonts de l'instance, et un simple parcours de tableau suffit à remplir notre zone de liste. Soit :

Try 'Récupère la liste des police disponibles Dim Fonts As Array = InstXara.GetFonts 'parcours de la liste des polices Dim i As Integer For i = 0 To Fonts.Length - 1 Listbox1.Items.Add(Fonts.GetValue(i)) Next i Catch ex As Exception 'si erreur MsgBox(ex.Message, MsgBoxStyle.Information) Exit Sub End Try
La methode RenderUrl() quand a elle est différente car elle attend des valeurs en paramètre pour créer notre logo et nous retourner l'url de ce dernier.

    Les parametre attendu sont :
  • Le template : de type string, ce doit être un élément du tableau retourné par la méthode GetTemplates
  • Le texte : de type string, c'est le texte du logo, , au choix de l'utilisateur
  • La couleur du texte : bgcolor , sans le #, au choix de l'utilisateur
  • La couleur du fond : bgcolor , sans le #, , au choix de l'utilisateur
  • La police : de type string, ce doit être un élément du tableau retourné par la méthode GetFonts
  • La taille de la police : de type string, au choix de l'utilisateur
  • L'extension de sortie : de type string, ce doit être un élément du tableau retourné par la méthode GetExportTypes
  • La longueur du logo : string, au choix
  • La hauteur du logo : string, au choix
Voici le code vb.net correspondant
'affectation des valeur nécessaire a l'envoi des données Dim modele, texte, couleurtexte, couleurfond, police, taillepolice, sorti, longueur _ hauteur, logoSortie As String modele = "Arial round" texte = "Mon logo" couleurtexte = "000000" couleurfond = "FFFFFF" police = " Arial " taillepolice = " 20 " sorti = " .jpg " longueur = 150 hauteur = 60 'recuperation de l'url du fichier de sortie logoSortie = InstXara.RenderURL(modele, texte, couleurtexte, couleurfond, police, taillepolice, sorti, longueur, hauteur)
logoSortie contient le chemin http de votre logo, il ne vous reste plus qu'a le récupérer par la methode DownloadFile de la classe Web client.

Voici le code source correspondant
'Extraction du nom de fichier à partir de l'url Dim pos As Integer pos = InStrRev(Trim(logoSortie), "/", -1, 1) Dim fichier As String = Mid(Trim(logoSortie), pos + 1) 'creation d'une instance webclient Dim web1 As System.Net.WebClient web1 = New WebClient Try 'telecharge le fichier web1.DownloadFile(logoSortie, fichier) Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical) End Try
Une fois le fichier récupérer, il suffit de l'afficher dans une picturebox, et cela très simplement en créant une instance d'un bitmap , soit :

Dim img As Image img = New Bitmap(Application.StartupPath & "\" & lelogo) PictureBox1.Image = CType(img, Image)

IV. En savoir plus sur les Services Web


Vous pouvez telecharger l'exemple du tutoriel ServiceWebXara ici (ecrit en vb.net)

Référence :
 Créer et Consommer un service web avec .NET Stéphane Eyskens
 Introduction aux WebServices en .NET (c#) Par LEBRUN Thomas
 WebServices avec Delphi 6 Entreprise Antony ZANETTI (TeamB-FR)
 Qu'est ce qu'un web services
 Web services sur Msdn France


Liste de mes articles Vb.Net:
Accueil de la section VB.NET.
Utilisation d'une base Access en mode déconnecté avec Ado.Net.
Lecture et ecriture d'un fichier Xml à schéma connu.
Création d'une application de type Service Windows.
Création d'un logo xara3d en utilisant un service webdistant


Copyright © 2005 selkis. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Responsable bénévole de la rubrique Microsoft DotNET : Hinault Romaric -