Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia galera do imaster !!
Estou fazendo um programa ImageCropping. Ele faz o seguinte :
Tenho uma imagem qualquer, dai eu seleciono a área que eu desejo recortar. A área
selecionada vai para uma picture box de visualização. Após todo esse processo salvo a
imagem recortada. Ele funciona perfeitamente, mas gostaria que a TrackBar funcionasse
para eu pode dar um zoom na imagem recortada. O problema é o seguinte...havia feito
esse programa em VB.Net, mas ele tem que funcionar em C#.Net... O método é o seguinte :
Método em VB :
Dim tempCnt As Boolean
Dim bm_dest As Bitmap
Dim bm_source As Bitmap
Dim i As Int16 = 1
'método para o trackingBar
Private Sub resizingTrackBar_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resizingTrackBar.ValueChanged
Try
Dim scale_factor As Integer
Dim img1 As New PictureBox
scale_factor = Integer.Parse(resizingTrackBar.Value)
img1.Image = cropBitmap
bm_source = New Bitmap(img1.Image)
bm_dest = New Bitmap( _
CInt(bm_source.Width * scale_factor), _
CInt(bm_source.Height * scale_factor))
Dim gr_dest As Graphics = Graphics.FromImage(bm_dest)
gr_dest.DrawImage(bm_source, 0, 0, bm_dest.Width + i, bm_dest.Height + i)
PreviewPictureBox.Image = bm_dest 'PreviewPictureBox é o nome da picture box de visualização
tempCnt = True
Catch ex As Exception
End Try
End Sub
#End Region
Método em C# :
//Declaração de variáveis
bool tempCnt;
Bitmap bm_dest;
Bitmap bm_source;
int i = 1;
//Método responsável pelo movimento do TrackBar e pelo aumento da imagem
private void resizingTrackBar_ValueChanged(object sender, EventArgs e)
{
try
{
int scale_factor;
PictureBox img1 = null;
scale_factor = resizingTrackBar.Value;
img1.Image = cropBitmap; // cropBitmap é um objeto da classe Bitmap que recebe o width e o Heigt da imagem
bm_source = new Bitmap(img1.Image);
bm_dest = new Bitmap(bm_source.Width * scale_factor, bm_source.Height * scale_factor);
Graphics gr_dest = Graphics.FromImage(bm_dest);
gr_dest.DrawImage(bm_source, 0, 0, bm_dest.Width + i, bm_dest.Height + i);
PreviewPictureBox.Image = bm_dest;
tempCnt = true;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
} // Fecha método resizingTrackBar_ValueChangedNão sei o que pode ser isso !
Obrigada pela atenção !
Abraços. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Carregando comentários...