Bonjour
Je pense que tout est dans le sujet :-)
Comment convertir des pixels et twips ?
D'avance merci
Bonjour
Je pense que tout est dans le sujet :-)
Comment convertir des pixels et twips ?
D'avance merci
Pour convertir des Pixel en Twip, multiplie par 15
http://www.convert-me.com/en/convert....pixel.en.html
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau
"Expliquer empêche de comprendre si cela dispense de chercher"
Quiz Oracle : venez tester vos connaissances !
La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Tu peux faire comme ca sinon pour obtenir la valeur d'un twip par pixel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long Private Declare Function GetDeviceCaps Lib "gdi32" (ByVal hdc As Long, ByVal nIndex As Long) As Long Private Const HWND_DESKTOP As Long = 0 Private Const LOGPIXELSX As Long = 88 Private Const LOGPIXELSY As Long = 90 Function TwipsPerPixelX() As Single Dim lngDC As Long lngDC = GetDC(HWND_DESKTOP) TwipsPerPixelX = 1440& / GetDeviceCaps(lngDC, LOGPIXELSX) ReleaseDC HWND_DESKTOP, lngDC End Function Function TwipsPerPixelY() As Single Dim lngDC As Long lngDC = GetDC(HWND_DESKTOP) TwipsPerPixelY = 1440& / GetDeviceCaps(lngDC, LOGPIXELSY) ReleaseDC HWND_DESKTOP, lngDC End Function
Salut
Dans la plupart des cas, i.e. ceux connus par bibi, la multiplication par 15 est suffisante et plus simple. Mais cette méthode de paresseux, j'en suis, n'est pas à toute épreuve.
Donc la méthode laborieuse par les fonction de l'API, proposée par notre ami nico-pyright(c) - dont je trouve le pseudo bien chouette, est sans doute la plus appropriée.
Chez moi, je suis en 72 pixels au pouce. Mais ce n'est pas le cas pour tous les moniteurs et/ou systèmes. D'ailleurs la définition du mot twip est en anglais 'twentieth of pixel' ou quelque chose du genre signifiant un vingtième de pixel, donc, on devrait multiplier par 20...
Je n'ose pas imaginer ce qu'aurais donné le nom de cette mesure avec fiftieth of pixel... fifip ?
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Oui, tout à fait, il est certain que côté rigueur, il vaut mieux choisir la solution de nico-pyright(c). Je vais même aller de ce pas implémenter mon code.
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau
"Expliquer empêche de comprendre si cela dispense de chercher"
Quiz Oracle : venez tester vos connaissances !
La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Bah tu peut aussi faire ce cette manière:
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part Me.TwipsPerPixelX
(ce dernier suis plus trop sûr par contre à vérifier)
Code : Sélectionner tout - Visualiser dans une fenêtre à part Form.TwipsPerPixelX
cela fonctionne tout aussi bien !
Mon Site
Ma bibliothèque de gestion des chaînes de caractères en C
L'imagination est plus importante que le savoir. A. Einstein
Je ne répond à aucune question technique par MP, merci d'avance !
L'interet de la méthode avec les API, c'est que ca peut aussi s'utiliser en VBA.
Par contre, sous VB, il suffit d'utiliser l'objet Screen
Oui c'est vrai c'etait Sceen désoléEnvoyé par nico-pyright(c)
Mon Site
Ma bibliothèque de gestion des chaînes de caractères en C
L'imagination est plus importante que le savoir. A. Einstein
Je ne répond à aucune question technique par MP, merci d'avance !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager