Lavorare con le immagini GIF in Delphi

Anche se Delphi non supporta nativamente i formati di file di immagini GIF (come BMP o JPEG), ci sono alcuni ottimi componenti (sorgente gratuita) disponibile in rete, che aggiunge la possibilità di visualizzare e manipolare immagini GIF in esecuzione e in fase di progettazione a qualsiasi Delphi applicazione.

Nativamente, Delphi supporta immagini BMP, ICO, WMF e JPG. Questi possono essere caricati in un componente compatibile con la grafica (come TImage) e utilizzato in un'applicazione.

È importante notare che, a partire dalla versione 2006 di Delphi, il formato GIF è supportato dal VCL. Per utilizzare immagini GIF animate è comunque necessario un controllo di terze parti.

Le GIF - o i formati di interscambio grafico - sono il formato grafico (bitmap) maggiormente supportato sul Web, sia per immagini fisse che per animazioni.

Usando in Delphi

Nativamente, Delphi (fino alla versione 2007) non supporta le immagini GIF, a causa di alcuni aspetti legali problemi di Copyright. Ciò significa che quando si rilascia un componente TImage su un modulo, utilizzare l'Editor immagini (fare clic sul pulsante con i puntini di sospensione nel Valore colonna per proprietà, come la proprietà Picture di TImage) per caricare un'immagine in TImage, non sarà disponibile un'opzione per caricare GIF immagini.

instagram viewer

Fortunatamente, ci sono alcune implementazioni di terze parti su Internet che forniscono pieno supporto per il formato GIF:

  • TGIFImage: gratuito con sorgente (una versione del TGIFImage di Anders Melander portato su Delphi 7). Completa implementazione TGraphic del formato grafico GIF. Legge, scrive e visualizza GIF animate e trasparenti e può convertire da e verso qualsiasi formato supportato da TGraphic (ad esempio TBitmap, TJPEGImage, TIcon, TMetaFile, ecc.). Implementa la specifica GIF87a e GIF89a completa e le estensioni GIF più comuni. Le funzionalità avanzate includono:
    • Si integra con TPicture per aggiungere il supporto GIF ai componenti TImage, TOpenPictureDialog e TSavePictureDialog. Funziona anche in fase di progettazione.
    • Importa immagini con più di 256 colori utilizzando la quantizzazione del colore e 6 diversi metodi di dithering (ad es. Floyd-Steinberg).
    • Motore di disegno multi-thread.
    • L'ottimizzatore GIF riduce le dimensioni delle tue GIF.
    • Convertitore GIF in AVI e AVI in GIF.
  • Libreria di immagini GraphicEx: un addendum a Graphics.pas di Delphi per consentire all'applicazione di caricare molti formati di immagini comuni. Questa libreria è progettata principalmente per caricare immagini come sfondo (pulsanti, moduli, barre degli strumenti) e trame (DirectX, OpenGL) o per la navigazione e la modifica delle immagini purché non sia necessario salvarle immagini. Attualmente, solo TTargaGraphic supporta anche il salvataggio di un'immagine. GraphicEx è open source sotto la Mozilla Public License (MPL).

Questo è tutto. Ora tutto ciò che devi fare è scaricare uno dei componenti e iniziare a utilizzare le immagini gif nelle tue applicazioni.
Ad esempio puoi:

  • Memorizza immagini GIF in a Banca dati tavolo. Avrai bisogno dell'immagine GIF "numeri magici."
  • Mostra grafica GIF come glifo su uno SpeedButton.
  • Memorizza la grafica GIF e un file HTML come a risorsa dentro sono ex.