MANIPULACAO DE IMAGENS - ZOOM

USUARIO.EXCLUIDOS 12/07/2005 12:55:58
#93617
Olá pessoal, tenho um programinha e gostaria de adicioná-lo a opções de ZOOM nas imagens e poder definir o quanto de ZOOM.

Alguém poderia me dizer o que posso usar para fazer isso???
FELIPEA 12/07/2005 14:26:54
#93643
Faz o seguinte.

  • Crie 2 comands: um escrito 'ZOOM -' e outro 'ZOOM +'
  • No código do command 1 escreva:
    Private Sub Command1_Click()
    On Error Resume Next
    Image1.Width = Image1.Width - 100
    Image1.Height = Image1.Height - 100,
    End Sub

  • No código do command 2 escreva:
    Private Sub Command2_Click()
    On Error Resume Next
    Image1.Width = Image1.Width + 100
    Image1.Height = Image1.Height + 100,
    End Sub


    Espero que tenha entendido
  • SERGIO.CARDOSO 13/07/2005 14:20:09
    #93947
    Ajudando um pouco mais:
    Se voce quiser fazer um efeito de zoom, devera aumentar a altura e largura proporcionalmente, isto e, se dobrar a altura devera dobrar a largura tambem.
    Se voce diminuir a altura em 20%, devera diminuir a largura no mesmo indice.
    Um exemplo:
    No inicio -> Image1.Width = 1000 e Image1.Height = 700
    No final -> Image1.Width = 800 e Image1.Height = 560
    Se voce nao diminuir e aumentar proporcionalmente a imagem ficara "esticada".
    O índice de zoom voce poderia colocar numa ComboBox, e depois voce aplicaria na altura e largura assim:
    Image1.Width = Image1.Width * ((100+CboIndice)/100)
    Image1.Height = Image1.Height * ((100+CboIndice)/100)
    Espero ter ajudado.
    GABRIEL.LOGAN 13/07/2005 15:41:42
    #93972
    Ah cara tem um programa aqui no site que faz isso a nível profissional:

    http://www.vbmania.com.br/vbmdetail.php?varID=2364

    FABIO.ALEXANDRE 14/07/2005 08:30:10
    #94060
    Bom , quando fiz essa função tive outros proposito, + vale a pena c dar uma olhada

    ====================================================================
    Dim var_nZomm As Long

    Public Sub sbPicture(ByRef par_objPicture, ByVal par_objPicImagem, _
    Optional ByVal par_nPercent_Centro_Imagem = 30)

    Dim var_nHeight As Double
    Dim var_nWidth As Double

    On Error GoTo error_

    If par_objPicImagem <> 0 Then
    par_objPicture.Cls
    var_nHeight = par_objPicture.Height - (par_objPicture.Height * (par_nPercent_Centro_Imagem / 100))
    var_nWidth = par_objPicture.Width - (par_objPicture.Width * (par_nPercent_Centro_Imagem / 100))
    par_objPicture.PaintPicture par_objPicImagem, par_objPicture.Width / 2 - var_nWidth / 2, par_objPicture.Height / 2 - var_nHeight / 2, var_nWidth, var_nHeight
    End If

    Exit Sub
    error_:
    MsgBox Err.Description & " " & Err.Number, vbCritical, "sbPicture"
    End Sub

    Private Sub cmdZommadd_Click()
    var_nZomm = var_nZomm - 10
    sbPicture Picture2, Picture1, var_nZomm
    End Sub

    Private Sub cmdZommRem_Click()
    var_nZomm = var_nZomm + 10
    sbPicture Picture2, Picture1, var_nZomm
    End Sub

    Private Sub Form_Load()
    var_nZomm = 95
    sbPicture Picture2, Picture1, var_nZomm
    End Sub
    =====================================================================

    ESPERO TER AJUDADO
    Tópico encerrado , respostas não são mais permitidas