none
sauvegarde d'une image sans changement de couleur. RRS feed

  • Discussion générale

  • Salut Tout le Monde,

    je travail actuellement sur un projet de simulation, dans cette projet je donne la possibilité a l'expert (un des type d'utilisateur) de dessinée luis même une simulation (une sorte de topographie) avec un type d’échelle redéfinie ( dans la base de données) les couleurs et les valeurs puis je doit sauvegardé cette simulation( sous forme photo) dans la base de données pour être utiliser ultérieurement.

    pour l'instant j'ai une forme avec une partie pour le chois de l'échelle, le chois de la couleur, la taille du pinceau. (tout sa fonctionne a merveille)
    une PictureBox sur la quelle je dessine, la PictureBox a un fond vide ou bien avec une image de référence pour aidé l'utilisateur dans la phase de dessin.

    le problème ce produit lorsque je veux sauvegardé ce que je vient de dessiner, j'utilise le code suivant:
    Code C# :

    bmpsave.Save(Environment.CurrentDirectory + @"\Images\" + NomPatient
     + "_" + dat + ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
    




    l'image est bien crée puis je la sauvegarde dans la base.

    mais les couleur de l'image résultat ne sont pas tous conforme avec les couleurs de l'échelle que j'ai utilisé ( exemple couleur de l'échelle : (0,153,102) couleur sur l'image (1,153,102)) cette petite variation qui se produit me fausse tout le calcul qui vient après cette étape.
    j'ai essayé avec d'autre format d'image (bmp, gif, jpeg, tiff) j'ai essayé avec certain type d'image de joué sur l'encodage
    Code C# :
    myEncoderParameter = new EncoderParameter(myEncoder, 100L);
    myEncoderParameters.Param[0] = myEncoderParameter;
    bmpsave.Save(@"D:\TestPhotoQualityHundred.jpg", jgpEncoder, myEncoderParameters)
    





    ou bien avec :
    Code C# :

    EncoderParameter myEncoderParameter = new 
    EncoderParameter(System.Drawing.Imaging.Encoder.Compression, 
    (long)System.Drawing.Imaging.EncoderValue.CompressionNone);
    EncoderParameter myEncoderParameterQ = new EncoderParameter(myEncoder, 100L);//(myEncoder, 100L);
    EncoderParameter myEncoderParameterV = new 
    EncoderParameter(System.Drawing.Imaging.Encoder.Version, 
    (long)System.Drawing.Imaging.EncoderValue.VersionGif89);
    





    mais j'ai toujours le même problème ( avec plus au moins une meilleur qualité de l'image selon le type et le options de l'image).

    est ce que quelqu'un connait une façon pour crée cette image a partir de ce que je dessine sur la PictureBox sans que les couleurs ne subissent une dégradation ou une modifications.

    Merci.
    mardi 14 août 2012 14:07

Toutes les réponses

  • Bonjour,

    Cela dit quoi si vous mettez par exemple le pixel 0,0 "en dur" à cette couleur et que vous recharger le bitmap ? Est-ce que votre couleur originale est bien celle que vous pensez ?

    Le passage de 0 à 1 me parait bizarre. Eventuellement voir aussi la valeur retournée par bmpsave.PixelFormat pour vérifier quel est le format de cette image...


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    mardi 14 août 2012 20:57
    Modérateur