begin process at 2010 03 21 23:39:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Mutimédia

 > 

Image & Vidéo

 > 

Format Png


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Format Png

vendredi 5 octobre 2007 à 09:03:23 | Format Png

cincap

Bonjour à toutes et à tous,

J'aimerai pouvoir charger une image en Png, mon code permet de charger un Jpg et Bmp mais par contre pour un Png, l'image reste vide.

J'utilise la librairie et la sauvegarde se fait bien pour les 3 formats.

Voici mon code :

procedure TMainForm.BchargerClick(Sender: TObject);
var 

    JPG : TJPegImage;
    BMP : TBitmap;
    Ext : string;
    BMPLoaded : boolean;
    NewH, NewW, OldSBM : integer;

begin
 
{ initialisation }
  BMPLoaded := false;

  { ouverture d'une image }
  if Opd1.Execute

then
  begin

    { recuperation de l'extention }
    Ext := LowerCase(ExtractFileExt(Opd1.FileName));

    { creation du bitmap temporaire }
    BMP := TBitmap.Create;

    try
      { si c'est un jpeg }
      if (ext = '.jpg') or (ext ='.jpeg')
 
then
      begin

        { creation d'une image jpeg }
        JPG := TJPegImage.Create;

        try

          { charge a partir du fichier }
          JPG.LoadFromFile(OpD1.FileName);
          { convertion JPG > BMP }
          JPEGToBMP(JPG,BMP);
          { BMP est prét }
          BMPLoaded := true;

        finally

          { liberation de JPG }
          JPG.Free;

        end;
      end
      else

      { si c'est un bitmap }
      if ext = '.bmp' then

      begin

        { charge a partir du fichier }
        BMP.LoadFromFile(OpD1.FileName);
        { BMP est prét }
        BMPLoaded := true;

      end;
Reste du code....

D'après mes notes, je pensais que le Timage acceptait le format Png sans code.

Merci,

Cincap

mailto:

vendredi 5 octobre 2007 à 11:01:55 | Re : Format Png

cirec

Membre Club Administrateur CodeS-SourceS
Salut,

pour pouvoir utiliser le format PNG avec Delphi
il faut utiliser soit :
une librairie type "PNGLib"
ou le "GDIPlus de progdigy"
 
@+
Cirec

vendredi 5 octobre 2007 à 11:14:30 | Re : Format Png

cincap

Bonjour Cirec, en effet je le précise dans mon topic, j'utilise la librairie PngLib.

uses Jpeg {$IFDEF PNGLIB1},PNGImage{$ELSE}{$IFDEF PNGLIB2},zPNG{$ENDIF}{$ENDIF};

Pour la sauvegarde, cela fonctionne pour les 3 formats mais au chargement d'un fichier au format *.Png, mon Timage reste vide.

J'oublie certainement une instruction dans mon code.

@+,

Cincap

mailto:
vendredi 5 octobre 2007 à 13:11:24 | Re : Format Png

cincap

Réponse acceptée !
Voila, c'est ok pour moi, j'ai vu l'erreur dans le code, je devais aussi créer un

TPNGObject.Create;

Je cloture le topic, merci à tous.

@+,

Cincap
mailto:
lundi 8 octobre 2007 à 10:33:37 | Re : Format Png

CptPingu

Je te conseille vivement l'utilisation de la bibliothèque GraphicEx qui permet au Timage de charger quasiment tout type d'image sans avoir à modifier le code source.

Présent sur ce site:
http://www.soft-gems.net/index.php?option=com_content&task=view&id=13&Itemid=33

Le zip est ici:
http://www.soft-gems.net/supplement/download.php?ID=13

lundi 8 octobre 2007 à 10:59:37 | Re : Format Png

cincap

Bonjour à toutes et à tous,

@ Cptpingu, merci pour l'info, je l'avais déjà installée pour D6 et j'avais essayé avec une fiche un Tbouton, un Timage, un Topendialog et à l'exécution, je ne savais pas choisir un fichier *.png alors qu'il était repris dans la propriété filter.

Donc forcément il manquait quelque chose sur ma fiche ?

Sinon je viens d'essayer les 2 exemples.

@+,

Cincap

mailto:
lundi 8 octobre 2007 à 11:19:17 | Re : Format Png

CptPingu

Je ne vois pas ou est le probleme. Si tu charges un fichier png dans un TImage avec GraphicEx, cela fonctionne.
Dans ton opendialog, essaie de mettre "*", ca devrait te permettre de tester.
lundi 8 octobre 2007 à 11:59:50 | Re : Format Png

cincap

oui tu as raison, je ne référenciai pas "GraphicEx" dans l'uses.

Merci à toi.

@+,

Cincap 

mailto:


Cette discussion est classée dans : image, jpg, bmp, png, ext


Répondre à ce message

Sujets en rapport avec ce message

Redimensionner une image [ par etrix ] Lut tout le monde ?ca va bien ?Alors voilà moi j'ai un ptit problème qui m'embête beaucoup :/ c'est pour cela que je fais appel à votre aide !J'ai déj ecrire sur une image [ par manu00 ] Bonjour,je suis en train de dev un petit soft d'edition d'image pour m'amuser et je voudrais juste faire cela:-Ouvrir un BMP ou un JPG (ca j'y arrive) BMP -> JPG - Image jpeg toute verte [ par Filipe35 ] Bonjour à tous,je souhaiterais convertir des bmp en jpgj'ai testé les 2 codes suivantsimg := Timage.Create(self);img.Picture.LoadFromFile(''bob.bmp);i redimensionner une image jpg ou bmp [ par ced55957 ] bonsoirje voudrais redimensionner une image jpg ou bmp. en important deja l'image avec opendialogpicture puis pour le redimensionnement je voudrais qu Message de sauvegarde [ par cincap ] Bonjour à tous,Est t'il possible de mettre un message d'avertissement au cas ou le fichier bmp ou jpg existerait avant de sauvegarder le nouveau fichi Utiliser un TopenPictureDialog [ par cincap ] Bonjour,Je cale sur une application qui charge des images au format Bmp en créant une liste avec un Tcombobox, avant de pouvoir appliquer un effet, se Dessins [ par seba31stien ] Bonjour, mon appli propose à l'utilisateur de positionner des images (genre triangle) sur une carte (image bmp ou jpg). Certains de ces triangles ser Comment puis je souvegarder mon Image en TIF, PNG, GIF, ... ? [ par Taktaky ] Salutpour le moment j'utilise GraphicEx, mais cett Component est bien seulement pour ouvrir (read only)y a il un autre Composent gratuite pour sauvega Modification d'image PNG [ par Pipire17 ] Bonjour! Ayant installé pnglib je voulait l'essayer dans un éditeur d'image... J'arrive à l'ouvrir, mais pas a la modifier. Pouvez-vous m'aider svp? M Form en alpha avec PNG [ par JulioDelphi ] hello je cherche a faire une form avec canal alpha avec une image .png avec un morceau de code d'une splashform j'ai obtenu quelquechose de proche mai


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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 : 0,577 sec (3)

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