1. Home
  2.   Heic
  3.   Formato de archivo.HEIC para .NET
FileFormat.HEIC para .NET

Formato de archivo.HEIC para .NET

 
 

Simplifique el proceso de lectura y conversión de imágenes HEIC usando la API de .NET

Edite imágenes sin esfuerzo con FileFormat.HEIC, una API .NET de código abierto y ligera, que simplifica la conversión y automatización de archivos HEIC.

FileFormat.HEIC para .NET revoluciona su experiencia de procesamiento de imágenes HEIC. En esta guía completa, profundizamos en las funcionalidades y beneficios de aprovechar FileFormat.HEIC, una API .NET liviana de código abierto, para manejar archivos HEIC con facilidad y sin esfuerzo.

HEIC, abreviatura de formato de archivo de imagen de alta eficiencia con imágenes codificadas HEVC (codificación de video de alta eficiencia), es un formato de imagen moderno desarrollado para reemplazar JPEG como formato de imagen predeterminado en dispositivos iOS. Si bien HEIC ofrece una calidad de imagen y compresión superiores, su compatibilidad entre plataformas sigue siendo un desafío. Muchas aplicaciones y plataformas carecen de soporte nativo para HEIC, lo que dificulta ver o editar estos archivos sin convertirlos.

FileFormat.HEIC surge como una poderosa solución para convertir sin problemas archivos HEIC a varios formatos, incluidos JPG, PNG, PDF y más. Esta API .NET liviana de código abierto simplifica las operaciones de imágenes HEIC y ofrece a los desarrolladores y usuarios una interfaz fácil de usar para manejar archivos HEIC sin esfuerzo.

FileFormat.HEIC está disponible en Openize License.< /p>

Características y beneficios clave

  • Conversión sin esfuerzo: Convierta archivos HEIC a formatos populares como JPG y PNG con unas pocas líneas de código.
  • Integración del decodificador HEVC: Utilice el decodificador HEVC integrado para decodificar archivos HEIC, lo que garantiza una conversión precisa y confiable.
  • Amplia compatibilidad con formatos: convierta archivos HEIC a una amplia gama de formatos, incluidos PDF y WEBP, lo que permite un uso versátil en diferentes plataformas y aplicaciones.
  • Código abierto y gratuito: disfrute de los beneficios de una solución de código abierto sin tarifas de licencia, haciéndola accesible para desarrolladores y usuarios de todos los niveles.
  • Integración perfecta con aplicaciones C#: Integre FileFormat.HEIC sin esfuerzo en sus aplicaciones C#, lo que permite una gestión perfecta de archivos HEIC dentro de sus flujos de trabajo existentes.

Previous Next

Cómo comenzar con FileFormat.HEIC para .NET

Comenzar a utilizar FileFormat.HEIC es rápido y fácil. Simplemente sigue estos pasos:

  • Instalar FileFormat.HEIC: instale el paquete FileFormat.HEIC a través del Administrador de paquetes NuGet o .NET CLI.
  • Integre con su proyecto: haga referencia a la biblioteca FileFormat.HEIC en su proyecto C#.
  • Empiece a convertir: utilice la sencilla API proporcionada por FileFormat.HEIC para convertir archivos HEIC al formato deseado.

La forma recomendada de instalar FileFormat.HEIC para .NET es utilizar NuGet. Utilice el siguiente comando para una instalación sin problemas.

Instalar FileFormat.HEIC para .NET mediante NuGet

NuGet> Install-Package FileFormat.HEIC 
También puedes descargarlo directamente desde GitHub.

Leer archivo HEIC en una matriz en C#

Este fragmento de código carga de manera eficiente un archivo de imagen HEIC, extrae sus datos de píxeles en el formato especificado y los almacena en una matriz para operaciones posteriores.

  • Abra el archivo HEIC llamado "filename.heic" usando FileStream.
  • Cargue la imagen HEIC desde la secuencia de archivos en un objeto HeicImage.
  • Extraiga datos de píxeles de la imagen HEIC en formato ARGB32 y guárdelos en una matriz de números enteros.

Copie y pegue el siguiente fragmento de código en su archivo principal y ejecute el programa.

