Ridimensionare immagini – Codice VB.NET


Categoria dell'articolo: Codice VB.NET

Listati in codice Visual Basic.NET, elaborati o rielaborati e adattati da IngAC con la versione 2015. Funzioni e subroutine varie utili alla creazione di programmi.





Articolo pubblicato da:

Condividi articolo:

Ridimensionare immagini: come cambiare altezza e larghezza di un’immagine con una semplice funzione in codice VB.NET

Introduzione

Può capitare che in alcune parti del nostro programma occorra per qualche motivo cambiare le dimensioni di una immagine. Ad esempio se stiamo implementando un elaboratore di immagini, sapere come fare a ridimensionare un’immagine tramite vb.net è uno dei passi fondamentali. La funzione che ho ideato, girando qua e la sul web e rielaborando il tutto, che si occupa appunto del ridimensionare immagini è: IngAC_IMMAGINE_RIDIMENSIONA(ByVal Immagine As Bitmap, ByVal N_Dim_X As Integer, ByVal N_Dim_Y As Integer, Optional ByVal preserveAspectRatio As Boolean = True) As Bitmap.

Public Function IngAC_IMMAGINE_RIDIMENSIONA(ByVal Immagine As Bitmap,
                                            ByVal N_Dim_X As Integer,
                                            ByVal N_Dim_Y As Integer,
                                            Optional ByVal preserveAspectRatio As Boolean = True) As Bitmap
        If preserveAspectRatio Then
            Dim O_Dim_X As Integer = Immagine.Width
            Dim O_Dim_Y As Integer = Immagine.Height
            Dim Percent_X As Single = CSng(N_Dim_X) / CSng(O_Dim_X)
            Dim Percent_Y As Single = CSng(N_Dim_Y) / CSng(O_Dim_Y)
            Dim Percent As Single = If(Percent_Y < Percent_X, Percent_Y, Percent_X)
            N_Dim_X = CInt(O_Dim_X * Percent)
            N_Dim_Y = CInt(O_Dim_Y * Percent)
        End If
        Dim bmp As Image = New Bitmap(N_Dim_X, N_Dim_Y)
        Using g As Graphics = Graphics.FromImage(bmp)
            g.InterpolationMode = Drawing2D.InterpolationMode.Bicubic
            g.DrawImage(Immagine, 0, 0, N_Dim_X, N_Dim_Y)
        End Using
        Immagine.Dispose()
        Return bmp
    End Function

La funzione per ridimensionare immagini in VB.NET

La funzione IngAC_IMMAGINE_RIDIMENSIONA ha come input:

  • Immagine che è l’immagine orginale che può provenire sia da file che da picturebox o anche da altri oggetti image o bitmap;
  • N_Dim_X che rappresenta la dimensione orizzontale in pixel dell’immagine;
  • N_Dim_Y che rappresenta la dimensione verticale in pixel dell’immagine;
  • preserveAspectRatio che deve assumere valore vero o falso a seconda che si vogliano rispettare le proporzioni dell’immagine.

Funzionamento di IngAC_IMMAGINE_RIDIMENSIONA()

Il funzionamento è semplicissimo; occorre innanzi tutto includere Imports System.Drawing.Imaging che permette di accedere alle funzionalità grafiche di vb.net e alle varie classi inerenti. Si calcolano le dimensioni e le percentuali di scalatura. g.InterpolationMode si occupa dell’interpolazione (ci sono varie opzioni disponibili) e infine la funzione g.DrawImage completa il resto.

Link Utili:

Ridimensionare immagini - Codice VB.NET

Ridimensionare immagini – Codice VB.NET



Random Post

PREVISIONE LOTTO n° 99 di 150 per MARTEDÌ 25 LUGLIO 2017

Previsione Lotto 25 Luglio 2017

PREVISIONE LOTTO n° 99 di 150 per MARTEDÌ 25 LUGLIO 2017 Esito della previsione precedente: Niente. Test “beta V3” precedente: 2)PALERMO: Estratto. A questo link, gli ultimi commenti e ...

Vai al post...

Eau Sauvage – Musica dello spot – 2011

Eau Sauvage - Musica dello spot

Eau Sauvage di DiOR: musica dello spot – Dicembre 2011 Il profumo Eau Sauvage è stato creato da Dior nel 1966 ed è il primo per uomo;  ancor oggi, è uno dei più conosciuti: da 25 anni è i...

Vai al post...

Ruote sulle quali giocare i numeri sognati

Ruote del lotto e numeri

Su quali ruote del lotto giocare i numeri smorfiati dai sogni? Abbiamo sognato tutta la notte, abbiamo cercato significati, interpretazioni e numeri associati…e ora? La domanda sorge spontanea&#...

Vai al post...

PUBBLICITÀ



Disclaimer:


Questo blog NON è un prodotto editoriale ai sensi della legge n° 62 del 7 marzo 2001. Le immagini tratte da internet che possano violare i diritti di autore, previa comunicazione, attraverso la sezione -contatti-, verranno prontamente rimosse o sostituite.

Copyright:


I contenuti presenti su ROMOLETTO BLOG dei quali è autore il proprietario del blog non possono essere copiati, riprodotti, redistribuiti perché appartenenti all autore stesso. Si vieta la copia e la riproduzione dei contenuti in qualsiasi modo o forma. Si vieta altresì la pubblicazione e la redistribuzione dei contenuti non autorizzata espressamente dell autore.


Copyright © 2011 / 2017 - ROMOLETTO BLOG - All Right Reserved

IngAC

Informazioni su Romoletto

Ingegnere Civile, Blogger, Programmatore VB.NET, Lezioni private per scuole medie inferiori e superiori. Per contattarmi scorri la home fino in fondo e vai al form -Contatti-

Navigazione per Articoli della stessa Categoria