Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   Como instalar el paquete grafico ImageFileLib (https://www.clubdelphi.com/foros/showthread.php?t=86669)

elistraus 14-09-2014 07:15:08

Como instalar el paquete grafico ImageFileLib
 
1 Archivos Adjunto(s)
Saludos a la comunidad,
Me estoy iniciando en Delphi y estoy haciendo un proyecto de cero, al colocar una imagen al formulario no me da la opción para colocar archivos *.png, por lo que en otro hilo http://www.clubdelphi.com/foros/showthread.php?t=15959, recomiendan instalar un paquete llamado ImageFileLib, ya lo descargue pero me pueden ayudar a como instalarlo, ya que parece que es distinto como al instalar componentes.

En el archivo vienen varias carpetas y no por cual empezar

Saludos desde chile :D

radenf 14-09-2014 14:38:22

Hola elistraus:

¿Qué versión de Delphi utilizas?
Porque a partir de D2007 el soporte para archivos .png viene incorporado y desde D2010 se incluye TWicImage, que soporta múltiples formatos de archivos gráficos, incluyendo .png

Cita:

TWICImage is an encapsulation of a Microsoft Windows Imaging Component.
A TWICImage is an encapsulation of a Microsoft Windows Imaging Component. A WIC image is a container that allows loading a large variety of image formats. You can use an instance of TWICImage to load, store, and display Bitmap, JPEG, PNG, GIF, TIFF, or any other file format registered using the WIC API.
TWICImage is only available on Windows XP SP3 or higher operating systems and relies on DirectX runtime.
Nunca he utilizado ImageFileLib y por los archivos que trae yo tampoco sabría como instalarlo, no sé si creando un nuevo package e insertando los archivos .pas de la carpeta DelphiSource.
Para los formatos no soportados por Delphi yo utilizo TWICImage o la librería Vampyre, que puedes revisar en este LINK

Saludos y ojalá te sirva.

elistraus 14-09-2014 18:27:58

Gracias por responder randef,
La versión que ocupo es Delphi 7 enterprice en windows 7 y estoy siguiendo un video tutorial donde el expositor programa en D7 igual, y el tiene soportado los archivos .png al cargar una imagen, ahí me dí cuenta que no tengo soportado los .png

Haber si alguien mas ha arreglado o ha sabido como arreglar esto, ya que por lo que leí las imágenes en .png se hacen mas ligeros los ejecutables

Saludos desde chile :D

radenf 14-09-2014 21:14:15

Estimado elistraus:

Prueba con el componente TPNGImage de Gustavo Daud.
Puedes descargarlo desde este LINK
También puedes revisar este LINK que trata tu problema.

Salu2

nlsgarcia 14-09-2014 21:26:29

elistraus,

Cita:

Empezado por elistraus
...estoy haciendo un proyecto (Delphi 7 Enterprice en Windows 7)...al colocar una imagen al formulario no me da la opción para colocar archivos *.png...

:rolleyes:

Revisa esta información:



Tomado de : Useful Delphi packages

Cita:

Empezado por elistraus
...recomiendan instalar un paquete llamado ImageFileLib, ya lo descargue pero me pueden ayudar a como instalarlo...

:rolleyes:

Revisa esta información:



Tomado de : ImageFileLib

Te comento:

1- ImageFileLib y PNGImage no son componentes, son librerías de manejo de imágenes.

2- Para poder usar tanto ImageFileLib como PNGImage en Delphi, debes incluir el directorio de units (.pas) de ambas en : Tools->Enviroment Options->Library->Library path, como se muestra en la siguiente imagen:



Espero sea útil :)

Nelson.

radenf 14-09-2014 22:16:02

Muchas gracias Nelson por aclarar el punto de las librerías, con eso no debiera costar nada instalar ImageLib, que era lo que inicialmente preguntaba elistraus, bastando asignar el path de la librería.
El link de Useful Delphi Packages no se lo quise sugerir, porque a mí me dió unas advertencias de privacidad y opté por cerrar la página.

Salu2

elistraus 15-09-2014 00:57:15

Gracias nlsgarcia,
ese era el problema entonces, que son librerias y no componentes, ya me sonaba raro :D, sabia que tenia otro tratamiento,,,
Con esto debería solucionar mi problema, lo voy a realizar y lo comento para ver como me fue

Gracias a los 2 por dedicar su tiempo

Saludos desde chile :D

elistraus 15-09-2014 04:50:11

Nelson,
He puesto la carpeta completa en Lib y le he agregado el path de nombre delphiSource ya que dentro de ella están todos los .pas





Pero, parece que a lo mejor me falta algo como compilar porque no me carga el soporte a png, quiero agregar que para colocar la imagen he ocupado el componente additional que viene en la paleta de los componentes




