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

Windows Forms Discussion :

[C#][VSN2003] Image dans une RichTextBox


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Points : 80
    Points
    80
    Par défaut [C#][VSN2003] Image dans une RichTextBox
    Bonjour,

    je voudrais savoir s'il est possible de définir une image en fond d'une RichTextBox.
    Suite à mes recherches, je n'ai trouvé que la façon dont on insére une image (en copiant puis collant depuis le presse-papier) sauf que je ne cherche pas à insérer, mais de définir une BackGroundImage (comme on le ferait pour un panel).

    Merci.

  2. #2
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Apparement, l'image de fond est une fonctionnalite supportee par le standard RTF (j'ai verifie avec OpenOffice)

    Je pense que tu devrais proceder ainsi:
    - Cree un doc RTF avec ton traitement de texte
    - Sauve le document
    - Edite le avec un editeur de texte pour afficher le code RTF
    - Analyse le code RTF pour trouver comment diable une image peut se retrouver sur le fond
    - Dans le code de ton appli, tu appliquera les adaptations necessaires au code RTF produit (propriete RichTextBox.Rtf) grace au code C#

    L'image de fond sera dans le document

  3. #3
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Points : 80
    Points
    80
    Par défaut
    Merci, je vais tester ça et donnerai ce que j'obtiens.
    Merci.

  4. #4
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Points : 80
    Points
    80
    Par défaut
    Mon document RTF a été crée via mon éditeur et modifié (ajout d'une image de fond) via Microsoft Word.
    Quand tu dis "Edite le avec un editeur de texte pour afficher le code RTF", tu pourrais m'expliquer comment faire s'il te plait ?

    Avec ce tuto : http://jab.developpez.com/tutoriels/dotnet/word/
    J'ai essayé de me connecter à mon document rtf afin de voir comment a été défini l'image de fond, mais avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    // connexion à Word
    Microsoft.Office.Interop.Word.Application msWord = new Microsoft.Office.Interop.Word.Application();
    msWord.Visible = false; // mettez cette variable à true si vous souhaitez visualiser les opérations.
    object missing = System.Reflection.Missing.Value;
     
    // Fermeture de word
    msWord.Quit(ref missing, ref missing, ref missing);
    mais ça me dit que Microsoft.Office.Interop n'existe pas :\
    Je n'ai peut-être pas une version assez récente de Word (j'ai pu uniquement charger la référence Microsoft Word 10.0 Object Library).

    Existe t-il un meilleur moyen de récupérer le code afin de voir comment a été ajouté l'image ?

    Merci.

  5. #5
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Pour editer le code RTF c'est simple:

    Tu fais dans l'explorateur de fichiers windws un click droit / ouvrir avec / notepad

    Tu vois ainsi le document RTF en "brut", il faut analyser un document RTF vierge et un document RTF avec image de fond pour comprendre la difference et ajouter cette difference par le code (par la propriete RichTextBox.Rtf)

    Pour le code de connection a Word, ca marche avec la V10 mais tu n'as pas besoin de word dans le code, tu en as juste besoin pour editer des documents RTF comme dit precedement

  6. #6
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Points : 80
    Points
    80
    Par défaut
    En ouvrant les .doc avec notepad, j'obtiens un contenu plutôt bizarre.
    Voici un petit extrait.
    ð$ ºv`ýÄkW¶€”Ü1JÝö˜ÿ –  4 @ ñ ÿÿ ÿ €€€ ÷   ðÀ  ð
    Que ce soit pour un document vide ou contenant une image de fond, c'est dans ce style là.
    Je distingue la différence pour les 2 documents que j'obtiens, mais je ne saurais l'analyser ni en tirer quoi que ce soit, sous cette forme là en tout cas :\
    J'aurais oublié une étape ou mal fait l'une d'elles ?

  7. #7
    Membre chevronné
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Points : 1 904
    Points
    1 904
    Par défaut
    Faut l'enregistrer sous format RTF et non pas Doc

  8. #8
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Points : 80
    Points
    80
    Par défaut
    Ah bah oui...

    Merci, je viens de tester ça fonctionne.
    Je n'ai plus qu'à déchiffrer tout le code en plus et je pense que ce sera bon.
    Je mettrai ce que j'aurai trouvé ici, dans ce topic.

    Merci encore.

Discussions similaires

  1. insérer image dans une richtextbox
    Par Invité dans le forum VB.NET
    Réponses: 10
    Dernier message: 20/09/2010, 19h03
  2. intégrer un fichier image dans une base de donnée?
    Par Lody dans le forum Requêtes
    Réponses: 9
    Dernier message: 16/03/2006, 19h08
  3. Peut on mettre une image dans une BD MySQL ?
    Par maddog2032 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 25/07/2003, 16h18
  4. [VB6] [Excel] Insérer une image dans une feuille
    Par mathias dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 09/10/2002, 07h44

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