DIMESOES DE UMA IMAGEM.
Gostaria de saber como obter as dimenções X e Y de uma imagem TIFF ou JPG que está salva no HD.
Alguem pode me ajudar?
Alguem pode me ajudar?
Fiz um teste. Coloquei um OLE1 no form e setei a propriedade SizeMode dele como 2 - AutoSize e ele me mostra as dimensoes da figura. Acho que eh um bom comeco. Inte ...
Veja esta função:
Se vc passar variáveis nos parâmetros largura e Altura, ele alimentará suas variáveis com os respectivos valores.
A função retornar True se leu a imagem normalmente, ou false se deu algum erro.
Public Function GetDimensoes(ByVal CaminhoImagem As String, ByRef Largura As Long, ByRef Altura As Long) As Boolean
On Error Resume Next
Dim Imagem As StdPicture
Imagem = LoadPicture(CaminhoImagem)
Largura = Imagem.Width
Altura = Imagem.Height
GetDimensoes = Err.Number = 0
End Function
Se vc passar variáveis nos parâmetros largura e Altura, ele alimentará suas variáveis com os respectivos valores.
A função retornar True se leu a imagem normalmente, ou false se deu algum erro.
Olá MARCELOHF, estou tendo problemas para utilizar a função.
estou chamando ela da seguinte forma.
Em um botão
CaminhoImagem = "c:\Teste.bmp"
Label1= Largura
Label2= Altura
Pode me ajudar?
estou chamando ela da seguinte forma.
Em um botão
CaminhoImagem = "c:\Teste.bmp"
Label1= Largura
Label2= Altura
Pode me ajudar?
Tipo assim amigo...
Vc pode colocar a função em um módulo ou dentro do seu form mesmo.
Abs!
Dim Altura as Long
Dim Largura as Long
CaminhoImagem = "c:\Teste.bmp"
If GetDimensoes(CaminhoImagem, Largura, Altura) then
Label1= Largura
Label2= Altura
end if
Vc pode colocar a função em um módulo ou dentro do seu form mesmo.
Abs!
MARCELOHF, estou utilizando o codigo da seguinte forma e está Compile error: Invalid use of property
na linha: Imagem = LoadPicture(CaminhoImagem) aparece fica com a variavel Imagem selecionda
na linha: Imagem = LoadPicture(CaminhoImagem) aparece fica com a variavel Imagem selecionda
Public Function GetDimensoes(ByVal CaminhoImagem As String, ByRef Largura As Long, ByRef Altura As Long) As Boolean
On Error Resume Next
Dim Imagem As StdPicture
Imagem = LoadPicture(CaminhoImagem)
Largura = Imagem.Width
Altura = Imagem.Height
GetDimensoes = Err.Number = 0
End Function
Private Sub Command1_Click()
Dim Altura As Long
Dim Largura As Long
CaminhoImagem = "c:\Teste.jpg"
If GetDimensoes(CaminhoImagem, Largura, Altura) Then
Label1 = Largura
Label2 = Altura
End If
End Sub
Opa... é isso que dá postar sem testar né! hehe
Está aàcara... faltou o Set... agora funcionando.
Está aàcara... faltou o Set... agora funcionando.
Public Function GetDimensoes(ByVal CaminhoImagem As String, ByRef Largura As Long, ByRef Altura As Long) As Boolean
On Error Resume Next
Dim Imagem As StdPicture
Set Imagem = LoadPicture(CaminhoImagem)
Largura = Imagem.Width
Altura = Imagem.Height
GetDimensoes = Err.Number = 0
End Function
Agora funciono.
Mas existe outro problema, tem o tamanho de 1378 x 601 Pixels e no VB ele exibe o tamanho de 36460 x 15901 ? Poderia me ajudar aconverter isto?
Mas existe outro problema, tem o tamanho de 1378 x 601 Pixels e no VB ele exibe o tamanho de 36460 x 15901 ? Poderia me ajudar aconverter isto?
Utilize esta função abaixo, ela já retorna os valores convertidos
Public Function GetDimensoes(ByVal CaminhoImagem As String, ByRef Largura As Long, ByRef Altura As Long) As Boolean
On Error Resume Next
Private Const Fator = 26.4586357039187
Dim Imagem As StdPicture
Set Imagem = LoadPicture(CaminhoImagem)
Largura = Imagem.Width / Fator
Altura = Imagem.Height / Fator
GetDimensoes = Err.Number = 0
End Function
Muito obrigado MARCELOHF, VLW pela força.
Agora só pra evitar um erro e para aquele que queiram utilizar o codigo, utilize o codigo desta forma com o Private Const fora da função para não dar erro.
Private Const Fator = 26.4586357039187
Muito obrigado MARCELOHF
Agora só pra evitar um erro e para aquele que queiram utilizar o codigo, utilize o codigo desta forma com o Private Const fora da função para não dar erro.
Private Const Fator = 26.4586357039187
Public Function GetDimensoes(ByVal CaminhoImagem As String, ByRef Largura As Long, ByRef Altura As Long) As Boolean
On Error Resume Next
Dim Imagem As StdPicture
Set Imagem = LoadPicture(CaminhoImagem)
Largura = Imagem.Width / Fator
Altura = Imagem.Height / Fator
GetDimensoes = Err.Number = 0
End Function
Muito obrigado MARCELOHF
Tópico encerrado , respostas não são mais permitidas