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

C Discussion :

afficher Image sans bibliotheque


Sujet :

C

  1. #1
    Membre éclairé Avatar de amadoulamine1
    Inscrit en
    Avril 2005
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 260
    Par défaut afficher Image sans bibliotheque
    Salut a tous j'aimerai afficher une image en c sans pour autant utiliser les bibliotheques c'est a dire le faire avec des interruptions de C
    est ce que quelqu'un pourrai m'aider

  2. #2
    Membre émérite Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Par défaut
    Citation Envoyé par amadoulamine1
    [...] c'est a dire le faire avec des interruptions de C
    [...]
    Qu'entends tu par là ?
    Tu pourrais nous expliquer STP. Je suis sûr que je ne suis pas le seul à ne pas avoir compris...

  3. #3
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Pour afficher une image il faut déjà pouvoir lire un format d'image et pour ca il te faut connaître dans les détails les spécifications du format à utiliser, c'est pas toujours simple.

    De plus le Langage C ne permet pas d'affichage graphique dans sa forme standard (ANSI / ISO), il te faut recourrir à une bibliothèque tierce pour pouvoir effectuer un affichage !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par amadoulamine1
    Salut a tous j'aimerai afficher une image en c sans pour autant utiliser les bibliotheques c'est a dire le faire avec des interruptions de C
    est ce que quelqu'un pourrai m'aider
    Pas possible sur un système évolué. Le temps de la bidouille est terminé.

  5. #5
    Membre confirmé Avatar de amine6441
    Inscrit en
    Novembre 2006
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 85
    Par défaut
    vous afficher l'image mais en appelant une seule biblioteque de graphics
    puis vous allez dessigner la matrice vous pouvez essayez cette exemple



    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
    #include<stdio.h>
    #include<conio.h>
    #include<graphics.h>
    void dessiner(int M[10][10],int nl,int nc){
    	for(int l=0;l<nl;l++){
    		for(int c=0;c<nc;c++){
    			putpixel(200+c,200+l,M[l][c]);
    		}
    	}
     
    }
    void main(){
    	int pg=0,mg;
    	initgraph(&pg,&mg,"c:\\tc\\bgi");
    	int M[10][10]={{15,15,15,15,15,15,15,15,15,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,0,0,0,0,0,0,0,0,15},
    		       {15,15,15,15,15,15,15,15,15,15}};
    	//line(0,0,100,100);
    	 dessiner (M,10,10);
    	getch();
    }
    et merci chere mon ami

  6. #6
    Membre éclairé Avatar de amadoulamine1
    Inscrit en
    Avril 2005
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 260
    Par défaut
    d'accord je vais tester pour voir

  7. #7
    Membre éclairé Avatar de amadoulamine1
    Inscrit en
    Avril 2005
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 260
    Par défaut
    C'est pas exactement cela
    en fait j'ai entendu parler d'un procede qui consisterait a stocker l'image en question dans une matrice avant de l'afficher
    Est-ce que quelqu'un pourrait m'eclairer sur ce point
    En fait quand je parlais de ne pas utiliser de bibliotheque je parlais surtout des sdl et autres ajouts et non des bibliotheques standard

  8. #8
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par amadoulamine1
    C'est pas exactement cela
    en fait j'ai entendu parler d'un procede qui consisterait a stocker l'image en question dans une matrice avant de l'afficher
    Est-ce que quelqu'un pourrait m'eclairer sur ce point
    En fait quand je parlais de ne pas utiliser de bibliotheque je parlais surtout des sdl et autres ajouts et non des bibliotheques standard
    Tu peux stocker ce que tu veux où tu veux, tant que tu n'as pas de fonction système putpixel() (ou équivallent), tu ne pourras rien mettre dans un écran graphique.

    Ce qu'il faut comprendre, c'est que le graphisme est un mode de fonctionnement de la carte écran dans lequel la mémoire vidéo associée est organisée en pixels au lieu de caractères (mode texte).

    Théoriquement, pour écrire dans l'écran graphique, il suffit d'avoir accès à cette mémoire vidéo. Certes, c'était possible sur un système rustique comme DOS, qui était d'une permissivité inimaginable de nos jours, mais avec les systèmes modernes comme Windows ou les unixoïdes, il n'est absolument plus question qu'une application aille jouer directement avec le matériel. C'est interdit matériellement par la MMU (Memory Management Unit) qui fait la police.

    On doit donc impérativement passer par une fonction système. Si tu indiques quel est ton système, on peut essayer de t'aider, encore que c'est relativement complexe...

  9. #9
    Membre éclairé Avatar de amadoulamine1
    Inscrit en
    Avril 2005
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 260
    Par défaut
    Ah oui d'accord
    j'ai win xp sp2
    avec
    Description du périphérique Intel(R) 82865G Graphics Controller
    Identification de la carte Intel(R) 82865G Graphics Controller
    Identification du BIOS Intel Video BIOS
    Type de circuit Intel(R) 82865G Graphics Controller
    Type de DAC Interne
    Pilotes installés ialmrnt5 (6.14.10.4396)
    Taille de la mémoire 96 Mo

  10. #10
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par amadoulamine1
    Ah oui d'accors
    j'ai une win xp sp2
    Le plus simple est probablement d'utiliser les fonctions de l'API Windows, ou éventuellement de Direct X.

    Détails sur le forum Développement Windows.

  11. #11
    Membre éclairé Avatar de amadoulamine1
    Inscrit en
    Avril 2005
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 260
    Par défaut
    Oui je sai que se seari plus simple mais quand meme je voudrai l'afficher sans les APi ou GDL seulement avec les bibliotheques standart du C
    Si vous pouviez m'expliquer juste le principe car je sai qu'il faut allouer une matrice de la taille de l'image et stocker les pixels dans la matrice mais maintenant mon probleme c'est comment stacker les pixels dans la matrice

  12. #12
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 393
    Par défaut
    Comme te l'a déjà dit Emmanuel, aucune possibilité sous un OS évolué : L'OS ne te donne pas accès aux pixels sans passer par SES fonctions (non-standard ET non-POSIX, cela va de soi).

    Par contre, tu peux jouer avec la carte si tu veux en mode réel (DOS 16 bits, etc.).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  13. #13
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par amadoulamine1
    Oui je sai que se seari plus simple mais quand meme je voudrai l'afficher sans les APi ou GDL seulement avec les bibliotheques standart du C
    En mode étendu, (win32, linux etc.) c'est pas possible. C'est si dur à comprendre ? Les fonctions systèmes sont faites pour ça.

    C'est pas possible d'être aussi bouché...

  14. #14
    Membre extrêmement actif

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Par défaut
    Surtout que dans la bibliothéque standard du C il n'y a rien pour afficher une image mais quand je dis rien c'est nada wélou nothing nichts nulla et même niets pour tout te dire

Discussions similaires

  1. [Image] Afficher image récupérée par FTP sans fichier temporaire
    Par grinder59 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 18/05/2006, 09h17
  2. Ouvrir une image sans l'afficher
    Par smarties dans le forum Langage
    Réponses: 5
    Dernier message: 07/05/2006, 00h46
  3. Réponses: 5
    Dernier message: 13/04/2006, 22h54
  4. Afficher une image sans URL dans un forum
    Par Vanesse dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 2
    Dernier message: 01/03/2006, 17h55
  5. Afficher une image sans passer par les textures
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/05/2003, 19h13

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