Página 1 de 1

Imagen más liviana

NotaPublicado: 2012-07-29 09:14 @426
por BigBear
Hola tengo el siguiente código.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use Win32::Clipboard;
  2. use Win32::GuiTest qw(SendKeys);
  3.  
  4. SendKeys("%{PRTSCR}");
  5.  
  6. my $a = Win32::Clipboard::GetBitmap();
  7.  
  8. open (FOTO,">".$numero.".bmp");
  9. binmode(FOTO);
  10. print FOTO $a;
  11. close FOTO;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


El problema es que las imágenes devueltas salen de una 1Mb para arriba, necesito que sean más livianas, he probado cambiando la extensión bmp por otra y sigue el mismo problema también probé renombrando la imagen y aún así sigue siendo una imagen pesada.

¿ Alguien me puede ayudar ?

Re: Imagen más liviana

NotaPublicado: 2012-07-29 10:11 @466
por explorer
Creo que es una limitación del Windows, desde hace muchos años: el único formato de imagen oficial del sistema operativo es el BMP, y solo tiene un método de compresión (el RLE) (más información en la Wikipedia) pero, seguramente, las operaciones con el portapapeles, llamando a la API directamente, no lo tienen en cuenta.

Ahora bien, lo que siempre puedes hacer es usar un conversor para pasar la imagen a otro formato. Por ejemplo, con Imager (parece que no tiene soporte para BMP, ya que no es estándar), o PerlMagick.