Cómo convertir un archivo XLTm a una imagen EMF

Sheetize ofrece una API simple y de alto rendimiento que permite transformar una plantilla de Excel con macros (.xltm) en una nítida imagen EMF (Enhanced Metafile). Es ideal para generar gráficos escalables, incrustar vistas previas de libros de trabajo en documentación o crear informes basados en vectores sin exponer los datos originales de la hoja.

¿Por qué usar Sheetize para la conversión XLTm‑a‑EMF?

  • Fidelidad completa – conserva el formato de celdas, gráficos e imágenes incrustadas mientras produce una imagen vectorial que se escala sin pérdida.
  • Rápido y escalable – optimizado para .NET, funciona en Windows, macOS y Linux.
  • Resolución personalizable – define DPI o factor de escala según tus necesidades de precisión.
  • Sin dependencias – no requiere instalaciones de Office ni herramientas externas.

Primeros pasos

Añade el paquete Sheetize.ImageConverter a tu proyecto .NET (a través de NuGet) y llama al método ImageConverter.Process.

Código de ejemplo en C#

using Sheetize;

var loadOptions = new LoadOptions
{
    // Ruta al archivo XLTm de origen
    InputFile = @"D:\Templates\InvoiceTemplate.xltm"
};

var saveOptions = new ImageSaveOptions
{
    // Archivo de salida – la extensión EMF indica el formato EMF
    OutputFile = @"D:\Images\InvoiceTemplate.emf",

    // Opcional: controla la resolución de la imagen (DPI) – EMF es vectorial,
    // pero el DPI influye en el tamaño predeterminado
    HorizontalResolution = 300,
    VerticalResolution = 300,

    // Opcional: factor de escala para un control más fino (1.0 = 100 %)
    // ScaleFactor = 1.0
};

ImageConverter.Process(loadOptions, saveOptions);

El fragmento carga InvoiceTemplate.xltm y genera InvoiceTemplate.emf usando la resolución especificada (y, opcionalmente, el factor de escala).

Opciones clave para la salida EMF

  • HorizontalResolution / VerticalResolution – definen el DPI de referencia; valores más altos generan un tamaño predeterminado mayor antes del escalado.
  • ScaleFactor – multiplica el tamaño total del EMF generado (por ejemplo, 2.0 duplica las dimensiones).
  • BackgroundColor – establece un color de fondo si el libro contiene áreas transparentes.

Buenas prácticas

  1. Utiliza 300 DPI o más cuando el EMF se imprimirá; un DPI menor basta para vistas previas en pantalla.
  2. Ajusta ScaleFactor si el gráfico resultante aparece demasiado pequeño o grande en la aplicación de destino.
  3. Abre el EMF generado en un visor de gráficos vectoriales (p. ej., Inkscape o el Explorador de Windows) para verificar que todos los elementos se rendericen correctamente.
 Español