Bonjour à tous, ma question est simple j'aimerais pouvoir créer une image simple, exemple un rectangle rouge... tout cela en C, voir C++ si besoin, malheureusement je ne sais pas comment m'y prendre... Avez-vous une idée ? Merci d'avance .
Bonjour à tous, ma question est simple j'aimerais pouvoir créer une image simple, exemple un rectangle rouge... tout cela en C, voir C++ si besoin, malheureusement je ne sais pas comment m'y prendre... Avez-vous une idée ? Merci d'avance .
Bonjour,
Ça va dépendre essentiellement du système d'exploitation que tu utilises et de l'environnement graphique à ta disposition, mais le plus simple pour commencer est de te renseigner sur la SDL. Tu peux regarder ici ou ici.
Ça peut avoir l'air compliqué de prime abord mais il faut savoir que le langage C en lui-même ne propose pas de primitives graphiques standard car il n'est attaché à aucune plate-forme en particulier. C'est un langage conçu pour écrire facilement du code qui, une fois compilé, se rapproche au plus près de ce que l'on aurait pu faire en assembleur et qui, à ce titre, est adapté à presque toutes les architectures, y compris celles qui n'ont aucune interface utilisateur comme les micro-contrôleurs.
Par conséquent, il faut donc choisir une bibliothèque pour le faire à ta place et assimiler son API. Le choix de la meilleure bibliothèque dépend bien sûr de l'environnement dans lequel tu voudras faire fonctionner ton programme.
Bonjour,
Sinon si tu ne désires que créer une image sans obligatoirement vouloir l'afficher avec ton programme il te reste la solution du format SVG. Les images SVG sont des fichiers au format XML relativement simples. Par exemple créer une image de 200x200 avec un rectangle rouge de 100x100 au milieu est réalisé par :
Si ce format et cette solution te conviennent, il te suffirait donc d'apprendre les primitives SVG, et de créer un fichier texte en C.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="200" height="200"> <rect x="50" y="50" width="100" height="100" fill="rgb(255, 0, 0)" /> </svg>
Merci de vos réponses je vais me renseigner pour le SDL et le XML je vous tiendrai au courant.
Connaissez-vous des tutos pour installer SDL avec Visual C++ ? Et comment créer une image BMP et l'enregistrer ? SDL me semble très vaste pour créer une simple image...
En fait, tu as trois possibilités.
- Tu va lire la spécification du format que tu veux écrire, et ton programme ouvre un fichier, écrit des 0 et des 1 dedans, et bingo.
- Tu installes une petite bibliothèque dédiée au format cible (libpng, libjpeg...) et tu écrits des triplets RGB pour chaque point de l'image.
- Tu installes une bibliothèque de plus haut niveau, capable de dessiner un rectangle, par exemple. C'est le cas de la SDL.
Dans ce troisième cas, il "suffit" de télécharger la version de développement de la bibliothèque (pour avoir les en-têtes), la mettre quelque part.
Puis de régler ton EDI pour lui dire de pointer dessus lorsque tu compiles.
En principe, il y a un chemin d'include et un chemin de liaison à régler
Mes principes de bases du codeur qui veut pouvoir dormir:Pour faire des graphes, essayez yEd.
- Une variable de moins est une source d'erreur en moins.
- Un pointeur de moins est une montagne d'erreurs en moins.
- Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
- jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
- La plus sotte des questions est celle qu'on ne pose pas.
le ter nel est le titre porté par un de mes personnages de jeu de rôle
Dans ce cas, tu devrais trouver ton bonheur avec la GDLib :
http://www.boutell.com/gd/
http://libgd.github.io/
Pour faire encore plus cours : https://code.google.com/p/libbmp/
Utilisation de Glade avec Gtk+
Code::Blocks et Gtk+ sous Windows
Programmation orientée objet avec Gtk+ v3
- N'oubliez pas de consulter les FAQ Gtk et les cours et tutoriels Gtk
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager