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

Problemstellung:

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

Kommentar schreiben

Sicherheitscode
Aktualisieren

Login Form

Neueste Artikel

Problemstellung: Ab MS-Office 2010 gibt es eine 32bit und eine 64bit Variante.Übernimmt man nun eine Datenbank nach 64bit und diese enthält API-Declare Anweisungenerhlt min in der Regel diese...
1.png2.png0.png4.png4.png2.png0.png
Heute57
Gestern127
Diese Woche465
Dieser Monat1844
Total1204420

  • IP: 54.80.96.153
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

1
Online

20. September 2018

Letzte Kommentare

  • Trusted Locations Manager

    Tommy Admin 13.07.2018 13:06
    RE: Trusted Locations Manager
    Hallo Matthias, aus Ermangelung einer 64bit Version kann ich das leider nicht prüfen. Tut mir leid. Gruss ...

    Weiterlesen...

     
  • Trusted Locations Manager

    Matthias 13.07.2018 06:48
    Funktioniert nicht
    Habe gerade den TL-Manager installiert. Nach dem Start sagt er mir, dass es kein Office erkennen ...

    Weiterlesen...