none
Transformation (skalieren)

    Frage

  • Hallo Forum,

    nachdem die Bereichsausgabe geklärt ist, das nächste Problem. Ich möchte ein png-Bild mittels Timer und der Transformationen immer mehr vergrößern. Ich bekomme zwar das Bild in Originalgröße immer wieder angezeigt aber keine Vergrößerung. Kann mir wer helfen?

    lg heinz

        Private Sub VergroessereFigur()
      
            Dim imageFile As Image = Image.FromFile("Resources\Drei_Apfel_40.png")
    
                   Dim g As Graphics = Graphics.FromImage(imageFile)
    
            m_scale *= 1.25 'skalierung
             g.ScaleTransform(m_scale, m_scale, MatrixOrder.Append)
            Me.CreateGraphics().DrawImage(imageFile, 20, 30)
            'End Using
        End Sub
    

    Sonntag, 24. Februar 2013 14:03

Antworten

  • Hallo,

    du musst die Transformation auf das Graphics-Objekt anwenden was das Bild zeichnet:

    Private Sub button1_Click(sender As Object, e As EventArgs)
    	m_scale *= 1.1
    	Dim b As New Bitmap("image")
    	Dim g As Graphics = Me.CreateGraphics()
    	g.ScaleTransform(m, m)
    	g.DrawImage(b, 0, 0)
    End Sub


    Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets

    • Als Antwort markiert Heinz9 Sonntag, 24. Februar 2013 15:23
    Sonntag, 24. Februar 2013 14:27

Alle Antworten

  • Hallo,

    du musst die Transformation auf das Graphics-Objekt anwenden was das Bild zeichnet:

    Private Sub button1_Click(sender As Object, e As EventArgs)
    	m_scale *= 1.1
    	Dim b As New Bitmap("image")
    	Dim g As Graphics = Me.CreateGraphics()
    	g.ScaleTransform(m, m)
    	g.DrawImage(b, 0, 0)
    End Sub


    Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets

    • Als Antwort markiert Heinz9 Sonntag, 24. Februar 2013 15:23
    Sonntag, 24. Februar 2013 14:27
  • Hallo Koopakiller,

    auch das wäre erledigt. Herzlichen Dank, heinz

    Sonntag, 24. Februar 2013 15:23