Até compila, mas quando chega na linha 

lJpgFile.LoadFromClipboardFormat(lFormat, Clipboard.GetAsHandle(lFormat), 0);

Ocorre uma violação de acesso no endereço, como se ele estivesse tentando 
copiar algo que não existe, engraçado é que a variavel lformat esta preenchida.

Alex

  ----- Original Message ----- 
  From: Rubem Nascimento da Rocha 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, August 26, 2008 4:49 PM
  Subject: RE: [delphi-br] Emf para Jpg



  Fiz correções na rotina!

  { Precisa das units Windows e JPEG }
  procedure ConvertEmfToJpg(const AMetaFileName: string; AJPegFileName: string);
  var
  lMetaFile: TMetaFile;
  lJpgFile: TJPEGImage;
  lData: THandle;
  lHandle: HPALETTE;
  lFormat: Word;
  begin
  if not FileExists(AMetaFileName) then
  Exit;
  lMetaFile := TMetaFile.Create;
  try
  // Indica que o arquivo é EMF (Enhanced Meta File)
  lMetaFile.Enhanced := true;

  // Carrega o arquivo na memória
  lMetaFile.LoadFromFile(AMetaFileName);

  // Copia o conteúdo do arquivo para a área de transferência
  lMetaFile.SaveToClipboardFormat(lFormat, lData, lHandle);
  Clipboard.SetAsHandle(lData, lHandle);

  // Cria o JPEG onde o metafile será colado
  lJpgFile := TJPEGImage.Create;
  try
  lJpgFile.LoadFromClipboardFormat(
  lFormat, Clipboard.GetAsHandle(lFormat), 0);
  lJpgFile.SaveToFile(AJPEGFileName);
  finally
  lJpgFile.Free;
  end;
  finally
  lMetaFile.Free;
  end;
  end;

  Mais uma coisa, faça um uses tb para a unit Clipbrd!
  Cheque se agora funciona!

  ________________________________
  To: delphi-br@yahoogrupos.com.br
  From: [EMAIL PROTECTED]
  Date: Tue, 26 Aug 2008 16:38:19 -0300
  Subject: Re: [delphi-br] Emf para Jpg

  Sim meu amigo, ai que esta o mistério, as duas units estão na USES!
  mostra seguinte mensagem de erro:

  Types of actual and formal var parameters must be identical e para na linha

  lMetaFile.SaveToClipboardFormat(CF_BITMAP, lData, lHandle);

  Alex

  ----- Original Message -----
  From: Rubem Nascimento da Rocha
  To: delphi-br@yahoogrupos.com.br
  Sent: Tuesday, August 26, 2008 4:33 PM
  Subject: RE: [delphi-br] Emf para Jpg

  HPALETTE não é um objeto, e sim um tipo de dados definido na unit Windows! 
Alias, eu coloquei um comentário dizendo que a rotina precisaria de duas units: 
a Windows e a JPEG!
  Sds.

  ________________________________
  > To: delphi-br@yahoogrupos.com.br
  > From: [EMAIL PROTECTED]
  > Date: Tue, 26 Aug 2008 16:26:05 -0300
  > Subject: Re: [delphi-br] Emf para Jpg
  >
  >
  > Amigo, não acha o objeto "hPallete", sabe em qual unit esta?nem na internet 
eu achei.
  >
  > ----- Original Message -----
  > From: Rubem Nascimento da Rocha
  > To: delphi-br@yahoogrupos.com.br
  > Sent: Tuesday, August 26, 2008 3:24 PM
  > Subject: RE: [delphi-br] Emf para Jpg
  >
  > O Delphi possui suporte para arquivos WMF e EMF através da classe 
TMetaFile. Criei uma rotina a seguir para fazer essa conversão.
  >
  > { Precisa das units Windows e JPEG }
  > procedure ConvertEmfToJpg(const AMetaFileName: string; AJPegFileName: 
string);
  > var
  > lMetaFile: TMetaFile;
  > lJpgFile: TJPEGImage;
  > lData: THandle;
  > lHandle: hPallete;
  > begin
  > if not FileExists(AMetaFileName) then
  > Exit;
  > lMetaFile := TMetaFile.Create;
  > try
  > // Indica que o arquivo é EMF (Enhanced Meta File)
  > lMetaFile.Enhanced := true;
  >
  > // Carrega o arquivo na memória
  > lMetaFile.LoadFromFile(AMetaFileName);
  >
  > // Copia o conteúdo do arquivo para a área de transferência
  > lMetaFile.SaveToClipboardFormat(CF_BITMAP, lData, lHandle);
  > Clipboard.SetAsHandle(lData, lHandle);
  >
  > // Cria o JPEG onde o metafile será colado
  > lJpgFile := TJPEGImage.Create;
  > try
  > lJpgFile.LoadFromClipboardFormat(CF_BITMAP, 
Clipboard.GetAsHandle(CF_BITMAP), 0);
  > lJpgFile.SaveToFile(AJPEGFileName);
  > finally
  > lJpgFile.Free;
  > end;
  > finally
  > lMetaFile.Free;
  > end;
  > end;
  >
  > Veja se isso te ajuda. Não testei, criei essa rotina apenas com o que eu li 
a partir do help do Delphi.
  >
  > Boa sorte!
  > Sds.
  >
  > ________________________________
  > To: delphi-br@yahoogrupos.com.br
  > From: [EMAIL PROTECTED]
  > Date: Tue, 26 Aug 2008 14:44:45 -0300
  > Subject: [delphi-br] Emf para Jpg
  >
  > Pessoal alguem conhece uma forma de converter uma imagem EMF em JPG pelo 
Delphi??
  >
  > Obrigado.
  >
  > Alex
  >
  > __________________________________________________________
  > Cansado de espaço para só 50 fotos? Conheça o Spaces, o site de 
relacionamentos com até 6,000 fotos!
  > http://www.amigosdomessenger.com.br
  >
  > __________ Information from ESET NOD32 Antivirus, version of virus 
signature database 3385 (20080825) __________
  >
  > The message was checked by ESET NOD32 Antivirus.
  >
  > http://www.eset.com
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  >
  >

  __________________________________________________________
  Instale a Barra de Ferramentas com Desktop Search e ganhe EMOTICONS para o 
Messenger! É GRÁTIS!
  http://www.msn.com.br/emoticonpack

  __________ Information from ESET NOD32 Antivirus, version of virus signature 
database 3385 (20080825) __________

  The message was checked by ESET NOD32 Antivirus.

  http://www.eset.com

  [As partes desta mensagem que não continham texto foram removidas]

  __________________________________________________________
  Cansado de espaço para só 50 fotos? Conheça o Spaces, o site de 
relacionamentos com até 6,000 fotos!
  http://www.amigosdomessenger.com.br

   

  __________ Information from ESET NOD32 Antivirus, version of virus signature 
database 3385 (20080825) __________

  The message was checked by ESET NOD32 Antivirus.

  http://www.eset.com


[As partes desta mensagem que não continham texto foram removidas]

Responder a