Todavía no puedo ver la luz :(

Saludos desde chile :D

nlsgarcia 15-09-2014 07:20:58

elistraus,

Cita:

Empezado por elistraus
...He puesto la carpeta completa en Lib y le he agregado el path de nombre delphiSource...parece que a lo mejor me falta algo...no me carga el soporte a png...

:rolleyes:

Te sugiero, no colocar ningún componente o librería dentro del directorio de Delphi en 'C:\Program Files', una mejor opción es crear un directorio de componentes y librerías específicamente para dichos casos, por ejemplo : 'C:\DelphiAddOns'

Revisa este código:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtDlgs, StdCtrls,
  PNGLoader, LinarBitmap, ExtCtrls, FileUtils;

type
  TForm1 = class(TForm)
    Button1: TButton;
    OpenPictureDialog1: TOpenPictureDialog;
    Image1: TImage;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

// Inicializa la aplicación
procedure TForm1.FormCreate(Sender: TObject);
begin
   Image1.Stretch := True;
   Caption := 'Test ImageFileLib';
end;

// Permite cargar y visualizar imágenes PNG en un componente TImage
procedure TForm1.Button1Click(Sender: TObject);
begin
   OpenPictureDialog1.Filter := 'All images PNG | *.png' + BitmapLoaders.GetLoadFilter;
   if OpenPictureDialog1.Execute then
   with TLinearBitmap.Create do
   try
      Image1.Picture := nil;
      LoadFromFile(OpenPictureDialog1.FileName);
      AssignTo(Image1.Picture.Bitmap);
      Caption := 'Test ImageFileLib : ' + OpenPictureDialog1.FileName;
   finally
      Free;
   end;
end;

end.
El código anterior en Delphi 7 bajo Windows 7 Professional x32, permite cargar y visualizar imágenes PNG en el componente TImage por medio de la librería ImageFileLib, como se muestra en las siguientes imágenes:





Nota: Te sugiero revisar la carpeta Demo que viene con la librería ImageFileLib, la cual trae un ejemplo que permite cargar y visualizar diferentes formatos de imágenes, por medio de sus unidades especializadas : ICOLoader, JPEGLoader, PNGLoader, HIPSLoader, BMPLoader, PCXLoader, WMFLoader.

Espero sea útil :)

Nelson.

elistraus 15-09-2014 08:05:25

Buenas nlsgarcia,
bueno ya deje la cagada ya al parecer :), me puse a buscar en la web y descubrí que para cargar la librería tenía que hacer un nuevo proyecto de tipo package ya que en el directorio de DelphiSource solo vienen los units, esto de la librería ImageFileLib,

de principios lo hice así y me dio error al compilar, me faltaba un componente GifImagen si mal me recuerdo, así lo deje de lado y compile PNGImage-156, abrí mi proyecto y me dio error al colocar la imagen png, error de memoria (no lo anoté :P)

En la documentación de PNGImage dice que se puede utilizar un utilitario para compilar librerias de nombre dclusr.dpk, así que ocupe ese y volvi a compilar ImageFileLib y me dio un error con ICOLoader así que decidí remover el .pas del ICOLoader y compile e instalé :D

ahora cuando abro D7 me da un mensaje

"Runtime error 216 at 40005A0C"

le doy aceptar abro mi proyecto y veo si puedo cargar archivos png y en el listado de los archivos soportados me salen
"All(*.mng, *.png, *.pcx, *.hips, *.hip, *.gif, *.png, *jpg, *jpge, etc)"

me carga la imagen png en el formulario sin problemas hecho a correr el proyecto y va bien, pero creo que a lo mejor instalé mal el PNGImagen y por eso me da el error al ejecutar D7 :D

Como lo puedo eliminar, yo creo que eliminándolo se va el error no??

Hey,,, Gracias por tu ayuda
Pero metiendo mano se aprende, igual aprendí algo nuevo sobre la compilación de las librerías y tienes toda la razón voy a dejar los componentes y librerías en carpetas apartes de las de D7,,,


Saludos desde chile :D

nlsgarcia 15-09-2014 08:23:33

elistraus,

Cita:

Empezado por elistraus
...me puse a buscar en la web y descubrí que para cargar la librería tenía que hacer un nuevo proyecto de tipo package ya que en el directorio de DelphiSource solo vienen los units, esto de la librería ImageFileLib...

:confused:
Cita:

Empezado por elistraus
...volví a compilar ImageFileLib...ahora cuando abro Delphi 7 me da un mensaje..."Runtime error 216 at 40005A0C"...¿Como lo puedo eliminar?, yo creo que eliminándolo se va el error ¿no?...

:cool:

Te comento:

1- Revisa todo lo mencionado en el Msg #5 sobre la inclusión del, path de las librerías ImageFileLib y PNGImage a Delphi.

2- Revisa y prueba el ejemplo del Msg #9 el cual es, totalmente funcional según se muestra en las imágenes :rolleyes:

3- Para eliminar un paquete debes ir a : Component->Install Packages->Design packages, buscar el paquete a eliminar y presionar remove.

Nota: Las librerías ImageFileLib y PNGImage, son librerías de imagenes independientes una de la otra, no se requiere que estén instaladas ambas para el funcionamiento individual de ninguna de estas.

Suerte en tu proyecto ^\||/

Nelson.


La franja horaria es GMT +2. Ahora son las 11:20:41.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi