Avatar billede kak Nybegynder
16. januar 2005 - 17:48 Der er 6 kommentarer og
1 løsning

Problem med ScaleX og vbPixels

Jeg forsøger at finde størrelsen på et billede i pixels, men kan ikke få det til at virke korrekt.

Jeg ved at det billede jeg tester med, er 725 pixels bredt (oplysning fra et billedredigerings-værktøj), men når jeg bruger nedenstående sætning bliver resultatet 1278,8.

msgbox (ScaleX(Picture1.Picture.Width, vbTwips, vbPixels))

Hvis jeg tester med MsgBox (Screen.TwipsPerPixelX) får jeg resultatet 15, så jeg kan godt se hvorfor VB oplyser en bredde på 1278,8 (VB viser 19182 twips). Men det er jo bare ikke korrekt, eller i hvert fald en anden type "pixel" end jeg leder efter.

Er der nogen der ved, hvordan jeg finder antallet af pixel, som svarer til det alle billedredigerings-værktøjer bruger?
Avatar billede sjh Nybegynder
17. januar 2005 - 19:26 #1
Private Sub Form_Load()
Dim intWidth As Integer
Dim intHeight As Integer

  With Picture1
      intWidth = (.ScaleWidth \ Screen.TwipsPerPixelX)
      intHeight = (.ScaleHeight \ Screen.TwipsPerPixelY)
  End With
 
  MsgBox intWidth & "x" & intHeight
End Sub
Avatar billede kak Nybegynder
17. januar 2005 - 21:00 #2
Det virker heller ikke helt. Det oplyser mig, at bredden er 453.

Jeg har til gengæld lige fundet ud af, at dette virker...
ScaleX(Picture1.Picture.Width, 8, 3)

Men jeg er da nysgerrig for at vide, hvad "8" og "3" står for? Ved du det?
Avatar billede sjh Nybegynder
17. januar 2005 - 21:03 #3
måske skal du bare sette PictureBox til Autosize

Picture1.AutoSize = True
Avatar billede kak Nybegynder
18. januar 2005 - 19:54 #4
Jeg skal finde størrelsen på billedet, ikke tilpasse pictureboxen eller formen, så det løser desværre ikke mit problem.

Men som sagt har jeg også fundet en løsning, men vil da gerne give point for en forklaring på hvad "3" og "8" er i vb-sprog.
Avatar billede sjh Nybegynder
18. januar 2005 - 20:19 #5
det stå i hjælpen..

Settings

The settings for fromscale and toscale are:

Constant        Value    Description
vbUser            0    User-defined: indicates that the width or height of object is set to a custom value.
vbTwips            1    Twip (1440 twips per logical inch; 567 twips per logical centimeter).
vbPoints        2    Point (72 points per logical inch).
vbPixels        3    Pixel (smallest unit of monitor or printer resolution).
vbCharacters        4    Character (horizontal = 120 twips per unit; vertical = 240 twips per unit).
vbInches        5    Inch.
vbMillimeters        6    Millimeter.
vbCentimeters        7    Centimeter.
vbHimetric        8    HiMetric. If fromscale is omitted, HiMetric is assumed as the default.
vbContainerPosition    9    Determines control's position.
vbContainerSize        10    Determines control's size.
Avatar billede kak Nybegynder
19. januar 2005 - 13:45 #6
Tak for det! Smider du et svar, så du kan få point?
Avatar billede sjh Nybegynder
19. januar 2005 - 20:24 #7
;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester