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

VB 6 et antérieur Discussion :

Impression - stretcher l'image & mettre une couleur de fond à un rectangle


Sujet :

VB 6 et antérieur

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 5
    Points : 8
    Points
    8
    Par défaut Impression - stretcher l'image & mettre une couleur de fond à un rectangle
    Bonjour,

    -- probleme 1 --

    Je voudrais faire imprimer une image de 1000 twips de largeur et 1000 twips de longueur avec stretch = true.
    J'ai reussi à faire imprimer l'image mais elle n'est pas stretché/déformée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set MonImage = LoadPicture(cheminImage)
    Printer.PaintPicture MonImage, 0, 0, 100, 100

    -- probleme 2 --
    J'ai réussi à dessiner un rectangle mais je n'arrive pas à remplir son fond avec une couleur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Printer.BackColor = vbGreen
    Printer.Line (0, 0)-(varWidth, varHeight), vbBlack, B
    Merci d'avance

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Points : 2 416
    Points
    2 416
    Par défaut
    bonjour,
    A ta 1er question je ne comprend pas bien ce que tu veux faire
    La 2ém,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Printer.ForeColor= vbGreen
    Printer.Line (0, 0)-(varWidth, varHeight), vbBlack, BF
    Je réflechit au 1
    A+
    EDIT:

    pour la Question 1 essaie..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim MemScaleMode As Integer
        MemScaleMode = Printer.ScaleMode
        Set MonImage = LoadPicture(cheminImage)
        MonImage.height=1000: MonImage.Width=1000
        Printer.ScaleMode = 1
        Printer.CurrentX = 0
        Printer.CurrentY = 0
        Printer.Print MonImage
        Printer.EndDoc
        Printer.ScaleMode = MemScaleMode
    Si tu à bien employer une Image et pas une PictureBox

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Bonjour,

    Question 1 : Tu ne nous parles pas du ScaleMode de ton objet printer ...
    Question 2 : pas de propriété BackColor pour un objet Printer

    EDIT : on ne voit par contre pas comment tu utilises la propriété FillColor et la propriété FillStyle .... (or tu dis vouloir remplir ton rectangle)

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Points : 2 416
    Points
    2 416
    Par défaut
    bonjour ucfoutu,
    Avec la propriété Forecolor définie et le flag BF, rempli le rectangle avec la valeur de ForeColor. La valeur FillStyle est à solid par défaut.
    Cordialement

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Voilà la manière orthodoxe
    Un objet Prtinter se comporte comme une pictureBox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Command1_Click()
      Me.ScaleMode = 3
       Picture1.Move 0, 0, Me.ScaleWidth / 2, Me.ScaleHeight / 2
       With Picture1
         .FillColor = vbGreen
         .FillStyle = 0
         .ScaleMode = 3
         .DrawStyle = 0
         .DrawWidth = 4
       End With
       Picture1.Line (0, 0)-(Picture1.Width / 2, Picture1.Height / 2), vbRed, B
    End Sub
    Bonne continuation...

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 5
    Points : 8
    Points
    8
    Par défaut
    Mon probleme 1 est resolu.
    J'ai fait des erreurs dans mon code avec mes variables et mes boucles.
    Ca faisait que mon image ne se deformait pas.

    Pour le probleme 2, LeForestier tu m'as induit en erreur
    j'ai teste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Printer.ForeColor= vbGreen
    Printer.Line (0, 0)-(varWidth, varHeight), vbBlack, BF
    Ca me donne un rectangle noir avec bordure noir. Apparemment apres longue recherche sur google et regardais les sites anglo-saxon, si tu indiques le F, le fond et la bordure seront de meme couleur.
    La propriete .forecolor est utilisee pour la couleur du texte. Ce serait plutot .fillcolor
    tu avais raison pour .fillstyle = solid


    Merci beaucoup d'avoir pris du temps pour m'aider.

  7. #7
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Et si tu essayais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Printer.Line (0, 0)-(varWidth, varHeight), vbBlack, BF
    Printer.Line (0, 0)-(varWidth, varHeight), vbGreen, B
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Mettre une couleur de fond [C#]
    Par Rosees dans le forum C#
    Réponses: 7
    Dernier message: 30/10/2013, 21h08
  2. [WD12] Mettre une couleur de fond dans un champ d'un etat
    Par galsen.quebec dans le forum WinDev
    Réponses: 2
    Dernier message: 01/06/2011, 15h08
  3. Mettre une couleur de fond à des dates.
    Par csilas dans le forum C#
    Réponses: 2
    Dernier message: 04/04/2010, 13h49
  4. Mettre une couleur de fond à une zone de saisie.
    Par supertoms dans le forum IHM
    Réponses: 1
    Dernier message: 19/04/2008, 18h40
  5. Je n'arrives pas a mettre une couleur de fond
    Par metalcoyote dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 03/05/2007, 17h42

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