begin process at 2012 02 08 10:15:31
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > AFFICHER, TELECHARGER DES IMAGES SE TROUVANT SUR INTERNET DANS VOTRE APPLI DELPHI GRACE A INDY

AFFICHER, TELECHARGER DES IMAGES SE TROUVANT SUR INTERNET DANS VOTRE APPLI DELPHI GRACE A INDY


 Information sur la source

Note :
Aucune note
Catégorie :Graphique Classé sous :indy, internet, image, telecharger Niveau :Débutant Date de création :17/10/2007 Date de mise à jour :17/10/2007 23:09:06 Vu :7 930

Auteur : Mokost

Ecrire un message privé
Site perso
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

Cela fait un moment que je n'ai pas apporté ma petite contribution a codes sources. J'en profites donc
pour poster cette source en esperant qu'elle sera utile.
Cette source permet de télécharger des images en mémoire a partir d'une url, grace au composant indy.
Deux format sont supportés le bmp et le jpeg. Si vous avez des classes d'autre format d'image
supportant une methode 'LoadFromStream()' alors vous pourrez aisement les ajouter.

Source

  • function Img(URL:string):TBitmap;
  • var
  • PicMem: TMemoryStream;
  • jpg: TJpegimage;
  • ext:string;
  • BmpResult:TBitmap;
  • begin
  • //on cree le tampon mémoire.
  • PicMem := TMemoryStream.Create;
  • //on creer notre 'resultat'
  • BmpResult:=TBitmap.Create;
  • //On charge en mémoire l'image téléchargée depuis Url
  • //grace à notre composant indy TIdHTTP;
  • IdHTTP1.Get(URL,PicMem);
  • //On revient au début du tampon pour la lecture.
  • PicMem.Position :=0;
  • ext:=LowerCase(ExtractFileExt(url));
  • if(ext='.bmp') then begin
  • //Si c'est un bitmap qu'on attend, on l'assigne directement a notre objet TBitmap
  • BmpResult.LoadFromStream(PicMem);
  • end else if(ext='.jpg')or(ext='.jpeg') then begin
  • (* si c'est un jpeg on passe par une classe qui gere ce format *
  • contenu dans l'unite jpeg fournit en standar avec delphi 7.
  • [...]
  • uses jpeg;
  • [...]
  • *)
  • jpg := TJpegimage.Create;
  • jpg.LoadFromStream(PicMem);
  • //puis on l'assigne a notre objet TBitmap
  • BmpResult.assign(jpg);
  • end;
  • //on l'affecte au resultat.
  • result:=BmpResult;
  • //et on libere les objets.
  • PicMem.Free;
  • BmpResult.Free;
  • jpg.Free;
  • end;
  • [...]
  • begin
  • image1.Picture.Assign(img('http://www.movie-poster.ws/movies/wallpaper/cartoon/shrek/shrek_cat.jpg'));
  • image2.Picture.Assign(img('http://www.icicom.up.pt/blog/take2/panda.bmp'));
  • end;
  • [...]
function Img(URL:string):TBitmap;
var
 PicMem: TMemoryStream;
 jpg: TJpegimage;
 ext:string;
 BmpResult:TBitmap;
begin
//on cree le tampon mémoire.
        PicMem := TMemoryStream.Create;
        //on creer notre 'resultat'
        BmpResult:=TBitmap.Create;
        //On charge en mémoire l'image téléchargée depuis Url
        //grace à notre composant indy TIdHTTP;
        IdHTTP1.Get(URL,PicMem);
        //On revient au début du tampon pour la lecture.
        PicMem.Position :=0;
        ext:=LowerCase(ExtractFileExt(url));
        if(ext='.bmp') then begin
          //Si c'est un bitmap qu'on attend, on l'assigne directement a notre objet TBitmap
          BmpResult.LoadFromStream(PicMem);
        end else if(ext='.jpg')or(ext='.jpeg') then begin
          (* si c'est un jpeg on passe par une classe qui gere ce format *
          contenu dans l'unite jpeg fournit en standar avec delphi 7.
          [...]
            uses jpeg;
          [...]
          *)
          jpg := TJpegimage.Create;
          jpg.LoadFromStream(PicMem);
          //puis on l'assigne a notre objet TBitmap
          BmpResult.assign(jpg);
        end;
//on l'affecte au resultat.
   result:=BmpResult;
//et on libere les objets.
   PicMem.Free;
   BmpResult.Free;
   jpg.Free;
end;

