تبدیل فایلهای DWG به تصاویر PNG یک نیاز متداول برای برنامههای .NET است که باید نقشههای مهندسی را در وب یا گزارشها نمایش دهند. Aspose.CAD Cloud SDK for .NET یک API قدرتمند فراهم میکند که پردازش سنگین رندرینگ CAD را در ابر انجام میدهد. این راهنما شما را از نصب SDK تا نوشتن یک مثال کامل C#، پیکربندی گزینههای تبدیل، مدیریت خطاها و استفاده از cURL برای تماسهای مستقیم REST راهنمایی میکند.
نصب و راهاندازی در .NET
برای شروع استفاده از SDK، شما نیاز دارید:
- System Requirements: .NET 6.0 یا بالاتر، دسترسی به اینترنت برای فراخوانیهای ابری.
- Package Installation: دستور زیر را در دایرکتوری پروژه خود اجرا کنید.
dotnet add package Aspose.CAD-Cloud
- دانلود SDK: آخرین باینریها را از این صفحه دریافت کنید.
- احراز هویت: یک شناسه مشتری (client ID) و رمز مشتری (client secret) Aspose Cloud را از داشبورد Aspose خود ایجاد کنید. آنها را بهصورت ایمن ذخیره کنید، برای مثال در appsettings.json یا متغیرهای محیطی.
var clientId = Environment.GetEnvironmentVariable("ASPOSE_CLIENT_ID");
var clientSecret = Environment.GetEnvironmentVariable("ASPOSE_CLIENT_SECRET");
ویژگیهای کلیدی Aspose.CAD Cloud SDK برای .NET
- پشتیبانی گسترده از فرمتها: تبدیل DWG، DXF، DWF و بسیاری از فرمتهای دیگر CAD به PNG، JPEG، PDF و موارد دیگر.
- رسترسازی با کیفیت بالا: حفظ وزن خطوط، لایهها و رنگها با DPI قابل تنظیم.
- پردازش مبتنی بر ابر: بارگذاری رندرینگ سنگین به سرورهای Aspose، کاهش مصرف منابع محلی.
- تبدیل دستهای: پردازش چندین فایل در یک فراخوانی API با استفاده از الگوهای ناهمزمان.
- مستندات گسترده: مرجع کامل API در مرجع رسمی API موجود است.
پیکربندی گزینههای تبدیل برای DWG به PNG
میتوانید تصویر خروجی را با تنظیم گزینههای زیر در بدنهٔ درخواست کنترل کنید:
| گزینه | توضیح |
|---|---|
width |
عرض تصویر هدف بر حسب پیکسل. |
height |
ارتفاع تصویر هدف بر حسب پیکسل. |
dpi |
نقطه در اینچ برای رسترسازی (پیشفرض ۳۰۰). |
backgroundColor |
رنگ هگز برای پسزمینه، به عنوان مثال #FFFFFF. |
layerVisibility |
فهرست نام لایهها برای شامل یا حذف کردن. |
مثال JSON payload:
{
"outputFormat": "png",
"width": 1024,
"height": 768,
"dpi": 300,
"backgroundColor": "#FFFFFF"
}
بهینهسازی عملکرد و استفاده از حافظه
- استفاده از تماسهای ناهمزمان: SDK از متدهای async پشتیبانی میکند که در حین انتظار برای پاسخ ابر، نخ را آزاد میسازند.
- تنظیم DPI: DPI بالاتر کیفیت را بهبود میبخشد اما اندازهٔ بار را افزایش میدهد. کمترین DPI که نیازهای بصری را برآورده میکند انتخاب کنید.
- استفاده مجدد از HttpClient: یک نمونهٔ
HttpClientرا برای تمام درخواستهای تبدیل ایجاد کنید تا از استخر اتصال بهرهمند شوید.
مدیریت خطاها و عیبیابی مشکلات تبدیل
در زیر یک مرجع سریع برای کدهای وضعیت HTTP رایج که توسط نقطه انتهایی تبدیل بازگردانده میشوند، آورده شده است:
| کد وضعیت | معنی | اقدام پیشنهادی |
|---|---|---|
| 400 | درخواست نامعتبر - پارامترهای نادرست | payload JSON و فرمت فایل را بررسی کنید. |
| 401 | غیرمجاز - اعتبارنامههای نامعتبر | شناسه/رمز مشتری و تولید توکن را بررسی کنید. |
| 404 | فایل یافت نشد - منبع DWG موجود نیست | اطمینان حاصل کنید که فایل به مسیر صحیح بارگذاری شده است. |
| 500 | خطای داخلی سرور | پس از یک تأخیر کوتاه دوباره تلاش کنید؛ اگر مشکل ادامه داشت با پشتیبانی تماس بگیرید. |
مراحل تبدیل DWG به PNG در .NET
- ایجاد کلاینت API - کلاس
CadApiرا با اعتبارهای خود مقداردهی اولیه کنید.var api = new Aspose.CAD.Cloud.Sdk.Api.CadApi(clientId, clientSecret); - بارگذاری فایل DWG - از متد
UploadFileبرای قرار دادن فایل منبع در ذخیرهسازی ابری استفاده کنید.api.UploadFile("input.dwg", File.ReadAllBytes("local/path/input.dwg")); - آمادهسازی گزینههای تبدیل - یک شیء JSON با تنظیمات PNG موردنظر بسازید (جدول بالا را ببینید).
- فراخوانی نقطه انتهایی تبدیل - متد
Convertرا با مسیر منبع، فرمت هدف و گزینهها صدا بزنید.var result = api.Convert("input.dwg", "png", conversionOptions); - دانلود نتیجه PNG - دادههای باینری را بازیابی کنید و بهصورت محلی ذخیره کنید.
File.WriteAllBytes("output.png", result);
برای جزئیات بیشتر در مورد هر روش، به مرجع API مراجعه کنید.
DWG به PNG تبدیل - مثال کامل کد
برنامه زیر یک تبدیل کامل انتها‑به‑انتها را نشان میدهد، شامل مدیریت خطا و پاکسازی منابع.
توجه: این مثال کد عملکرد اصلی را نشان میدهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید مسیرهای فایل (
sample.dwg،sample.pngو غیره) را به مکانهای واقعی فایلهای خود بهروز کنید، اطمینان حاصل کنید که تمام وابستگیهای مورد نیاز بهدرستی نصب شدهاند و بهطور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک با تیم پشتیبانی تماس بگیرید.
تبدیل DWG مبتنی بر ابر از طریق REST API با استفاده از cURL
میتوانید همان نتیجه را بدون نوشتن کد C# با فراخوانی مستقیم نقاط انتهایی REST سرویس Aspose.CAD Cloud به دست آورید.
1. دریافت توکن دسترسی
curl -X POST "https://api.aspose.cloud/connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
۲. بارگذاری فایل DWG
curl -X PUT "https://api.aspose.cloud/v3.0/storage/file/inputs/sample.dwg" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary "@sample.dwg"
3. درخواست تبدیل به PNG
curl -X POST "https://api.aspose.cloud/v3.0/cad/convert" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"inputPath": "inputs/sample.dwg",
"outputPath": "outputs/sample.png",
"format": "png",
"options": {
"width": 1024,
"height": 768,
"dpi": 300,
"backgroundColor": "#FFFFFF"
}
}'
۴. دانلود PNG تبدیلشده
curl -X GET "https://api.aspose.cloud/v3.0/storage/file/outputs/sample.png" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o "sample.png"
برای دریافت فهرست کامل پارامترها و مثالهای اضافی، به مستندات رسمی API مراجعه کنید.
نتیجهگیری
تبدیل DWG به PNG در .NET بهراحتی انجام میشود وقتی از قدرت Aspose.CAD Cloud SDK for .NET استفاده کنید. این SDK بارگذاری فایل، تبدیل و دانلود را مدیریت میکند و کنترل دقیق بر کیفیت تصویر و عملکرد ارائه میدهد. به یاد داشته باشید برای استفاده در تولید، یک لایسنس معتبر تهیه کنید؛ میتوانید یک لایسنس موقت را از صفحه لایسنس موقت دریافت کنید و گزینههای قیمتگذاری را در وبسایت Aspose بررسی کنید. با نمونه کد و دستورات cURL ارائه شده، آمادهاید تا تبدیل DWG‑به‑PNG را در هر برنامه .NET یکپارچه کنید.
سؤالات متداول
س: آیا امکان تبدیل فایل DWG به PNG بدون نوشتن کد وجود دارد؟
A: بله، میتوانید از REST API بهصورت مستقیم با ابزارهایی مانند cURL یا Postman استفاده کنید. مراحل در بخش “Cloud-Based DWG Conversion via REST API using cURL” توضیح داده شده است و مرجع API تمام پارامترهای مورد نیاز را ارائه میدهد.
س: چگونه میتوانم فایلهای DWG بزرگ را برای جلوگیری از مشکلات حافظه مدیریت کنم؟
پ: از روشهای ناهمزمان نشان داده شده در مثال کد استفاده کنید و DPI معقولی (مثلاً 150‑300) تنظیم کنید. SDK دادهها را به ابر جریان میدهد و مصرف حافظه محلی را به حداقل میرساند.
س: اگر تبدیل با خطای 400 شکست خورد چه میشود؟
A: خطای 400 معمولاً نشاندهندهٔ بار درخواست نامعتبر است. تأیید کنید که گزینههای JSON شما با طرحوارهٔ توصیفشده در بخش “Configuring Conversion Options for DWG to PNG” مطابقت دارد و فایل منبع در مسیر ابری مشخص شده وجود دارد.
س: آیا میتوانم چندین فایل DWG را در یک عملیات دستهای به PNG تبدیل کنم؟
A: در حالی که API یک فایل را در هر درخواست پردازش میکند، میتوانید یک حلقه اسکریپت بنویسید که هر DWG را بارگذاری کرده، تبدیل را فراخوانی کرده و PNG را بهصورت ناهمزمان دانلود کند. این رویکرد حداکثر توان پردازشی را فراهم میکند و پیادهسازی را ساده نگه میدارد.