|
| drectangle en fonctions de la résolution de l'écran ?? |
| Iniciado por obtuli, 08,ago. 2019 14:12 - 2 respuestas |
| |
| | | |
|
| |
Miembro registrado 961 mensajes |
|
| Publicado el 08,agosto 2019 - 14:12 |
Bonjour,
Sur un champ image, je dispose des marqueurs (rectangles) avec la fonction drectangle.
En premier, je clique sur l'image et je récupéré les coordonnées du clic avec
x = SourisPosX(spImage) y = SourisPosY(spImage)
Ensuite je dessine le rectangle dont j'enregistre les x1,y1,x2 et y2.
Problème, quand je trace les rectangles enregistrés, selon la résolution de l'écran, les rectangles sont décalés. D'où cela peut t'il venir ?
merci
OB |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 961 mensajes |
|
| Publicado el 08,agosto 2019 - 16:20 |
Je n'ai pas tout bien compris, mais dans la description de la fenêtre j'ai coché "Ne pas agrandir (mode compatible)" j'en ai profité pour sélectionner "multi-plateforme / indépendance du DPI)
De cette façon il n'y a aucun décalage, je pensais q'un pixel c'était un pixel quelle que soit la résolution de l'écran. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 72 mensajes |
|
| Publicado el 08,agosto 2019 - 16:49 |
C'est la mise à l'échelle qui créer le problème je crois.

1 pixel est 1 pixel pour la résolution native. Par contre s'il est zoomer ca ne fonctionne plus. Si le facteur est de 200% pour faire simple.
Ton 1 pixel est affiché sur 2 pixels
Si tu fait réapparaitre quelque chose par programmation Windev ne gère pas ce zoom automatiquement. Alors 1 pixel est 1 pixel Donc si tu as une image de 50 par 50 déposé sur ta fenêtre, Windev va gérer le zoom automatiquement. Lors de l'affichage elle couvrira sur ton écran 50 *200% X 50*200% donc 100 x 100
Si tu crée une image à côté de 50 par 50 par programmation elle couvrira 50 x 50 donc sera affiché plus petite.
FacteurGrandePolice() est ton ami
Pour exemple fait un c est un champ c <- ChampCrée("Image1", typImage, 10, 10, 50, 50) c = "NomDeLimage.png"
Maintenant exécute le code avec et sans un mise à l'échelle.
Tu vas voir que ton image quand tu est avec une mise à l'échelle est plus petite que si le ratio est à 100%.
Pour contrer ca FGP est un réel = FacteurGrandePolice()
c est un champ c <- ChampCrée("Image1", typImage, 10, 10, 50 * FGP , 50 * FGP ) c = "NomDeLimage.png"
Avec ca, ton image aparraissera de la même grosseur par rapport à ton application.
Je ne suis pas expert côté résolution, mais du moins c'est ce que j'en ai compris  |
| |
| |
| | | |
|
| | | | |
| | |
|