XLSX به JPG تبدیل در Java یک نیاز رایج است وقتی میخواهید دادههای صفحهگسترده را به عنوان تصویر نمایش دهید. GroupDocs.Conversion Cloud SDK for Java یک کتابخانه ساده مبتنی بر REST ارائه میدهد که به شما امکان میدهد ورقهای Excel را مستقیماً به فایلهای JPG رندر کنید. این راهنما شما را از طریق تنظیمات مورد نیاز راهنمایی میکند، یک مثال کامل کد را نشان میدهد، پردازش ناهمزمان با cURL را نشان میدهد و نکات عملکردی برای کار با کتابکارهای بزرگ ارائه میدهد.
مراحل تبدیل XLSX به JPG در جاوا
- افزودن وابستگی Maven: SDK را در
pom.xmlخود گنجانده تا کتابخانه در زمان کامپایل در دسترس باشد.
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion-cloud</artifactId>
<version>23.12</version>
</dependency>
- مقداردهی اولیهٔ مشتری تبدیل: یک نمونه از
ConversionApiرا با اعتبارهای مشتری خود ایجاد کنید.
import com.groupdocs.conversion.cloud.api.ConversionApi;
import com.groupdocs.conversion.cloud.client.ApiClient;
import com.groupdocs.conversion.cloud.configuration.Configuration;
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
ConversionApi conversionApi = new ConversionApi(new ApiClient(config));
- پیکربندی گزینههای تبدیل: خروجی را به فرمت JPG تنظیم کنید، وضوح تصویر را انتخاب کنید، و در صورت تمایل پردازش ناهمزمان را فعال کنید.
import com.groupdocs.conversion.cloud.model.requests.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertOptions;
import com.groupdocs.conversion.cloud.model.JpgConvertOptions;
JpgConvertOptions jpgOptions = new JpgConvertOptions();
jpgOptions.setResolution(300); // 300 DPI for high quality
jpgOptions.setQuality(90); // JPEG quality 0‑100
jpgOptions.setAsync(true); // Enable async conversion
ConvertOptions options = new ConvertOptions();
options.setOutputFormat("JPG");
options.setJpgOptions(jpgOptions);
- اجرای تبدیل: یک
ConvertDocumentRequestرا با فایل منبع XLSX و گزینهها بسازید، سپس API را فراخوانی کنید.
import java.io.File;
File sourceFile = new File("sample.xlsx");
ConvertDocumentRequest request = new ConvertDocumentRequest(sourceFile, options);
String jobId = conversionApi.convertDocument(request);
System.out.println("Conversion started, job ID: " + jobId);
- دانلود نتیجه: وضعیت کار را تا تکمیل شدن بررسی کنید، سپس هر JPG تولید شده را دانلود کنید.
import com.groupdocs.conversion.cloud.model.JobStatus;
import com.groupdocs.conversion.cloud.model.responses.JobStatusResponse;
while (true) {
JobStatusResponse statusResponse = conversionApi.getJobStatus(jobId);
JobStatus status = statusResponse.getStatus();
if (status == JobStatus.COMPLETED) break;
Thread.sleep(2000); // wait 2 seconds before next poll
}
conversionApi.downloadResult(jobId, new File("output/"));
System.out.println("JPG files saved to output folder.");
برای جزئیات بیشتر دربارهٔ اشیاء درخواست، به مرجع API مراجعه کنید.
تولید JPG از XLSX در Java - مثال کامل کد
این مثال یک تبدیل کامل از ابتدا تا انتها را نشان میدهد که یک کتاب کار XLSX را بارگذاری میکند، هر برگه کاری را به یک JPG جداگانه تبدیل میکند و تصاویر را بهصورت محلی ذخیره میکند.
package com.example.conversion;
import com.groupdocs.conversion.cloud.api.ConversionApi;
import com.groupdocs.conversion.cloud.client.ApiClient;
import com.groupdocs.conversion.cloud.configuration.Configuration;
import com.groupdocs.conversion.cloud.model.requests.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertOptions;
import com.groupdocs.conversion.cloud.model.JpgConvertOptions;
import com.groupdocs.conversion.cloud.model.responses.JobStatusResponse;
import com.groupdocs.conversion.cloud.model.JobStatus;
import java.io.File;
public class XlsxToJpgDemo {
public static void main(String[] args) throws Exception {
// 1. Configure client
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
ConversionApi api = new ConversionApi(new ApiClient(config));
// 2. Prepare conversion options
JpgConvertOptions jpgOpts = new JpgConvertOptions();
jpgOpts.setResolution(300);
jpgOpts.setQuality(90);
jpgOpts.setAsync(true); // async conversion
ConvertOptions convOpts = new ConvertOptions();
convOpts.setOutputFormat("JPG");
convOpts.setJpgOptions(jpgOpts);
// 3. Create request
File source = new File("input/sample.xlsx");
ConvertDocumentRequest request = new ConvertDocumentRequest(source, convOpts);
// 4. Start conversion
String jobId = api.convertDocument(request);
System.out.println("Job started, ID: " + jobId);
// 5. Wait for completion
while (true) {
JobStatusResponse statusResp = api.getJobStatus(jobId);
if (statusResp.getStatus() == JobStatus.COMPLETED) break;
Thread.sleep(2000);
}
// 6. Download JPG files
api.downloadResult(jobId, new File("output/"));
System.out.println("Conversion finished. JPG files are in the output folder.");
}
}
توجه: این مثال کد عملکرد اصلی را نشان میدهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید مسیرهای فایل (
input/sample.xlsx،output/) را به مکانهای واقعی خود بهروز کنید، اطمینان حاصل کنید تمام وابستگیهای مورد نیاز بهدرستی نصب شدهاند، و بهطور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک با تیم پشتیبانی تماس بگیرید.
تبدیل Excel به تصویر با استفاده از cURL
دستورات cURL زیر نشان میدهند که چگونه میتوان تبدیل XLSX به JPG را با استفاده از REST API انجام داد. مقادیر جایگزین را با اعتبارنامهها و نامهای فایل واقعی خود جایگزین کنید.
- دریافت توکن دسترسی
curl -X POST "https://api.groupdocs.cloud/v1.0/oauth/token" \
-H "Content-Type: application/json" \
-d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
- بارگذاری فایل XLSX
curl -X POST "https://api.groupdocs.cloud/v1.0/storage/file/upload" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@sample.xlsx"
- شروع تبدیل ناهمزمان
curl -X POST "https://api.groupdocs.cloud/v1.0/conversion/convert" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"sourceFilePath": "sample.xlsx",
"outputFormat": "JPG",
"options": {
"resolution": 300,
"quality": 90,
"async": true
}
}'
- بررسی وضعیت کار (به جای
JOB_IDمقدار بازگردانده شده از مرحله قبلی را قرار دهید)
curl -X GET "https://api.groupdocs.cloud/v1.0/conversion/jobs/JOB_ID/status" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
- دانلود فایلهای JPG حاصل
curl -X GET "https://api.groupdocs.cloud/v1.0/conversion/jobs/JOB_ID/result" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.zip
برای دریافت فهرست کامل پارامترها، به مستندات رسمی API مراجعه کنید.
نصب و پیکربندی GroupDocs.Conversion Cloud SDK for Java
SDK را با Maven به پروژه خود اضافه کنید، سپس اعتبارهای مشتری خود را پیکربندی کنید.
# Add the dependency (already shown in the Steps section)
mvn install com.groupdocs:groupdocs-conversion-cloud
// Example configuration (same as in the Steps section)
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
میتوانید آخرین فایلهای JAR را از صفحه دانلود دریافت کنید.
گزینههای تبدیل XLSX به JPG
چندین گزینه به شما امکان تنظیم دقیق تصاویر تولید شده را میدهند.
| گزینه | توضیح | مثال |
|---|---|---|
| Resolution | DPI تصویر خروجی. مقادیر بالاتر کیفیت را بهبود میبخشند اما حجم فایل را افزایش میدهند. | jpgOpts.setResolution(300); |
| Quality | سطح فشردهسازی JPEG (0‑100). | jpgOpts.setQuality(90); |
| Page Range | فقط ورقهای کاری خاص را تبدیل کنید. | jpgOpts.setPageRange("1-3"); |
| Async | تبدیل را در پسزمینه اجرا کنید و برای تکمیل نظرسنجی کنید. | jpgOpts.setAsync(true); |
هر ویژگی بخشی از JpgConvertOptions در SDK است. برای دریافت فهرست کامل به مرجع API مراجعه کنید.
بهبود سرعت تبدیل و استفاده از حافظه
- Stream Worksheets - پردازش یک worksheet در هر بار با فعالسازی حالت async؛ این کار از بارگذاری کل workbook در حافظه جلوگیری میکند.
- Adjust Resolution - استفاده از کمترین DPI قابل قبول برای مورد استفاده شما؛ 150‑200 DPI معمولاً برای پیشنمایشهای وب کافی است.
- Batch Requests - هنگام تبدیل تعداد زیادی فایل، آنها را در دستههای موازی ارسال کنید که توسط ظرفیت CPU و شبکه سرور شما محدود میشود.
- Reuse ApiClient - یک نمونهٔ
ConversionApiایجاد کنید و آن را در تبدیلهای متعدد مجدداً استفاده کنید تا از هزینهٔ مکرر احراز هویت جلوگیری شود.
اعمال این نکات میتواند زمان تبدیل را برای فایلهای بزرگ اکسل تا ۴۰ % کاهش دهد.
نتیجهگیری
تبدیل XLSX به JPG در جاوا بهسادگی انجام میشود با GroupDocs.Conversion Cloud SDK for Java. با دنبال کردن مراحل بالا، میتوانید هر برگه کاری را بهصورت JPG با کیفیت بالا رندر کنید، از پردازش ناهمزمان برای مقیاسپذیری بهتر استفاده کنید و بهینهسازیهای عملکردی را برای کتابهای کاری بزرگ اعمال کنید. بهخاطر داشته باشید که برای استقرارهای تولیدی یک لایسنس مناسب دریافت کنید؛ جزئیات قیمتگذاری در صفحه محصول موجود است و میتوانید با یک لایسنس موقت برای ارزیابی کتابخانه شروع کنید. این قابلیت را در برنامههای خود یکپارچه کنید تا پیشنمایشهای بصری سریع از دادههای اکسل بدون نیاز به نصبهای Office در سمت کلاینت فراهم کنید.
سوالات متداول
چگونه میتوانم تبدیل XLSX به JPG را در جاوا با استفاده از GroupDocs انجام دهم؟
از کلاس ConversionApi برای بارگذاری یک فایل XLSX استفاده کنید، JpgConvertOptions را تنظیم کنید (رزولوشن، کیفیت، async) و متد convertDocument را فراخوانی کنید. SDK یک شناسه کار (job ID) برمیگرداند که میتوانید تا زمانی که فایلهای JPG آماده شوند، آن را بررسی کنید.
آیا میتوانم کتابهای کار بزرگ Excel را بدون تمام شدن حافظه تبدیل کنم؟
بله. تبدیل ناهمزمان را فعال کنید و وضوح معقولی تنظیم کنید. SDK ورقهای کاری را بهصورت متوالی پردازش میکند و مصرف حافظه را کم نگه میدارد.
آیا تبدیل ناهمزمان برای XLSX به JPG پشتیبانی میشود؟
SDK یک پرچم async در JpgConvertOptions فراهم میکند. وقتی به true تنظیم شود، API یک شناسه کار (job ID) برمیگرداند که به شما امکان میدهد وضعیت را بررسی کنید و نتایج را بعداً دانلود کنید.
آیا برای استفاده از ویژگیهای تبدیل در محیط تولید به مجوز ویژهای نیاز دارم؟
یک مجوز معتبر GroupDocs.Conversion Cloud برای استفاده در محیط تولید لازم است. میتوانید قبل از خرید اشتراک کامل، با یک مجوز موقت از صفحه مجوز موقت شروع کنید.
