تبدیل دادههای جدولی به داراییهای بصری یک نیاز مکرر هنگام ساخت داشبوردها، گزارشها یا خلاصههای ایمیلی خودکار است. GroupDocs.Conversion Cloud SDK for Python کتابخانهای قدرتمند ارائه میدهد که بار سنگین رندر کردن ردیفهای CSV را به تصاویر با کیفیت بالا JPG بر عهده میگیرد. در این راهنما خواهید آموخت که چگونه SDK را تنظیم کنید، اسکریپتی مختصر بنویسید، برای سناریوهای ناهمزمان با cURL به REST API فراخوانی کنید، و گزینههای تبدیل را برای گزارشگیری سریع و خودکار بهینهسازی کنید.
تبدیل CSV به JPG چه تقاضاهایی از برنامه شما دارد
توسعهدهندگانی که برنامههای مبتنی بر داده میسازند اغلب نیاز دارند گزارشهای CSV را به تصاویر ثابت تبدیل کنند که میتوانند در PDFها، اسلایدهای PowerPoint یا صفحات وب جاسازی شوند. جریان کار معمولاً نیاز دارد:
- کنترل دقیق بر ابعاد و حاشیههای تصویر بهطوری که جداول در رسانههای خروجی مختلف یکدست بهنظر برسند.
- توانایی پردازش فایلهای CSV بزرگ بدون مصرف تمام حافظه، که به این معنی است که کتابخانه تبدیل باید ردیفها را بهصورت جریاندار کارآمد پردازش کند.
- پشتیبانی از خودکارسازی برای پردازش دستهای، که امکان تبدیل دهها یا صدها فایل CSV را در یک کار واحد فراهم میکند.
ضبط صفحهنمایش بهصورت دستی یا استفاده از کتابخانههای تصویر عمومی بهسرعت شکننده و دشوار برای نگهداری میشود، بهویژه وقتی طرحنامه CSV تغییر میکند یا زمانی که نیاز دارید فرآیند را بر روی سروری بدون رابط گرافیکی اجرا کنید.
چگونه GroupDocs.Conversion Cloud SDK for Python تبدیل CSV به JPG را انجام میدهد
SDK یک موتور تبدیل مبتنی بر ابر ارائه میدهد که یک فایل CSV ذخیرهشده در GroupDocs storage را میپذیرد و تصاویر JPG را که با قلمهای قابل تنظیم، اندازه صفحه و حاشیهها رندر شدهاند، برمیگرداند. قابلیتهای کلیدی که با الزامات مطابقت دارند عبارتند از:
- قابل تنظیم
CsvConvertOptions- تنظیم عرض صفحه، ارتفاع، حاشیهها، نام فونت و اندازه برای مطابقت با طراحی بصری شما. - پشتیبانی از پردازش دستهای - API میتواند چندین فایل را در یک درخواست پردازش کند، ایدهآل برای خطوط لوله خودکار.
- نقاط انتهایی REST ناهمزمان - یک کار تبدیل را شروع کنید و برای تکمیل آن نظرسنجی کنید، که امکان جریانهای کاری غیرمسدودکننده در سرویسهای وب را فراهم میکند.
به همراه کتابخانهٔ مشتری پایتون، میتوانید این ویژگیها را تنها با چند خط کد یکپارچه کنید. استفادهٔ دقیق در مستندات رسمی و مرجع API توضیح داده شده است.
تبدیل CSV به JPG در Python: پیادهسازی
نصب SDK و وابستگیها
ابتدا کتابخانه GroupDocs Conversion Cloud را نصب کنید و هر بستهٔ اختیاری که ممکن است برای تست محلی نیاز داشته باشید، اضافه کنید.
pip install groupdocs-conversion-cloud
شما همچنین به ماژول استاندارد os نیاز دارید که همراه با پایتون ارائه میشود.
پیکربندی اعتبارنامههای احراز هویت
یک شیء پیکربندی با شناسه مشتری (client ID) و رمز عبور (secret) خود ایجاد کنید. این کار هر فراخوانی API را احراز هویت میکند.
from groupdocs_conversion_cloud import Configuration, ApiClient
configuration = Configuration() configuration.client_id = “YOUR_CLIENT_ID” configuration.client_secret = “YOUR_CLIENT_SECRET”
api_client = ApiClient(configuration)
برای جزئیات بیشتر، به مرجع API برای Configuration مراجعه کنید.
تعریف تنظیمات تبدیل برای CSV به JPG
فایل منبع، فرمت خروجی و گزینههای رندر مخصوص CSV را تنظیم کنید.
from groupdocs_conversion_cloud import ConvertApi, ConvertSettings, ConvertDocumentRequest, CsvConvertOptions
convert_api = ConvertApi(api_client)
input_csv = "sample.csv"
output_dir = "converted_images"
settings = ConvertSettings()
settings.file_path = input_csv
settings.format = "jpg"
settings.output_path = output_dir
csv_options = CsvConvertOptions()
csv_options.page_width = 1024
csv_options.page_height = 768
csv_options.margin = 10
csv_options.font_name = "Arial"
csv_options.font_size = 12
settings.convert_options = csv_options
<!--[CODE_SNIPPET_END]-->
`CsvConvertOptions` کلاس در [مستندات API](https://reference.groupdocs.cloud/conversion/#csvconvertoptions) مستند شده است.
### اجرای درخواست تبدیل
یک شیء درخواست ایجاد کنید و متد تبدیل را فراخوانی کنید.
<!--[CODE_SNIPPET_START]-->
```python
request = ConvertDocumentRequest(settings)
result_files = convert_api.convert_document(request)
<!--[CODE_SNIPPET_END]-->
این متد فهرستی از توصیفگرهای فایل برای تصاویر JPG تولید شده را برمیگرداند.
### بررسی فایلهای نتیجه
مسیرهای تصاویر ایجاد شده را چاپ کنید تا عملیات را تأیید کنید.
```python
print(f"CSV to JPG conversion completed. Files saved in '{output_dir}':")
for file_info in result_files:
print(f" - {file_info.path}")
با تکمیل تبدیل، میتوانید اکنون تصاویر را به خط لوله گزارشگیری خود منتقل کنید یا با ابزارهای ویرایش تصویر بهطور بیشتری پردازش کنید.
مثال کامل کد: اسکریپت تبدیل CSV به JPG در پایتون
کد زیر فرآیند کامل انتها به انتهای توضیح دادهشده در بالا را نشان میدهد.
import os
from groupdocs_conversion_cloud import (
ConvertApi,
ConvertSettings,
ConvertDocumentRequest,
ApiClient,
Configuration
)
from groupdocs_conversion_cloud.models import CsvConvertOptions
——————– پیکربندی ——————–
جایگزین کنید با اعتبارهای واقعی GroupDocs Conversion Cloud
configuration = Configuration() configuration.client_id = “YOUR_CLIENT_ID” configuration.client_secret = “YOUR_CLIENT_SECRET”
api_client = ApiClient(configuration) convert_api = ConvertApi(api_client)
——————– مسیرهای فایل ——————–
input_csv = “sample.csv” # مسیر فایل CSV منبع output_dir = “converted_images” # دایرکتوری که JPGها در آن ذخیره میشوند
اطمینان از وجود پوشه خروجی
os.makedirs(output_dir, exist_ok=True)
——————– Conversion Settings ——————–
settings = ConvertSettings() settings.file_path = input_csv # Source file in storage settings.format = “jpg” # Desired output format settings.output_path = output_dir # Destination folder in storage
گزینههای خاص CSV برای کنترل ظاهر و عملکرد تصویر
csv_options = CsvConvertOptions() csv_options.page_width = 1024 # Width of the generated image (pixels) csv_options.page_height = 768 # Height of the generated image (pixels) csv_options.margin = 10 # Margin around the table (pixels) csv_options.font_name = “Arial” # Font used for text rendering csv_options.font_size = 12 # Font size (points)
settings.convert_options = csv_options
——————– اجرای تبدیل ——————–
request = ConvertDocumentRequest(settings) result_files = convert_api.convert_document(request)
——————– Result Output ——————–
print(f"CSV to JPG conversion completed. Files saved in ‘{output_dir}’:") for file_info in result_files: print(f" - {file_info.path}")
<!--[COMPLETE_CODE_SNIPPET_END]-->
> **توجه:** این مثال کد، عملکرد اصلی را نشان میدهد. قبل از استفاده در پروژه خود، مطمئن شوید مسیرهای فایل (`input.csv`، `output_dir` و غیره) را مطابق با مکانهای واقعی خود بهروز کنید، اطمینان حاصل کنید تمام وابستگیهای مورد نیاز بهدرستی نصب شدهاند و بهطور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به [مستندات رسمی](https://docs.groupdocs.cloud/conversion/) مراجعه کنید یا برای دریافت کمک به [تیم پشتیبانی](https://forum.groupdocs.cloud/c/conversion/11) مراجعه کنید.
## تبدیل CSV به JPG بهصورت Async از طریق REST API با استفاده از cURL
زمانی که به پردازش غیرمسدودکننده نیاز دارید، REST API به شما امکان میدهد یک کار Async را آغاز کنید و وضعیت آن را بررسی کنید.
1. **احراز هویت و دریافت توکن دسترسی**
```bash
curl -X POST "https://api.groupdocs.cloud/v2.0/oauth/token" \
-H "Content-Type: application/json" \
-d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
- بارگذاری فایل CSV منبع
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@sample.csv"
- شروع کار تبدیل Async
curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/jobs" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"sourceFilePath":"sample.csv",
"outputPath":"converted_images/",
"format":"jpg",
"options":{
"pageWidth":1024,
"pageHeight":768,
"margin":10,
"fontName":"Arial",
"fontSize":12
}
}'
پاسخ شامل یک jobId است که میتوانید برای بررسی پیشرفت از آن استفاده کنید.
- پرسوجو برای تکمیل کار
curl -X GET "https://api.groupdocs.cloud/v2.0/conversion/jobs/JOB_ID/status" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
- بارگیری فایلهای JPG تولید شده
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/converted_images/result.jpg" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o result.jpg
برای مرجع کامل، به مستندات رسمی API مراجعه کنید.
گزینهها و تنظیمات Pandas برای تبدیل CSV به JPG
اگر ترجیح میدهید دادههای CSV را قبل از تبدیل با pandas پیشپردازش کنید، میتوانید گزینههای SDK را مطابق نیاز تنظیم کنید.
- اندازه صفحه سفارشی – صفحات بزرگتر امکان نمایش ستونهای بیشتری را فراهم میکنند.
csv_options.page_width = 1280
csv_options.page_height = 960
- سفارشیسازی قلم – از قلمی استفاده کنید که با سبک سازمانی شما هماهنگ باشد.
csv_options.font_name = "Calibri"
csv_options.font_size = 14
- تنظیم حاشیه – حاشیهها را کاهش دهید تا فضای قابل استفاده حداکثر شود.
csv_options.margin = 5
این ویژگیها بخشی از کلاس CsvConvertOptions هستند که در مرجع API مستند شدهاند.
نتیجهگیری
تبدیل CSV به JPG در پایتون با استفاده از GroupDocs.Conversion Cloud SDK for Python بهسادگی انجام میشود. با دنبال کردن مراحل فوق میتوانید تولید تصویر را خودکار کنید، پردازش Async را یکپارچه کنید و گزینههای رندرینگ را برای عملکرد بهینه تنظیم نمایید. بهخاطر داشته باشید برای استفاده در محیط تولید، یک لایسنس معتبر تهیه کنید؛ میتوانید گزینههای قیمتگذاری را در صفحه محصول بررسی کنید و لایسنس موقت را از صفحه لایسنس موقت دریافت کنید. امروز شروع به تبدیل گزارشهای CSV خود به JPG کنید و جریان کاری تجزیه و تحلیل بصری خود را غنیتر کنید.
سؤالات متداول
تبدیل CSV به JPG در پایتون با GroupDocs.Conversion Cloud SDK چگونه کار میکند؟
SDK فایل CSV را از ذخیرهسازی میخواند، هر ردیف را بر اساس CsvConvertOptions ارائهشده به تصویر JPG رندر میکند و فایلهای تصویری را برمیگرداند. این فرآیند بر روی سرورهای GroupDocs اجرا میشود، بنابراین نیازی به موتور رندرینگ محلی نیست.
آیا میتوانم تبدیل CSV به JPG را بهصورت ناهمزمان در پایتون اجرا کنم؟
بله. از نقاط انتهایی async REST API همانطور که در بخش cURL نشان داده شده استفاده کنید. یک کار تبدیل را شروع کنید، jobId دریافت کنید و وضعیت را تا پایان کار بررسی کنید تا برنامه شما پاسخگو بماند.
کدام گزینههای تبدیل برای بهبود عملکرد در فایلهای CSV بزرگ مفید هستند؟
تنظیم page_width، page_height و margin مقدار دادههای هر تصویر را کاهش میدهد. کاهش font_size نیز میتواند سرعت رندرینگ را بالا ببرد. برای فایلهای بسیار بزرگ، پردازش به صورت بچها و استفاده از API async برای موازیسازی کار را در نظر بگیرید.
آیا برای استفاده از SDK در محیط تولید به لایسنس نیاز است؟
بله، برای استقرارهای تولیدی به یک لایسنس معتبر نیاز دارید. میتوانید اشتراک را از صفحه محصول خریداری کنید یا برای ارزیابی یک لایسنس موقت از صفحه لایسنس موقت درخواست کنید.
