Dpi

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Dpi

Message par microdevweb »

Bonjour à tous,

Sur le forum Anglais il ma été relaté que ma table pouvais souffrir d'un problème de DPI. Comme ceci

Image

Le problème est que même si je change l’échelle de mon affichage, je n'arrive pas reproduire l'erreur. Cela vient du dimensionnement de mon image je penses.

Dans mon cas j'ai deux moniteurs,
1920 x 1080 150% et
1366 x 768 100%

Merci d'avance pour vos conseils
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
Naheulf
Messages : 193
Inscription : dim. 10/mars/2013 22:22
Localisation : France

Re: Dpi

Message par Naheulf »

Je n'ai pas encore eu de problème de DPI (mon écran et trop petit) mais essaye de sélectionner l'écran FullHD (1080p) comme écran principal. Ça te permettra peut être de pouvoir reproduire le problème.
Avatar de l’utilisateur
Micoute
Messages : 2585
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Dpi

Message par Micoute »

C'est curieux, car chez moi avec mon écran 2560 x 1080 à 100%, ça a tendance à agrandir les fenêtres et images, tandis qu'avec celui de 1920 x 1080 100% aussi, ça ne modifie rien du tout, j'ai fait une petite routine :

Code : Tout sélectionner

ExamineDesktops()

Global.d Coeff_L, Coeff_H , LargEcr = DesktopWidth(0), HautEcr = DesktopHeight(0)

If LargEcr >= 1920
  Coeff_L = 1 / (LargEcr / 1920)
ElseIf LargEcr < 1920
  Coeff_L = 1920 / LargEcr
EndIf  

If HautEcr >= 1080
  Coeff_H = 1 / (HautEcr / 1080)
ElseIf HautEcr < 1080
  Coeff_H = 1080 / HautEcr
EndIf
et comme ça plus de problème.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Dpi

Message par microdevweb »

merci Micoute,

Je vais regardé à cela
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Dpi

Message par G-Rom »

J'ai le même "soucis" que ton screen plus haut, il faut que tu actives dans tes options de compilation "Activer le facteur d'échelle d'affichage DPI"
il faut surement que tu joue avec DesktopScaledX() & DesktopScaledY() pour une mise à l'échelle correct. j'ai essayer de regarder ton code, j'ai abandonné :mrgreen:
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Dpi

Message par microdevweb »

@G_room,

J'ai changé certaine chose, si tu peut réessayé (avec l'option Afficher le facteur d'échelle et d’affichage)

Merci
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Avatar de l’utilisateur
Micoute
Messages : 2585
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Dpi

Message par Micoute »

Avec l'exemple que j'ai donné, il ne faut pas oublier de diviser les dimensions des différents gadgets par Coeff_L pour les largeurs et par Coeff_H pour les hauteurs, par exemple:

Code : Tout sélectionner

OpenWindow(#Fenetre_Init, 0, 0, 810/Coeff_L, 600/Coeff_H, "Initialisation", #PB_Window_BorderLess|#PB_Window_ScreenCentered)
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: Dpi

Message par Ollivier »

@microdevweb

Tu devrais essayer le latin pour le nom des éléments dans tes codes.
Le latin complet, comme ceci :

Code : Tout sélectionner

ExamineDesktops()
LucisAedificiumTitubandinis = DesktopWidth(0)
LucisAedificiumMagnitudinis = DesktopHeight(0)
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Dpi

Message par G-Rom »

cela fonctionne mieux.
Avatar de l’utilisateur
Micoute
Messages : 2585
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Dpi

Message par Micoute »

G-Rom a écrit :cela fonctionne mieux.
Cela va sans dire.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Dpi

Message par G-Rom »

Micoute a écrit :
G-Rom a écrit :cela fonctionne mieux.
Cela va sans dire.
heu... je répondais a microdevweb.
Avatar de l’utilisateur
Micoute
Messages : 2585
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Dpi

Message par Micoute »

C'est ce que je pensais aussi.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Avatar de l’utilisateur
Ar-S
Messages : 9546
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Dpi

Message par Ar-S »

Avant de dessiner ta table, essaye de convertir tes dimensions via le DesktopResolutionX()ou DesktopScaledX()

Un truc comme ça est un peu lourd mais ça doit passer non ? (je suis en facteur 1 j'ai pas plus testé que ça)

Code : Tout sélectionner

Enumeration
  #WIN
  #CANV
EndEnumeration



Global DP.d = DesktopResolutionX()
Debug "Facteur de zoom : " + DP


; DP.d = 1.25
;Debug "Facteur de zoom : 1.25"



Structure DPIconv
  ID.i
  W.i
  H.i
EndStructure

Global NewList IDE.DPIconv()


; Macros pour simplifier l'ajout des valeurs dans la liste structurée
Macro AddTOOL(nID,Nw,Nh)
  AddElement ( IDE.DPIconv() )
  IDE()\ID = nID
  IDE()\W = Nw/DP
  IDE()\H = Nh/DP
EndMacro


; Macro pour simplifier la selection de l'élément dans la liste structurée
Macro Sel(Tool)
SelectElement (IDE(),Tool) 
EndMacro



; AJOUT des valeurs et conversion pour tous les éléments de votre GUI
AddTOOL(#WIN,200,200) ; Windows
AddTOOL(#CAN,198,198) ; Canvas
                      ; (.... etc)




Sel(#WIN) ; Selectionne l'element #WIN dans la liste structurée
OpenWindow(IDE()\ID,50,50,IDE()\W,IDE()\H, "DPI", #PB_Window_SystemMenu)

Sel(#CANV)
CanvasGadget  (IDE()\ID, 1, 1, IDE()\W,IDE()\H)
   
   Repeat
     Event = WaitWindowEvent()
     
     Select Event
     
       Case #PB_Event_Gadget
         Select EventGadget()
         
         EndSelect
            
     EndSelect
   Until Event = #PB_Event_CloseWindow

~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Répondre