IRONSOFTWAREHOME

在macOS的IronPrint與.NET 8 (蘋果矽片)

Curtis Chau
Curtis Chau
Updated: 2026年6月29日

在Apple Silicon macOS上運行IronPrint的.NET 8控制台應用程式可能在建構時由於缺少本機程式庫而失敗,並且Printer.GetPrinterNamesAsync()在運行時引發錯誤。

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

macOS不提供net8.0目標從未啟用macOS特定的平臺API。這兩個缺口必須填補。

解決方案

1. 安裝本機GDI+程式庫

通過Homebrew安裝libgdiplus,以便macOS可以使用Windows預設提供的GDI+支援:

brew install mono-libgdiplus
SHELL

沒有這個程式庫,System.Drawing沒有本機後端可以調用。

2. 針對macOS框架

將您的net8.0

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

這告訴.NET使用macOS平臺API而不是跨平臺stub。

警告: net8.0-macos並不是預設控制台應用程式模板的一部分。 安裝macOS工作負載或從macOS應用程式模板開始以獲得預配置的支援。

完整的專案文件看起來像這樣:

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

3. 使用相容的列印API

在macOS上,執行印刷操作時調用ShowPrintDialogAsync(),而不是依賴僅限Windows的印刷路徑。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

準備好開始了嗎?

Nuget Downloads 46,090版本:2026.9剛剛發布

立即獲取您的免費30天試用金鑰
不需要信用卡或帳戶建立
C# NuGet PDF程式庫
安裝方法NuGet

版本: 2026.9

PM > Install-Package IronPrint
nuget.org/packages/IronPrint/
  1. 在解決方案資源管理器中,右鍵點擊引用,管理NuGet套件
  2. 選擇瀏覽並搜尋"IronPrint"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

  1. 下載並解壓IronPrint到比如~/Libs這樣的位置在您的Solution目錄下
  2. 在Visual Studio解決方案資源管理器中,右鍵點擊引用。選擇瀏覽,"IronPrint.dll"

授權從$999

有問題嗎?聯繫我們的開發團隊。

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
預約您的免費
現場演示
Booking Badge

全球數百萬工程師信賴

Iron Software的客戶標誌
獲得非義務性諮詢
完成下列表單或發郵件到sales@ironsoftware.com
您的資訊將始終保密。
全球數百萬工程師信賴
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立