Convertir DGN a PSD con GroupDocs.Conversion para .NET

Introducción

Si necesita convertir dibujos AutoCAD DGN en archivos Photoshop PSD, groupdocs conversion .net es la biblioteca confiable que realiza el trabajo pesado. En este tutorial descubrirá por qué esta API es una opción principal para desarrolladores, cómo instalarla y el código exacto que necesita para ejecutar una transformación DGN‑a‑PSD impecable. Al final, estará listo para integrar la lógica de conversión en cualquier aplicación .NET y mejorar la eficiencia de su flujo de trabajo.

Respuestas rápidas

  • ¿Qué biblioteca maneja la conversión DGN → PSD? GroupDocs.Conversion for .NET.
  • ¿Necesito una licencia para producción? Sí – una licencia completa elimina los límites de prueba.
  • ¿Puedo convertir archivos DGN de varias páginas? Cada página se guarda como un archivo PSD individual.
  • ¿Qué versiones de .NET son compatibles? .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6+.
  • ¿Cuánto tiempo lleva una conversión típica? Aproximadamente 0.5 s por página para archivos de menos de 200 páginas en un servidor estándar.

¿Qué es groupdocs conversion .net?

GroupDocs.Conversion para .NET es una API de alto‑rendimiento que permite la conversión programática entre 50+ formatos de documentos, imágenes y CAD —incluyendo DGN a PSD— sin requerir aplicaciones externas. Procesa los archivos en memoria, lo que reduce la sobrecarga de E/S y mejora la latencia. La biblioteca también ofrece soporte incorporado para streaming, procesamiento por lotes y registro detallado, lo que la hace adecuada tanto para pequeñas utilidades como para pipelines empresariales a gran escala.

¿Por qué usar GroupDocs.Conversion para DGN → PSD?

GroupDocs.Conversion ofrece una amplia cartera de formatos, arquitectura escalable y renderizado de alta fidelidad. Puede manejar archivos DGN de cientos de páginas mientras mantiene el uso de memoria por debajo de 150 MB mediante streaming de páginas una a una. La precisión se mantiene en 99.9 % de fidelidad, y la conversión típica de un archivo DGN de 150 páginas se completa en menos de 45 segundos en una CPU de 2.4 GHz.

Requisitos previos

  • GroupDocs.Conversion for .NET (Versión 25.3.0 o posterior)
  • Un entorno de desarrollo .NET (Visual Studio 2022 o VS Code)
  • Conocimientos básicos de C#

¿Cómo instalo GroupDocs.Conversion para .NET?

Puede instalar el paquete a través de NuGet. Abra la Package Manager Console en Visual Studio y ejecute:

Install-Package GroupDocs.Conversion

O, si prefiere la CLI de .NET, ejecute:

dotnet add package GroupDocs.Conversion

Ambos comandos descargan los binarios estables más recientes y añaden las referencias necesarias a su archivo de proyecto.

¿Cómo puedo obtener una licencia de GroupDocs conversion?

Una licencia válida desbloquea todas las funciones y elimina las marcas de agua. Elija una de las siguientes opciones:

  • Prueba gratuita: Limitada a 5 conversiones por día.
  • Licencia temporal: Conjunto completo de funciones durante 30 días, ideal para evaluación.
  • Licencia de pago: Licenciamiento por desarrollador o para todo el sitio para uso en producción.

Visite la página oficial de compra o la página de licencia temporal para obtener más detalles.

¿Cómo inicializo el motor de Conversion?

La clase ConversionConfig almacena configuraciones globales como rutas de almacenamiento e información de licencia. Inicialícela una vez al iniciar la aplicación:

var config = new ConversionConfig
{
    LicensePath = @"C:\Licenses\GroupDocs.Conversion.lic",
    StoragePath = @"C:\ConvertedFiles"
};

La clase Converter realiza la conversión real del archivo basada en la configuración proporcionada.

Cómo convertir un archivo DGN a PSD paso a paso

Cargue el DGN de origen, configure las opciones de PSD y transmita cada página a un archivo PSD separado. El proceso está encapsulado en tres pasos concisos.

Paso 1: Preparar directorios de salida y plantilla de nombres

Defina dónde se almacenarán los archivos PSD resultantes y cómo se nombrarán:

string outputFolder = Path.Combine(config.StoragePath, "DgnToPsd");
Directory.CreateDirectory(outputFolder);
string fileTemplate = Path.Combine(outputFolder, "Page_{0}.psd");

Paso 2: Crear un manejador de stream para cada página

