تحويل المخططات الثلاثية الأبعاد المعقدة من مصنف Excel إلى ملف PDF محمول هو حاجة متكررة للتقارير ومشاركة البيانات البصرية. توفر Aspose.Cells Cloud SDK for Java مكتبة سحابية قوية تبسط هذه المهمة لمطوري Java. في هذا الدليل نستعرض عملية تحويل 3D إلى PDF بالكامل في Java، بدءًا من إعداد بيئتك وحتى استرجاع المستند النهائي. سترى شرحًا مفصلاً للكود، مثالًا كاملاً، وأوامر cURL المكافئة لتكامل REST API.
إعداد Aspose.Cells Cloud SDK for Java
قبل أن تبدأ، تأكد من أن لديك ما يلي:
- تم تثبيت Java 17 أو أحدث.
- Maven أو Gradle لإدارة التبعيات.
- حساب Aspose Cloud مع Client Id و Client Secret.
- الوصول إلى الإنترنت لإجراء مكالمات السحابة.
أضف SDK إلى مشروعك باستخدام تبعية Maven الموضحة أدناه وقم بتنزيل أحدث ملف JAR من صفحة التحميل الرسمية.
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells-cloud</artifactId>
<version>26.7</version>
</dependency>
يمكنك أيضًا الحصول على المكتبة مباشرةً من رابط التحميل.
قم بتكوين العميل باستخدام بيانات الاعتماد الخاصة بك. تم أخذ هذا المقتطف مباشرةً من المثال الكامل.
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
// Optional: config.setBasePath("https://api.aspose.cloud"); // default
مع وجود التكوين، أنت جاهز لبدء سير عمل التحويل.
تحويل 3D إلى PDF في Java - دليل خطوة بخطوة
الخطوة 1: تحميل مصنف Excel إلى التخزين السحابي
أولاً، قم بتحميل ملف XLSX الذي يحتوي على المخططات ثلاثية الأبعاد. يتولى FilesApi عملية التحميل.
FilesUploadResult uploadResult = filesApi.uploadFile("", new File(localInputPath));
if (uploadResult == null || uploadResult.getUploaded().isEmpty()) {
System.err.println("Upload failed.");
return;
}
الخطوة 2: إعداد خيارات حفظ PDF
قم بضبط مخرجات PDF بدقة من خلال تمكين التخزين المؤقت للخطوط، وضغط الصور، وتحسين الذاكرة. تساعد هذه الخيارات في الحفاظ على حجم PDF منخفض مع الحفاظ على جودة العرض ثلاثية الأبعاد.
PdfSaveOptions pdfOptions = new PdfSaveOptions();
pdfOptions.setCacheFont(true);
pdfOptions.setCompressImages(true);
pdfOptions.setImageQuality(80);
pdfOptions.setEnableMemoryOptimization(true);
الخطوة 3: تحويل دفتر العمل إلى PDF
استدع طريقة postWorkbookSaveAs من CellsApi لإجراء التحويل. مرجع API لهذه الطريقة متوفر في مرجع Aspose.Cells API.
WorkbookResponse convertResponse = cellsApi.postWorkbookSaveAs(
remoteInputName, // source workbook name
"pdf", // target format
remoteOutputName, // output path in cloud storage
pdfOptions, // save options
"", // folder (root)
null); // storage (default)
الخطوة 4: تنزيل ملف PDF الناتج
بعد إكمال التحويل بنجاح، قم بتنزيل بايتات PDF واكتبها إلى ملف محلي.
byte[] pdfBytes = filesApi.downloadFile(remoteOutputName);
try (FileOutputStream fos = new FileOutputStream(new File(localOutputPath))) {
fos.write(pdfBytes);
}
System.out.println("Conversion completed successfully. PDF saved to " + localOutputPath);
الخطوة 5: تنظيف اختياري
قم بإزالة الملفات المؤقتة من التخزين السحابي للحفاظ على نظافة حسابك.
filesApi.deleteFile(remoteInputName, null, null);
filesApi.deleteFile(remoteOutputName, null, null);
تنفيذ Java كامل لتحويل 3D إلى PDF - مثال كامل على الشيفرة
يوضح المثال التالي التحويل من البداية إلى النهاية لمصنف Excel ثلاثي الأبعاد إلى PDF باستخدام Aspose.Cells Cloud SDK for Java.
import com.aspose.cloud.cells.api.CellsApi;
import com.aspose.cloud.cells.api.FilesApi;
import com.aspose.cloud.cells.client.ApiException;
import com.aspose.cloud.cells.client.Configuration;
import com.aspose.cloud.cells.model.PdfSaveOptions;
import com.aspose.cloud.cells.model.FilesUploadResult;
import com.aspose.cloud.cells.model.WorkbookResponse;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class AsposeCells3DToPdfExample {
public static void main(String[] args) {
// -------------------- Configuration --------------------
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
// Optional: config.setBasePath("https://api.aspose.cloud"); // default
// -------------------- API Instances --------------------
CellsApi cellsApi = new CellsApi(config);
FilesApi filesApi = new FilesApi(config);
// -------------------- Local & Remote Paths --------------------
String localInputPath = "input.xlsx"; // Excel file containing 3D charts
String remoteInputName = "input.xlsx"; // Name used in cloud storage
String remoteOutputName = "output.pdf"; // Desired PDF name in cloud storage
String localOutputPath = "output.pdf"; // Where to save the downloaded PDF
try {
// -------------------- Upload Excel to Cloud --------------------
FilesUploadResult uploadResult = filesApi.uploadFile("", new File(localInputPath));
if (uploadResult == null || uploadResult.getUploaded().isEmpty()) {
System.err.println("Upload failed.");
return;
}
// -------------------- Prepare PDF Save Options (Performance) --------------------
PdfSaveOptions pdfOptions = new PdfSaveOptions();
pdfOptions.setCacheFont(true); // Cache fonts for faster processing
pdfOptions.setCompressImages(true); // Compress images to reduce size
pdfOptions.setImageQuality(80); // Balance quality and size
pdfOptions.setEnableMemoryOptimization(true); // Reduce memory footprint
// -------------------- Convert Workbook to PDF --------------------
WorkbookResponse convertResponse = cellsApi.postWorkbookSaveAs(
remoteInputName, // source workbook name
"pdf", // target format
remoteOutputName, // output path in cloud storage
pdfOptions, // save options
"", // folder (root)
null // storage (default)
);
if (convertResponse == null || convertResponse.getCode() != 200) {
System.err.println("Conversion failed.");
return;
}
// -------------------- Download Resulting PDF --------------------
byte[] pdfBytes = filesApi.downloadFile(remoteOutputName);
try (FileOutputStream fos = new FileOutputStream(new File(localOutputPath))) {
fos.write(pdfBytes);
}
System.out.println("Conversion completed successfully. PDF saved to " + localOutputPath);
} catch (ApiException | IOException e) {
e.printStackTrace();
} finally {
// -------------------- Optional Cleanup --------------------
try {
filesApi.deleteFile(remoteInputName, null, null);
filesApi.deleteFile(remoteOutputName, null, null);
} catch (ApiException ignored) {
}
}
}
}
ملاحظة: يوضح مثال الشيفرة هذا الوظيفة الأساسية. قبل استخدامه في مشروعك، تأكد من تحديث مسارات الملفات (
input.xlsx,output.pdf, إلخ) لتطابق مواقع الملفات الفعلية لديك، وتحقق من أن جميع الاعتمادات المطلوبة مثبتة بشكل صحيح، واختبر بدقة في بيئة التطوير الخاصة بك. إذا واجهت أي مشكلات، يرجى الرجوع إلى الوثائق الرسمية أو التواصل مع فريق الدعم للحصول على المساعدة.
تحويل REST API عبر cURL باستخدام Aspose.Cells Cloud
إذا كنت تفضل نهجًا غير مرتبط بلغة معينة، يمكن تنفيذ التحويل نفسه باستخدام أوامر cURL بسيطة ضد Aspose.Cells Cloud REST API.
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"
تحتوي الاستجابة على access_token الذي ستستخدمه في المكالمات اللاحقة.
2. تحميل ملف XLSX المصدر
curl -X PUT "https://api.aspose.cloud/v3.0/cells/storage/file/input.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary "@input.xlsx"
3. تحويل دفتر العمل إلى PDF
curl -X POST "https://api.aspose.cloud/v3.0/cells/input.xlsx/saveAs/pdf?outputPath=output.pdf" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"CacheFont": true,
"CompressImages": true,
"ImageQuality": 80,
"EnableMemoryOptimization": true
}'
4. تنزيل ملف PDF المُولد
curl -X GET "https://api.aspose.cloud/v3.0/cells/storage/file/output.pdf" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.pdf
تنفّذ هذه الأوامر نفس سير عمل تحويل 3D إلى PDF في Java دون كتابة أي شفرة Java. لمزيد من التفاصيل، راجع وثائق API الرسمية.
الخاتمة
باتباع الخطوات المذكورة أعلاه، يمكنك تحويل دفاتر Excel ثلاثية الأبعاد إلى ملفات PDF عالية الجودة بثقة باستخدام Aspose.Cells Cloud SDK for Java. تتولى المكتبة التعامل مع الجزء الصعب من رسم المخططات ثلاثية الأبعاد، بينما تسمح خيارات حفظ PDF بالتحكم في الحجم والأداء. تذكر ضرورة الحصول على ترخيص مناسب للاستخدام في الإنتاج؛ تتوفر تفاصيل الأسعار على صفحة المنتج ويمكن الحصول على ترخيص مؤقت من صفحة الترخيص المؤقت. مع هذه المعرفة، أنت جاهز لدمج تحويل 3D إلى PDF في تطبيقات Java الخاصة بك وتقديم تقارير مصقولة للمستخدمين النهائيين.
الأسئلة الشائعة
-
كيف يمكنني تنفيذ تحويل 3D إلى PDF في Java باستخدام Aspose.Cells?
استخدم SDK لتحميل ملف XLSX الخاص بك، قم بتكوينPdfSaveOptions، استدعِpostWorkbookSaveAs، وحمّل ملف PDF الناتج. يعرض مثال الشيفرة الكامل في هذه المقالة التسلسل الدقيق. -
هل هناك طريقة لأداء تحويل مخطط 3D إلى PDF في Java دون كتابة كود؟
نعم، تسمح لك واجهة برمجة التطبيقات REST وأوامر cURL المقدمة بتحقيق النتيجة نفسها من أي منصة يمكنها إجراء طلبات HTTP. -
ما الفرق بين تحويل PDF لتصوير ثلاثي الأبعاد وتحويل Excel إلى PDF القياسي؟
تتطلب التصورات ثلاثية الأبعاد معالجة إضافية لكائنات المخطط، والتي يتعامل معها SDK تلقائيًا. قد يتخطى التحويل القياسي هذه الخطوات الخاصة بالتصوير ثلاثي الأبعاد، مما يؤدي إلى فقدان الرسومات. -
هل يمكنني استخدام نفس سير العمل لتحويل Excel إلى PDF في Java لدفاتر العمل غير الثلاثية الأبعاد؟
بالطبع. تعمل نفس استدعاءات API مع أي ملف Excel؛ ما عليك سوى حذف أو تعديل الخيارات الخاصة بالـ 3D إذا لم تكن مطلوبة.