IRONSOFTWAREHOME

IronPrint on macOS with .NET 8 (Apple Silicon)

Curtis Chau
Curtis Chau
Updated: 29 de junio de 2026

Ejecutar IronPrint en una aplicación de consola .NET 8 en macOS Apple Silicon puede fallar en el momento de la compilación debido a bibliotecas nativas faltantes, y Printer.GetPrinterNamesAsync() lanza en tiempo de ejecución.

System.PlatformNotSupportedException: System.Drawing.Common is not supported on this platform.
Text

macOS no incluye libgdiplus, la implementación de GDI+ de la que IronPrint y System.Drawing dependen, y un objetivo net8.0 simple nunca habilita las API específicas de plataforma para macOS. Ambas brechas deben cerrarse.

Solución

1. Instalar la Biblioteca Nativa GDI+

Instale libgdiplus a través de Homebrew para que el soporte GDI+ que Windows proporciona por defecto esté disponible en macOS:

brew install mono-libgdiplus
SHELL

Sin esta biblioteca, System.Drawing no tiene un backend nativo al que llamar.

2. Apuntar al Framework de macOS

Dirige tu .csproj al marco específico de macOS en lugar de un simple net8.0:

<TargetFramework>net8.0-macos</TargetFramework>
XML

Esto le dice a .NET que use las API de la plataforma macOS en lugar de los stubs multiplataforma.

Advertencia: net8.0-macos no es parte de las plantillas predeterminadas de aplicaciones de consola. Instale la carga de trabajo de macOS o comience desde una plantilla de aplicación de macOS para obtener soporte preconfigurado.

Un archivo de proyecto completo se ve así:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net8.0-macos</TargetFramework>
    <Nullable>enable</Nullable>
    <UseSystemDrawing>true</UseSystemDrawing>
  </PropertyGroup>
</Project>
XML

3. Use una API de Impresión Compatible

En macOS, llama a ShowPrintDialogAsync() para operaciones de impresión en lugar de depender de rutas de impresión exclusivas de Windows.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien estructurados y visualmente atractivos.

...
Leer más

¿Listo para empezar?

Nuget Downloads 46,090Versión:2026.9recién lanzado

Obtenga su Clave de Prueba de 30 días gratis al instante.
No se requiere tarjeta de crédito ni creación de cuenta
Biblioteca C# NuGet para PDF
Instalar con NuGet

Versión: 2026.9

PM > Install-Package IronPrint
nuget.org/packages/IronPrint/
  1. En el Explorador de Soluciones, haga clic derecho en Referencias, Administrar Paquetes NuGet
  2. Seleccione Examinar y busque "IronPrint"
  3. Seleccione el paquete e instale
C# PDF DLL
Descargar DLL

Versión: 2026.9

  1. Descargue y descomprima IronPrint en una ubicación como ~/Libs dentro de su directorio de Solución
  2. En Visual Studio Solution Explorer, haga clic derecho en Referencias. Seleccione Examinar, "IronPrint.dll"

Licencias desde $999

Key in blue circle

Obtenga su clave de prueba gratuita de 30 días al instante.

Your trial license will be sent to your email address

Sin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.

bullet_checkedNo se requiere tarjeta de crédito ni creación de cuentaSin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Reserve su Demostración en Vivo gratuita
Booking Badge

Confiado por millones de ingenieros en todo el mundo

Logos de clientes de Iron Software
Obtén tu Consulta Sin Compromiso
Completa el formulario a continuación o envía un correo a sales@ironsoftware.com
Tus detalles siempre serán mantenidos confidenciales.
Confiado por millones de ingenieros en todo el mundo
Logos de clientes de Iron Software
Obtenga su Clave de Prueba de 30 días gratis al instante.
No se requiere tarjeta de crédito ni creación de cuenta