Leer el archivo .heic en una matriz int con datos Argb32

 
using (var fs = new FileStream("filename.heic", FileMode.Open))
{
    HeicImage image = HeicImage.Load(fs);
    int[] pixels = image.GetInt32Array(Heic.Decoder.PixelFormat.Argb32);
}

Leer archivo HEIC en WriteableBitmap en C#

El siguiente código ilustra cómo abrir un archivo de imagen HEIC existente, extraer sus datos de píxeles y crear un objeto WriteableBitmap para su posterior procesamiento:

  • Abra el archivo HEIC llamado "filename.heic" usando FileStream.
  • Cargue la imagen HEIC desde la secuencia de archivos en un objeto HeicImage.
  • Extraiga datos de píxeles de la imagen HEIC en formato BGRA32 y guárdelos en una matriz.
  • Obtenga el ancho y alto de la imagen HEIC.
  • Cree un objeto WriteableBitmapcon el ancho, alto y formato de píxeles especificados.
  • Defina un rectángulo que cubra toda el área del mapa de bits.
  • Escriba los datos de píxeles extraídos en el objeto WriteableBitmap.

Copie y pegue el siguiente fragmento de código en su archivo principal y ejecute el programa.

Leer el archivo .heic en System.Windows.Media.Imaging.WriteableBitmap

 
using (var fs = new FileStream("filename.heic", FileMode.Open))
{
    HeicImage image = HeicImage.Load(fs);
    
    var pixels = image.GetByteArray(Heic.Decoder.PixelFormat.Bgra32);
    var width = (int)image.Width;
    var height = (int)image.Height;
    
    WriteableBitmap wbitmap = new WriteableBitmap(width, height, 72, 72, PixelFormats.Bgra32, null);
    Int32Rect rect = new Int32Rect(0, 0, width, height);
    wbitmap.WritePixels(rect, pixels, 4 * width, 0);
}

Leer archivo HEIC en mapa de bits en C#

El siguiente código ilustra cómo abrir un archivo de imagen HEIC existente, extraer sus datos de píxeles y crear un objeto de mapa de bits para su posterior procesamiento:

  • Abra el archivo HEIC llamado "filename.heic" usando FileStream.
  • Cargue la imagen HEIC desde la secuencia de archivos en un objeto HeicImage.
  • Extraiga los datos de píxeles de la imagen HEIC en formato ARGB32 y almacenelos en una matriz int.
  • Obtenga el ancho y alto de la imagen HEIC.
  • Cree un objeto Bitmapcon el ancho y alto especificados.
  • Establezca datos de píxeles para cada píxel del mapa de bits.

Copie y pegue el siguiente fragmento de código en su archivo principal y ejecute el programa.

Leer el archivo .heic en System.Drawing.Common.Bitmap

 
using (var fs = new FileStream("filename.heic", FileMode.Open))
{
    HeicImage image = HeicImage.Load(fs);
    
    var pixels = image.GetInt32Array(Heic.Decoder.PixelFormat.Argb32);
    var width = (int)image.Width;
    var height = (int)image.Height;
    var i = 0;

    Bitmap myBitmap = new Bitmap(width, height);
    for (int y = 0; y < height; y++)
        for (int x = 0; x < width; x++)
            myBitmap.SetPixel(x, y, Color.FromArgb(pixels[i++]));
}

Convertir HEIC a JPG mediante programación en C#

El código proporcionado demuestra cómo cargar mediante programación un archivo de imagen HEIC, convertirlo a una imagen JPEG y guardarlo como "output.jpg" usando C#. Aquí hay un desglose de los pasos:

  • Abra el archivo HEIC llamado "filename.heic" en modo lectura usando FileStream.
  • Cargue la imagen HEIC desde la secuencia de archivos en un objeto HeicImage.
  • Extraiga los datos de píxeles de la imagen HEIC en formato BGRA32 y almacenelos en una matriz de bytes.
  • Recupera el ancho y el alto de la imagen HEIC.
  • Cree un objeto WriteableBitmapcon el ancho, alto, DPI, formato de píxel y paleta especificados.
  • Defina un rectángulo que cubra toda el área del mapa de bits.
  • Escriba los datos de píxeles extraídos en el objeto WriteableBitmap.
  • Cree o abra una secuencia de archivos para guardar la imagen convertida como "salida.jpg".
  • Cree un objeto JpegBitmapEncoderpara codificar el mapa de bits como una imagen JPEG.
  • Agregue el marco de mapa de bits al codificador.
  • Guarde la imagen codificada en la secuencia de archivos.

Copie y pegue el siguiente fragmento de código en su archivo principal y ejecute el programa.

Convierta un archivo .heic a .jpg usando WriteableBitmap

 
using (var fs = new FileStream("filename.heic", FileMode.Open))
{
    HeicImage image = HeicImage.Load(fs);
    
    var pixels = image.GetByteArray(Heic.Decoder.PixelFormat.Bgra32);
    var width = (int)image.Width;
    var height = (int)image.Height;
    
    var wbitmap = new WriteableBitmap(width, height, 72, 72, PixelFormats.Bgra32, null);
    var rect = new Int32Rect(0, 0, width, height);
    wbitmap.WritePixels(rect, pixels, 4 * width, 0);
    
    using FileStream saveStream = new FileStream("output.jpg", FileMode.OpenOrCreate);
    JpegBitmapEncoder encoder = new JpegBitmapEncoder();
    encoder.Frames.Add(BitmapFrame.Create(wbitmap));
    encoder.Save(saveStream);
}

Convertir colección HEIC en un conjunto de archivos PNG mediante programación en C#

El código proporcionado demuestra cómo cargar mediante programación un archivo de imagen de colección HEIC, convertirlo en un conjunto de archivos PNG y guardarlo usando C#. Aquí hay un desglose de los pasos:

  • Abra el archivo HEIC llamado "filename.heic" en modo lectura usando FileStream.
  • Cargue la imagen HEIC desde la secuencia de archivos en un objeto HeicImage.
  • Para cada fotograma de la imagen, haga lo siguiente:
    • Extraiga los datos de píxeles de la imagen HEIC en formato BGRA32 y almacenelos en una matriz de bytes.
    • Recupera el ancho y el alto de la imagen HEIC.
    • Cree un objeto WriteableBitmapcon el ancho, alto, DPI, formato de píxel y paleta especificados.
    • Defina un rectángulo que cubra toda el área del mapa de bits.
    • Escriba los datos de píxeles extraídos en el objeto WriteableBitmap.
    • Cree o abra una secuencia de archivos para guardar la imagen convertida como "output.png".
    • Cree un objeto PngBitmapEncoderpara codificar el mapa de bits como una imagen PNG.
    • Agregue el marco de mapa de bits al codificador.
    • Guarde la imagen codificada en la secuencia de archivos.

Copie y pegue el siguiente fragmento de código en su archivo principal y ejecute el programa.

Convertir colección .heic en un conjunto de archivos .png

 
using (var fs = new FileStream("filename.heic", FileMode.Open))
{
    HeicImage image = HeicImage.Load(fs);

    foreach (var key in image.Frames.Keys)
    {
        var width = (int)image.Frames[key].Width;
        var height = (int)image.Frames[key].Height;
        var pixels = image.Frames[key].GetByteArray(FileFormat.Heic.Decoder.PixelFormat.Bgra32);

        var wbitmap = new WriteableBitmap(width, height, 72, 72, PixelFormats.Bgra32, null);
        var rect = new Int32Rect(0, 0, width, height);
        wbitmap.WritePixels(rect, pixels, 4 * width, 0);

        using FileStream saveStream = new FileStream("output"+key+".png", FileMode.OpenOrCreate);
        PngBitmapEncoder encoder = new PngBitmapEncoder();
        encoder.Frames.Add(BitmapFrame.Create(wbitmap));
        encoder.Save(saveStream);
    }
}

FileFormat.HEIC ofrece una API intuitiva, compatibilidad integral con formatos e integración perfecta con aplicaciones C#, lo que permite a los desarrolladores y usuarios administrar archivos HEIC sin esfuerzo. Ya sea que esté convirtiendo archivos HEIC para uso web, archivando fotos de iPhone en una PC o compartiéndolas en diferentes plataformas, FileFormat.HEIC simplifica el proceso y garantiza una eficiencia y calidad óptimas en cada paso.

Explore nuestro repositorio de GitHub para contribuir, sugerir mejoras y mejorar esta API de código abierto: FileFormat.HEIC -para-.NET

 Español