[...]
begin
image1.Picture.Assign(img('http://www.movie-poster.ws/movies/wallpaper/cartoon/shrek/shrek_cat.jpg'));
image2.Picture.Assign(img('http://www.icicom.up.pt/blog/take2/panda.bmp'));
end;
[...]

 Conclusion

Une fonction qui pourrait etre utile, enfin je pense.


 Historique

17 octobre 2007 23:09:06 :
correction des fautes d'othographes.

 Sources du même auteur

Source avec Zip LECTURE DE LA MEMOIRE D'UN AUTRE PROCESSUS
Source avec Zip Source avec une capture GESTION BDD CHEZ UN HEBERGEUR INTERNET QUI NE VOUS NE PERMET...
Source avec Zip AJOUTER UN SCRIPTING SIMPLE CLAIRE ET EFFICACE A VOTRE APPLI...
Source avec Zip Source avec une capture RPG EN DELPHI
Source avec Zip Source avec une capture MARIO BROS

 Sources de la même categorie

Source avec Zip Source avec une capture COMPARATIF ALGO CERCLES par barbichette
Source avec Zip Source avec une capture RAYTRACING EN DELPHI (PROGRESSIVE PATH TRACING) par Bacterius
Source avec Zip Source avec une capture TEXTE SUR COURBE DE BEZIER par pseudo3
Source avec Zip Source avec une capture YEUXROUGES par pseudo3
Source avec Zip Source avec une capture FIREMONKEY : PATHDATA ET FORMAT SVG par Christophe67

 Sources en rapport avec celle ci

Source avec Zip GET IP AVEC INDY par Gerard
Source avec Zip Source avec une capture LOGICIEL INTERRUPTEUR MONDIAL USB par ced55957
Source avec Zip Source avec une capture WEBCAM+ MICROSERVEUR HTTP = WEBCAM IP (INDY 9 ET INDY 10) par jlen100
Source avec Zip Source avec une capture TÉLÉCHARGEMENT DE MISES À JOUR AVEC INDY par Matt 261
Source avec Zip Source avec une capture TESTE LA CONNEXION INTERNET ET DIT QUOI FAIRE par ekinoxjp

Commentaires et avis

Commentaire de japee le 18/10/2007 00:21:23 administrateur CS

Salut Mokost.

Houlalalala... Sans aller plus loin, tu libères un TJpegImage sans être certain de l'avoir créé.

De même il faut impérativement utiliser des blocs try...finally pour être sûr de libérer les objets créés.

Pas très fignolé tout ça...

A revoir !

Commentaire de japee le 18/10/2007 00:26:57 administrateur CS

Et aussi, pour que ta fonction soit aisément réutilisable, il te faudrait créer le TidHTTP et le libérer à l'intérieur de la fonction.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Ouvrir une image dans IExplorer [ par ryadus ] Bonjour, je voudrais savoir comment pourrais je ouvrir une image stocker dans le fichier ressource(.res) à l'aide d'internet explorer; ex: à l'ouvertu IdHTTPServer depuis internet [ par ytillang30400 ] Indy 9 :Je place un composant IdHttpServer et dans l'évènement OnCommandGet, j'entre par exemple le code : AResponseInfo.ContentText := Enregistrement d'une image depuis internet. [ par Eithne ] Bonjour ! Je développe actuellement une application qui récupère des images à partir d'internet grâce à la fonction UrlDownloadToFile(nil, PChar (sou internet radio [ par maresther ] Bonjour a tous, je suis nouvelle sur ce forum et j'espère vraiment arriver a y trouver un peu d'aide. Je travail actuellement sur un projet qui porte Image gif [ par jobertie ] Comment insérer une image gif dans une application ? Télésurveillance [ par manoubiali ] svp j'ai besoin d'une application en delphi7 qui capte une image à l'aide d'un webcam et comparer avec une autre image déja enregistrer Télésurveillance [ par manoubiali ] svp j'ai besoin d'une application en delphi7 qui capte une image à l'aide d'un webcam et comparer avec une autre image déja enregistrer Utilisation des flèches de navigation [ par saknight ] Voila en fait je voudrai que quand je reste appuyer sur la flèche du haut par exemple ça affiche telle ou telle image et quand je lache la flèche on e Image to matrice [ par manoubiali ] Bonjour, je cherche une fonction plus pratique qui couverture d'une image to matrice. et merci d'avance . [^^happy10] Télésurveillance [ par manoubiali ] Bonjour, svp j'ai besoin d'une application en delphi7 qui capte une image à l'aide d'un webcam et comparer avec une autre image déjà enregistrer. e


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,201 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales