Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1563 | Anzahl registrierter User: 1896 | Besucher online: 471
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Erstellen eines Miniaturbildes


Autor: Volker Steitz
Sprache: VB.NET
Bewertung:
7.48 (5 votes)
Anzahl der Aufrufe: 6503
  
Kick it on dotnet-kicks.de  

Beschreibung:

Durchläuft ein Verzeichnis und erstellt ein Minitatur-Abbilder aus einem vorhandenen Bild. Dies kann das in ein Listview etc. geladen werden.

Abgelegt unter: Thumbnail, Picture.



Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
Imports System.DirectoryServices
Imports System.IO

'Aufruf und Übergabe der Parameter
'
'Ordner C:\Temp wird nach Dateien mit der Endung .png durchsucht
'

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Image2MiniImage("C:\Temp", "png")

End Sub


'Suchroutine
Private Sub Image2MiniImage(ByVal SearchDirName As String, ByVal ExtensionName As String)

        Dim foundFileName As String = String.Empty

        For Each foundFileName In System.IO.Directory.GetFiles(SearchDirName)

            If foundFileName.ToLower.ToString.EndsWith(ExtensionName) Then

                Dim fi As New FileInfo(foundFileName)

                Dim foundMiniImage As String = fi.Directory.ToString & "\Thumb_" & fi.Name
                foundMiniImage = foundMiniImage.Replace(fi.Extension, ".bmp")

                createMiniThumb(foundFileName, foundMiniImage, 24)

            End If
        Next
End Sub


Function FakePreviewCallback() As Boolean
        Return False
End Function

''' <summary>
''' Erstellt aus einem Bild ein Mini Abbild (Thumbnail)
''' </summary>
''' <param name="strOriginalImage"></param>
''' Hier wird er Speicherort und der Name des Originalbildes angegeben
''' "C:\Temp\original.png"
''' 
''' <param name="strnewThumbnailImage"></param>
''' Hier bitte den Speicherort, den Namen und die Erweiterung des neuen
''' thumbs angeben ("C:\Temp\mini.bmp")
''' 
''' <param name="nSize"></param>
''' Hier bitte die Groesse des thumbs angeben 
''' Fuer 16x16 bitte 16 angeben
''' 
''' <returns></returns>
''' <remarks></remarks>
''' 
Function createMiniThumb(ByVal strOriginalImage As String, ByVal strnewThumbnailImage As String, ByVal nSize As Integer) As Boolean

Try
            Dim objImage As System.Drawing.Image
            Dim objFileStream As New FileStream(strOriginalImage, FileMode.Open, FileAccess.Read)
            Dim fakeCall As System.Drawing.Image.GetThumbnailImageAbort

            'Original einlesen
            objImage = System.Drawing.Image.FromStream(objFileStream)

            fakeCall = New System.Drawing.Image.GetThumbnailImageAbort(AddressOf FakePreviewCallback)

            'Groesse festlegen
            objImage = objImage.GetThumbnailImage(nSize, nSize, fakeCall, IntPtr.Zero)
            'Speichern
            objImage.Save(strnewThumbnailImage, Imaging.ImageFormat.Jpeg)
            objFileStream.Close()

            'Alles wieder freigeben
            objFileStream = Nothing
            objImage = Nothing
            Return True
        Catch ex As Exception
            Return False
        End Try

    End Function

Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)



schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.