IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants VCL Delphi Discussion :

Lire image TIFF / D6


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Par défaut Lire image TIFF / D6
    Bonjour à tous,

    J'ai des images TIFF à afficher avec D6, pourriez vous m'indiquer une librairie ou un compo free pour ça

    Merci

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Par défaut
    Bonjour,

    Cela peut se faire avec GDI+

    Voici le IGDI+ de Mitov :

    http://www.mitov.com/products/igdi+#overview
    en bas de page on lit : "IGDI+ is now available on SourceForge : " https://sourceforge.net/projects/igdiplus/

    Il permet d'afficher les : BMP, GIF, JPG, PNG, TIFF, ICO, WMF, EMF.

    Voici un bout de code pour afficher :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    procedure TfrmGen.itemOuvrirClick(Sender: TObject);
    const Filtre = 'Tous fichiers image (*.bmp;*.dib;*.rle;*.gif;*.ico;*.jpg;*jpeg;*.jpe;*.jfif;*.png;*.tif;*.tiff;*.emf;*.wmf)|*.bmp;*.dib;*.rle;*.gif;*.ico;*.jpg;*jpeg;*.jpe;*.jfif;*.png;*.tif;*.tiff;*.emf;*.wmf)'
      + '|BMP, DIB, RLE : Bitmaps |*.bmp|GIF : CompuServe |*.gif|ICO : Icônes|*.ico|JPG, JPEG, JPE, JFIF : Fichier JPEG|*.jpg'
        + '|PNG : Portable Network Graphics|*.png|TIF, TIFF : Format Tiff|*.tif|EMF : Méta-Fichier EMF|*.emf|WMF : Méta-Fichier WMF|*.wmf';
    var
      gra: IGPGraphics;
      Image: IGPImage; img : tImage;
      wi, hi, wf, hf: integer;
    begin
      imageFond.Align := alNone; imageFond.Update; // ImageFond est un TImage placé dans une ScrollBox
      with OpenDialog1 do begin // OpenDialog1 pou éviter les problèmes causés par OpenPictureDialog
        filter := Filtre;
        if Execute then begin
          Image := TGPImage.Create(FileName);
          wi := Image.Width; hi := Image.Height;
          wf := imageFond.Width; hf := imageFond.Height;
          if wi > wf then begin imageFond.Width := wi; imageFond.Update; end;
          if hi > hf then begin imageFond.Height := hi; imageFond.Update; end;
     
          img := tImage.Create(self); //<- img : On est obligé de passer par l'intermédiaire d'un TImage taillé aux dimensions de l'image chargée sinon le DrawImage direct sur imageFond s'obstine à limiter le tracé aux dimensions initiales de conception de imageFond 
          img.Width:=wi; img.Height:=hi;
          gra := TGPGraphics.Create(img.Canvas);
          gra.DrawImage(Image, 0, 0, wi, hi);
          imageFond.Picture.Bitmap.Assign(img.Picture.Bitmap);
          imageFond.Repaint;
          img.Free;
          Caption := FileName + ' [' + IntToStr(wi) + 'x' + IntToStr(hi) + ']';
         end;
      end;
    end;
    Placer IGDIPlus.pas et IGDIPlusAPI.inc dans le dossier du projet.

    A+.
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  3. #3
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 086
    Par défaut
    A partir Win 2000 SP2, tu as ShImgVw.dll
    Selon la version, elle exporte des fonctions pour ouvrir des fichiers comme ImageView_Fullscreen, cela fourni aussi les interfaces IPreview

    Tu peux via RunDll32 lancer ShImgVw.dll via un ShellExecute
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. Lire Format *.tiff
    Par darkphenx dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 27/10/2006, 09h53
  2. Problème de traitement d'image tiff
    Par Galkir dans le forum C++Builder
    Réponses: 2
    Dernier message: 29/06/2006, 09h05
  3. Réponses: 2
    Dernier message: 06/02/2006, 09h12
  4. Lire une image Tiff en C/cpp avec Lib tiff
    Par syn_42 dans le forum MFC
    Réponses: 4
    Dernier message: 04/01/2006, 21h28
  5. Rotation d'une image TIFF
    Par Tub-95 dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 14/10/2005, 20h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo