Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: Stocker et utiliser une image depuis une std::string  (Lu 2556 fois)

0 Membres et 1 Invité sur ce sujet

Cmdu76

  • Full Member
  • ***
  • Messages: 194
    • Voir le profil
Stocker et utiliser une image depuis une std::string
« le: Octobre 16, 2013, 11:24:35 pm »
Bonjour,

Je suis en train de travailler sur un programme et j'aimerais le distribuer.

Ducoup j'aimerais donner juste le .exe sans filer des documents et fichiers (images/sons/...)

J'aimerais savoir s'il est possible de créer un fichier .cpp à part qui me retourne une std::string contenant le code d'une image (quand on fait clic-droit, ouvrir avec notepad++ ou autres logiciels du même type) et de charger cette string en tant que Texture avec loadFromStream ou un truc du genre...

Voilà, j'aimerais savoir si c'est faisable et surtout si ça a déjà été fait :)

Threonine

  • Newbie
  • *
  • Messages: 5
    • Voir le profil
Re : Stocker et utiliser une image depuis une std::string
« Réponse #1 le: Octobre 16, 2013, 11:50:35 pm »
Je ne maîtrise pas ce sujet, mais cette discussion pourra peut être te donner un début de réponse.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : Stocker et utiliser une image depuis une std::string
« Réponse #2 le: Octobre 17, 2013, 08:04:59 am »
Première chose, cacher les ressources est bien souvent inutile et une perte de temps. Pourquoi veux-tu faire ça ?

Ensuite, c'est tout de même assez simple :
const char imageData[] = {/* le contenu de ton fichier sous forme d'une grosse liste d'octets */};

sf::Texture texture;
texture.loadFromMemory(imageData, sizeof(imageData));

Les utilitaires qui convertissent un fichier en un tableau de char C ne sont pas difficiles à trouver sur le net, ni même à écrire soi-même d'ailleurs.
Laurent Gomila - SFML developer

Cmdu76

  • Full Member
  • ***
  • Messages: 194
    • Voir le profil
Re : Stocker et utiliser une image depuis une std::string
« Réponse #3 le: Octobre 17, 2013, 10:10:05 pm »
C'est pas vraiment le fait de les cacher, mais plutôt pour permettre de ne donner qu'un seul .exe sans rien à côté.

En tout cas merci pour vos réponses :)

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : Stocker et utiliser une image depuis une std::string
« Réponse #4 le: Octobre 18, 2013, 08:02:38 am »
Quelle différence entre un seul exe et une seule archive ? De nos jours les gens sont assez malins pour décompresser un zip non ? :P

Bon je t'embête un peu, mais ce genre de considération revient toujours, et à chaque fois on se rend compte que les développeurs se cassent la tête pour pas grand chose.
Laurent Gomila - SFML developer

zedex

  • Newbie
  • *
  • Messages: 27
    • Voir le profil
Re : Stocker et utiliser une image depuis une std::string
« Réponse #5 le: Octobre 21, 2013, 09:34:07 pm »
Je suis un peu d'accord avec Cmdu76, on a beau tout mettre dans une archive, avoir à la racine que le "fichier.exe" et le dossier "ressources", certaines personnes vont toujours dans le dossier en premier lieu et demandent "je clique sur quoi maintenant ?"  ::)

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : Stocker et utiliser une image depuis une std::string
« Réponse #6 le: Octobre 21, 2013, 09:57:59 pm »
Mouais, faut pas exagérer... les gens sont cons mais pas à ce point.
Laurent Gomila - SFML developer