1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Problemstellung:

Für 32Bit und 64Bit Office Versionen

Manchmal möchte man die Pixelgrößen von Bilddateien mit Hilfe von Access ermitteln.

Lösung:
Es werden Bilder in den Formaten GIF, BMP und JPG ünterstützt.

Folgende Funktion in ein öffentliches Modul kopieren:

Public Type PictureFormat
     sWidth As String
     sHeight As String
 End Type
 Public Function GetPicSize(sFile As String) As PictureFormat
     Dim ff As Integer
     Dim iWidth As Integer
     Dim iHeight As Integer
     Dim iC As Integer
     Dim sTmp As String
     Dim lL As Long
     Dim sDummy As String
     Dim sExt As String
 
    sExt = Right(sFile, 3)
     ff = FreeFile()
     Open sFile For Binary Access Read As #ff
 
    Select Case sExt
         Case "gif"
             Get #ff, 7, iWidth
             Get #ff, 9, iHeight
             Close #ff
         Case "bmp"
             Get #ff, 19, iWidth
             Get #ff, 23, iHeight
             Close #ff
         Case "jpg"
             If Input(2, #ff) <> (Chr$(&HFF) & Chr$(&HD8)) Then
                 Close #ff
                 Exit Function
             End If
             sDummy = Input(2, #ff)
             Do
                 lL = Asc(Input(1, #ff))
                 lL = lL * 256 + Asc(Input(1, #ff))
                 sTmp = Input(lL - 2, #ff)
                 If iC = &HC0 Or iC = &HC2 Then
                     iWidth = Asc(Mid$(sTmp, 4, 1))
                     iWidth = iWidth * 256 + Asc(Mid$(sTmp, 5, 1))
                     iHeight = Asc(Mid$(sTmp, 2, 1))
                     iHeight = iHeight * 256 + Asc(Mid$(sTmp, 3, 1))
                 End If
                 If Input(1, #ff) <> Chr$(255) Then
                     Exit Do
                 End If
                 iC = Asc(Input(1, #ff))
             Loop While iC <> &HD9
             Close #ff
         Case Else
             Exit Function
     End Select
 
    With GetPicSize
         .sWidth = CStr(iWidth)
         .sHeight = CStr(iHeight)
     End With
 
End Function

Der Aufruf z.B.:

Dim tPictureFormat As PictureFormat
 
tPictureFormat = GetPicSize("F:\Downloads\Bilder\anz_wt.gif")
 
MsgBox "Bildbreite: " & tPictureFormat.sWidth & " Pixel" & vbNewLine & _
     "Bildhöhe: " & tPictureFormat.sHeight & " Pixel"

Das Ergebnis:


 

Ähnliche Artikel

You have no rights to post comments

Login Form

Neueste Artikel

SQL zu VBA Konverter
26. Oktober 2018
Problemstellung: Nur für 32Bit Office Versionen Gibt es eine Möglichkeit SQL-Code einer Abfrage so zu konvertieren das der Code in VBA genutzt werden kann? Lösung: Bis Access 2010 gibt das Tool...
1.png5.png8.png5.png6.png3.png8.png
Heute383
Gestern496
Diese Woche1796
Dieser Monat5512
Total1585638

  • IP: 3.144.187.103
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

5
Online

19. April 2024

Letzte Kommentare

  • Berechnen von Zeiträumen als Abfragekriterium

    elmard 02.02.2021 21:02
    1000 Dank
    für diese Datenbankanwendung! Eine sehr gute Umsetzung mit den vielen Möglichkeiten des Datums.

    Weiterlesen...

     
  • SQL zu VBA Konverter

    Tommy Admin 03.11.2019 16:33
    RE: SQL zu VBA Konverter
    Hallo Elmard, danke für die Info. :lol:

    Weiterlesen...

     
  • SQL zu VBA Konverter

    elmard 03.11.2019 14:49
    Bei SmartTools neue Version 4.0
    Dieses Tool liegt inzwischen in der Version 4 vor und läuft nun auch von A2013 und A2016 sowie im ...

    Weiterlesen...

     
  • Workshop zur Benutzung des Multi-Column TreeView Control unter MS-Access

    TommyK 27.02.2019 06:52
    Workshop
    Hallo mpegjunkie, danke für Dein Feedback. Schön das Dir Workshop weiter hilft. :D

    Weiterlesen...

     
  • Workshop zur Benutzung des Multi-Column TreeView Control unter MS-Access

    mpegjunkie 26.02.2019 20:10
    Perfekter Workshop
    Hallo Tommy, perfekter Workshop, toll und umfassend erläutert. Jetzt nutze ich diese Controls auch.

    Weiterlesen...