El método auxiliar SavePage escribe el arreglo de bytes de cada página a un flujo de archivo, asegurando una correcta liberación:

void SavePage(Stream pageStream, int pageNumber)
{
    string filePath = string.Format(fileTemplate, pageNumber);
    using (var file = new FileStream(filePath, FileMode.Create, FileAccess.Write))
    {
        pageStream.CopyTo(file);
    }
}

Paso 3: Cargar el DGN y ejecutar la conversión

Instancie el Converter, configure las opciones de PSD y recorra las páginas:

using (var converter = new Converter("sample.dgn", config))
{
    var options = new PsdConvertOptions();
    var pages = converter.GetPages();

    int pageIndex = 1;
    foreach (var page in pages)
    {
        using (var stream = new MemoryStream())
        {
            converter.Convert(page, stream, options);
            SavePage(stream, pageIndex++);
        }
    }
}

El código anterior lee cada página DGN, la convierte a un stream PSD y la guarda usando el método auxiliar SavePage.

¿Cómo manejo archivos DGN grandes de manera eficiente?

Al trabajar con archivos de más de 200 MB, habilite el modo de streaming para evitar cargar todo el documento en memoria. Esta bandera indica al motor que procese las páginas una a la vez, manteniendo bajo el uso máximo de memoria:

var config = new ConversionConfig { EnableStreaming = true };

Problemas comunes y soluciones

  • Ruta de archivo no encontrada: Use rutas absolutas o Path.Combine con AppDomain.CurrentDomain.BaseDirectory.
  • Dependencias faltantes: Verifique que la versión del paquete NuGet coincida con el runtime (.NET Framework vs .NET Core).
  • Errores de licencia: Asegúrese de que el archivo .lic sea accesible y la ruta esté configurada correctamente en ConversionConfig.

Preguntas frecuentes

P: ¿Puedo convertir un archivo DGN protegido con contraseña?
R: Sí. Pase la contraseña al constructor Converter: new Converter("file.dgn", config, "password").

P: ¿La conversión conserva la información de capas?
R: GroupDocs.Conversion conserva las capas vectoriales como grupos PSD separados, lo que permite el post‑procesamiento en Photoshop.

P: ¿Es posible convertir en lote varios archivos DGN?
R: Absolutamente. Recorra un directorio, instancie un Converter para cada archivo y reutilice el mismo ConversionConfig.

P: ¿Cuáles son los requisitos del sistema para un rendimiento óptimo?
R: Se recomienda una CPU ≥ 2.4 GHz, 8 GB de RAM y almacenamiento SSD para archivos de menos de 500 páginas.

P: ¿Cómo registro los errores de conversión para monitoreo?
R: Suscríbase al evento Converter.OnError y escriba los detalles en su framework de registro preferido.

Conclusión

Ahora dispone de una solución completa y lista para producción para convertir dibujos DGN a archivos PSD usando groupdocs conversion .net. El amplio soporte de formatos de la API, su alta fidelidad y capacidades de streaming la hacen ideal tanto para pequeñas utilidades como para pipelines empresariales a gran escala. Explore formatos adicionales, ajuste las opciones de conversión e integre este flujo de trabajo en sus servicios .NET existentes para desbloquear nuevas posibilidades.


Última actualización: 2026-06-10
Probado con: GroupDocs.Conversion 25.3.0 para .NET
Autor: GroupDocs

Recursos

Install-Package GroupDocs.Conversion -Version 25.3.0
dotnet add package GroupDocs.Conversion --version 25.3.0
using System;
using GroupDocs.Conversion;

namespace DgnToPsdConversion
{
    class Program
    {
        static void Main(string[] args)
        {
            // Initialize the Converter object with your source file path
            using (Converter converter = new Converter("path_to_your_dgn_file.dgn"))
            {
                // Conversion logic will be implemented here
            }
        }
    }
}
string outputFolder = @"YOUR_OUTPUT_DIRECTORY/";
string outputFileTemplate = Path.Combine(outputFolder, "converted-page-{0}.psd");
Func<SavePageContext, Stream> getPageStream = savePageContext => 
    new FileStream(string.Format(outputFileTemplate, savePageContext.Page), FileMode.Create);
using (Converter converter = new Converter(@"YOUR_DOCUMENT_DIRECTORY\sample.dgn"))
{
    // Set up conversion options for PSD format
    ImageConvertOptions options = new ImageConvertOptions { Format = GroupDocs.Conversion.FileTypes.ImageFileType.Psd };
    
    // Perform the conversion using the defined stream handler
    converter.Convert(getPageStream, options);
}

Tutoriales relacionados