1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

Réinitialisation impression

Discussion dans 'Résolution problème & conseils' créé par bsimon44, Nov 28, 2020.

  1. bsimon44

    bsimon44 New Member

    Inscrit:
    Avr 25, 2018
    Messages:
    5
    J'aime reçus:
    0
    Bonjour,
    J'utilise la fonction iImprimeZone afin de déterminer la police adéquate pour que mon texte tienne dans cette zone (en diminuant la police à chaque fois).

    Ma question (mon problème) est : comment annuler ces appels successifs à iImprimeZone ?
    En effet à l'appel de iFinImprime(), j'obtiens 2 pages :
    - la première contient les tests en surimpression
    - la deuxième contient le résultat souhaité

    Est-il possible de réinitialiser le buffer d'impression ? Je n'ai trouvé que des fonctions permettant de réinitialiser les paramètres d'impression.

    Voici le code utilisé :
    // Cherche la taille de police pour imprimer dans un rectangle

    nNbCarEcrits est un entier
    sMaChaine est une chaîne
    nTaillePolice est un entier = 12

    sMaChaine = "

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    milliards quatre cent quatre-vingt-quatorze millions quatre cent quatre-vingt-quatorze mille quatre cent quatre-vingt-quatorze Euros et quatre-vingt-quatorze cts#"

    iCréePolice(1, nTaillePolice, iGras, iSwiss)

    nNbCarEcrits = iImprimeZone(sMaChaine,0,0,50,23,iHaut)
    nTailleChaine est un entier = Taille(sMaChaine)
    TANTQUE nNbCarEcrits < nTailleChaine
    // iRAZ()

    nTaillePolice = nTaillePolice-1
    iCréePolice(1, nTaillePolice, iGras, iSwiss)
    iPolice(1)
    nNbCarEcrits = iImprimeZone(sMaChaine,0,0,50,23,iHaut)
    FIN

    SI iConfigure() = Vrai ALORS
    iParamètre()

    // Paramètres impression
    iParamètre(iOrientation, iOrientation_Paysage)
    iParamètre(iQualité, iQualité_Haute)

    iCréePolice(1, nTaillePolice, iGras, iSwiss)
    iPolice(1)
    nNbCarEcrits = iImprimeZone(sMaChaine,0,0,50,23,iHaut)

    // Termine l'impression
    iFinImprime()
    FIN
     
    Tags:
  2. Fouedusa

    Fouedusa Active Member

    Inscrit:
    Avr 22, 2018
    Messages:
    132
    J'aime reçus:
    120
    Bonjour;
    J'ai pas trouvé comment éviter les appels à iImprimeZone(...), alors j'ai modifier ton code en cherchant la taille de police on imprime hors page en conservant la taille de la zone, dès qu'on trouve la taille de police adéquat on imprime dans la page

    Code (Windev):
    // Cherche la taille de police pour imprimer dans un rectangle

    nNbCarEcrits est un entier
    sMaChaine est une chaîne
    nTaillePolice est un entier = 12

    sMaChaine = "#Quatre milliards quatre cent quatre-vingt-quatorze millions quatre cent quatre-vingt-quatorze mille quatre cent quatre-vingt-quatorze Euros et quatre-vingt-quatorze cts#"

    // sMaChaine = sMaChaine + sMaChaine

    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    () = Vrai ALORS

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (100)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()

    // Paramètres impression

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (iOrientation, iOrientation_Paysage)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (iQualité, iQualité_Haute)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (1, nTaillePolice, iGras, iSwiss)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (1)

    nNbCarEcrits =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sMaChaine,-150,-123,-100,-100,iHaut) // Hors zone imprimable
    nTailleChaine est un entier =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sMaChaine)
    TANTQUE nNbCarEcrits < nTailleChaine
    // iRAZ()

    nTaillePolice = nTaillePolice-1

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (1, nTaillePolice, iGras, iSwiss)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (1)
    nNbCarEcrits =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sMaChaine,-150,-123,-100,-100,iHaut) // Hors zone imprimable
    FIN

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (1, nTaillePolice, iGras, iSwiss)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (1)
    nNbCarEcrits =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sMaChaine,0,0,50,23,iHaut)// Zone imprimable

    // Termine l'impression

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
    FIN
    Bon Dev
     

Partager cette page

Chargement...