vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Bilder überblenden - Beispiel 
Autor: Manfred X
Datum: 24.05.20 10:09

Ein simples Beispiel ohne Beachtung der Seitenverhältnisse der
Bilder
Public Class frmFader
 
    Dim bmp1, bmp2 As Bitmap
    Dim sz As Size = New Size(300, 300) 'Größe der Bildanzeige 
 
    Dim pb As New PictureBox With 
         {.Parent = Me, .Size = sz, .Top = 10, .Left = 10}
 
    Dim WithEvents tm As New Timer With {.Interval = 500, .Enabled = False}
 
 
    Private Sub frmFader_Load(sender As Object, e As EventArgs) Handles _
      MyBase.Load
 
        bmp1 = New Bitmap("G:\daten\x1.jpg")  'Hier zwei Bilddateien angeben
        bmp2 = New Bitmap("G:\daten\x2.jpg")
 
        'Bilder in Größe abschneiden (oder stretchen)
        'und Parameter vereinheitlichen (24er - 3 Byte pro Pixel)
        Using bmp As New Bitmap(sz.Width, sz.Height,
                System.Drawing.Imaging.PixelFormat.Format24bppRgb),
                g As Graphics = Graphics.FromImage(bmp)
 
            g.InterpolationMode = 
               Drawing2D.InterpolationMode.HighQualityBicubic
 
            g.DrawImage(bmp1, 0, 0, sz.Width, sz.Height)
            bmp1 = bmp.Clone
 
            g.DrawImage(bmp2, 0, 0, sz.Width, sz.Height)
            bmp2 = bmp.Clone
        End Using
 
        tm.Enabled = True
    End Sub
 
 
 
    Private Sub Fade(ByVal Alpha As Single)
        Dim ColMat As New System.Drawing.Imaging.ColorMatrix _
        With {.Matrix33 = Alpha}            ' 
        ' Farbmatrix anlegen
        Dim imgAtt As New System.Drawing.Imaging.ImageAttributes()              _
                           ' 
        ' Bildattribute anlegen
        imgAtt.SetColorMatrix(ColMat)
 
 
        Using bmp As New Bitmap(sz.Width, sz.Height),
                g As Graphics = Graphics.FromImage(bmp)
 
            g.DrawImage(bmp1, 0, 0, sz.Width, sz.Height)
 
            g.DrawImage(bmp2, New Rectangle(0, 0, sz.Width, sz.Height),
                        0, 0, sz.Width, sz.Height,
                        GraphicsUnit.Pixel, imgAtt)
 
            If pb.Image IsNot Nothing Then pb.Image.Dispose()
            pb.Image = bmp.Clone
        End Using
    End Sub
 
 
    Private Sub tm_Tick(sender As Object, e As EventArgs) Handles tm.Tick
 
        Static alpha As Single = 0
        alpha += 0.1
        If alpha > 1 Then alpha = 0
        Fade(alpha)
    End Sub
End Class


Beitrag wurde zuletzt am 24.05.20 um 10:27:23 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Bilder überblenden1.181Dikn22.05.20 12:35
Re: Bilder überblenden596Manfred X23.05.20 21:18
Re: Bilder überblenden527Dikn24.05.20 07:48
Bilder überblenden - Beispiel526Manfred X24.05.20 10:09
Re: Bilder überblenden - Beispiel500Dikn26.05.20 09:26
Re: Bilder überblenden - Beispiel523Manfred X26.05.20 10:19
Re: Bilder überblenden675Dikn28.05.20 10:17
Re: Bilder überblenden657Kuno6028.05.20 14:05
Re: Bilder überblenden531Dikn29.05.20 08:23

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel