Avatar billede rasmus1234 Nybegynder
29. september 2006 - 09:56 Der er 11 kommentarer og
1 løsning

Dimensioner på billeder

Hvordan kan jeg få dimensioner (højde og bredde i pixels) eksporteret til en tekstfil på en mappe og undermapper...

Output skal være:
Billedsti;pixelshøjde;pixelsbredde

F.eks.:
c:\test.jpg;54;250
Avatar billede shy Nybegynder
29. september 2006 - 10:57 #1
Den her finder højde og bredde på en billed fil. Så ka du jo selv putte den i en fil.

Dim P As IPictureDisp

Set P = LoadPicture("C:\MatchboxMand.bmp")
Debug.Print Int(P.Width / 26.4583) & "x" & Int(P.Height / 26.4583)
Avatar billede rasmus1234 Nybegynder
29. september 2006 - 11:02 #2
Tak for super indlæg. Hvis jeg f.eks. har filstierne i et regneark i en laaang række A, kan jeg så på en eller anden måde få Width i B og Height i C?
Avatar billede kabbak Professor
29. september 2006 - 11:22 #3
sådan skal din import kode se ud

Sub ListFiles(Directory As String, SubDir As Boolean)
    Dim r As Long, i As Long
    Dim P As IPictureDisp
    If Directory = "" Then Exit Sub
    If Right(Directory, 1) <> "\" Then Directory = Directory & "\"

    '  Insert headers
    r = 1
    Cells.ClearContents
    Cells(r, 1) = "FileName"
    Cells(r, 2) = "Size"
    Cells(r, 3) = "Date/Time"
    Cells(r, 4) = "Bredde/Højde"
    Range("A1:C1").Font.Bold = True
    r = r + 1

    On Error Resume Next
    With Application.FileSearch
        .NewSearch
        .LookIn = Directory
        .Filename = "*.*"
        .SearchSubFolders = SubDir
        .Execute
        For i = 1 To .FoundFiles.Count
            Cells(r, 1) = .FoundFiles(i)
            Cells(r, 2) = FileLen(.FoundFiles(i))
            Cells(r, 3) = FileDateTime(.FoundFiles(i))
            Set P = LoadPicture(.FoundFiles(i))
            Cells(r, 4) = Int(P.Width / 26.4583) & "x" & Int(P.Height / 26.4583)
            r = r + 1
        Next i
    End With
End Sub
Avatar billede rasmus1234 Nybegynder
29. september 2006 - 11:32 #4
Sejt, det virker super duper. Læg et svar
Avatar billede kabbak Professor
29. september 2006 - 11:58 #5
point til shy, ikke til mig ;-))
Avatar billede kabbak Professor
29. september 2006 - 12:00 #6
Sub ListFiles(Directory As String, SubDir As Boolean)
    Dim r As Long, i As Long
    Dim P As IPictureDisp
    If Directory = "" Then Exit Sub
    If Right(Directory, 1) <> "\" Then Directory = Directory & "\"

    '  Insert headers
    r = 1
    Cells.ClearContents
    Cells(r, 1) = "FileName"
    Cells(r, 2) = "Size"
    Cells(r, 3) = "Date/Time"
    Cells(r, 4) = "Bredde/Højde"
    Range("A1:C1").Font.Bold = True
    r = r + 1

    On Error Resume Next
    With Application.FileSearch
        .NewSearch
        .LookIn = Directory
        .Filename = "*.*"
        .SearchSubFolders = SubDir
        .Execute
        For i = 1 To .FoundFiles.Count
            Cells(r, 1) = .FoundFiles(i)
            Cells(r, 2) = FileLen(.FoundFiles(i))
            Cells(r, 3) = FileDateTime(.FoundFiles(i))
            Set P = LoadPicture(.FoundFiles(i))
            Cells(r, 4) = Int(P.Width / 26.4583) & "x" & Int(P.Height / 26.4583)
            r = r + 1
    Set P = Nothing ' skal vist lige med
        Next i
    End With
End Sub
Avatar billede rasmus1234 Nybegynder
29. september 2006 - 12:12 #7
ja, shy fandt i grove træk løsningen, så han har fortjent pointene, men kabbak, du er jo en genial mand, har efterhånden fået en masse super svar fra dig, der virkeligt har påvirket mit job, firma og stilling og løn...så 1.000.000 tak til dig
Avatar billede kabbak Professor
29. september 2006 - 14:29 #8
tak for rosen
Avatar billede martin_moth Mester
20. oktober 2006 - 14:37 #9
kabbak skal vel have en del af din lønforhøjelse, så?
Avatar billede rasmus1234 Nybegynder
21. oktober 2006 - 12:14 #10
...der er mange brugere af eksperten, der skal putte i den pulje :-)
Avatar billede rasmus1234 Nybegynder
14. januar 2007 - 19:30 #11
shy, lægger du et svar?
Avatar billede rasmus1234 Nybegynder
20. august 2010 - 08:35 #12
lukker spm.
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