การสร้างเอกสารที่ดื่มด่ำซึ่งให้ผู้ใช้หมุน, ซูม, และสำรวจโมเดลสามมิติโดยตรงภายใน PDF เป็นวิธีที่ทรงพลังในการเพิ่มคุณค่าให้กับแคตาล็อกสินค้า, รายงานวิศวกรรม, และคู่มือการฝึกอบรม. Aspose.Words Cloud SDK for .NET ให้ไลบรารีบนคลาวด์ที่ทำให้การฝังและรักษาเนื้อหา 3D ได้อย่างง่ายดายเมื่อแปลงไฟล์ DOCX เป็น PDF. ในคู่มือนี้คุณจะได้เรียนรู้วิธีสร้าง PDF 3D แบบโต้ตอบใน C#, ดูตัวอย่างโค้ดเต็ม, สำรวจการเรียก REST แบบ cURL ที่เทียบเท่า, และเข้าใจข้อพิจารณาการปรับใช้สำหรับแอปพลิเคชันในโลกจริง.
ความต้องการของสถานการณ์การสร้าง PDF 3 มิติ
นักพัฒนาที่สร้างพอร์ทัลวิศวกรรมหรือโบรชัวร์ผลิตภัณฑ์แบบโต้ตอบมักต้องการส่งมอบ PDF ที่มีโมเดล 3 มิติฝังอยู่ ความต้องการทั่วไปคือ:
- เอกสารต้นฉบับต้องเป็นไฟล์ DOCX ที่มีโมเดล 3 มิติในรูปแบบ U3D หรือ PRC อยู่แล้ว
- PDF ที่ได้ต้องคงข้อมูล 3 มิติไว้เพื่อให้โปรแกรมดูเช่น Adobe Acrobat สามารถแสดงผลแบบโต้ตอบได้
- กระบวนการแปลงควรเป็นอัตโนมัติ ทำงานบนเซิร์ฟเวอร์ และรองรับการประมวลผลเป็นชุดใหญ่โดยไม่ต้องมีการแทรกแซงจากผู้ใช้
เครื่องมือเดสก์ท็อปแบบดั้งเดิมไม่สามารถสคริปต์ได้อย่างน่าเชื่อถือในสภาพแวดล้อมคลาวด์ และมักจะลบสตรีม 3D ออกระหว่างการแปลง โซลูชันแบบโปรแกรมที่คงรักษาโมเดล 3D ไว้พร้อมกับการปฏิบัติตามมาตรฐาน PDF/A จึงเป็นสิ่งจำเป็น
แนวทาง: การใช้ Aspose.Words Cloud สำหรับ PDF 3 มิติ
Aspose.Words Cloud SDK for .NET มีชุดของการดำเนินการแบบ REST‑based ที่ทำงานบนเซิร์ฟเวอร์ที่ปลอดภัยของ Aspose. ความสามารถหลักที่ตอบสนองต่อสถานการณ์ได้แก่:
- อัปโหลดไฟล์ DOCX โดยตรงไปยัง Aspose Cloud storage.
PdfSaveOptionsDataที่ช่วยให้คุณควบคุมการปฏิบัติตามมาตรฐาน PDF, การอัปเดตฟิลด์, และที่สำคัญคือการรักษาเนื้อหา 3D ที่ฝังอยู่.- วิธีการแปลงแบบอะซิงโครนัสที่คืนค่าเป็นสตรีม, ทำให้คุณสามารถเขียนไฟล์ผลลัพธ์โดยตรงไปยังดิสก์.
ร่วมกันคุณสมบัติเหล่านี้ทำให้สามารถสร้างกระบวนการทำงาน 3D ไปเป็น PDF ที่เรียบง่ายและสามารถผสานรวมเข้ากับสายงาน CI, บริการเว็บ หรือ งานเบื้องหลังได้ รายละเอียดข้อมูล API มีให้ใน เอกสารอย่างเป็นทางการ และ อ้างอิง API.
สร้าง PDF 3 มิติแบบโต้ตอบใน C#: การทำงาน
ด้านล่างเป็นการอธิบายขั้นตอนโดยละเอียดของการดำเนินการ แต่ละขั้นตอนรวมถึงตัวอย่างโค้ดสั้นที่นำมาจากตัวอย่างเต็มโดยตรง.
ติดตั้ง Aspose.Words Cloud SDK for .NET
ขั้นแรก ให้เพิ่มแพ็กเกจ NuGet ไปยังโครงการของคุณ.
dotnet add package Aspose.Words-Cloud
คุณยังสามารถดาวน์โหลดไฟล์ไบนารีจาก หน้าดาวน์โหลด.
กำหนดค่า WordsApi Client
สร้างอ็อบเจกต์ Configuration ด้วยข้อมูลรับรองของไคลเอนต์ของคุณและสร้างอินสแตนซ์ WordsApi.
var config = new Configuration
{
ClientId = "YOUR_CLIENT_ID",
ClientSecret = "YOUR_CLIENT_SECRET"
};
var wordsApi = new WordsApi(config);
คลาส WordsApi ถูกบันทึกไว้ใน อ้างอิง API.
อัปโหลดไฟล์ DOCX ที่มีโมเดล 3D ฝังอยู่
เปิดไฟล์ DOCX ในเครื่องและอัปโหลดไปยังที่เก็บข้อมูล Aspose Cloud โดยเขียนทับไฟล์ที่มีชื่อเดียวกันที่มีอยู่แล้ว
using (var fileStream = File.OpenRead(localDocxPath))
{
var uploadRequest = new UploadFileRequest(fileStream, remoteFileName);
await wordsApi.UploadFileAsync(uploadRequest);
}
ตรวจสอบให้แน่ใจว่า DOCX มีโมเดล U3D หรือ PRC อยู่แล้ว; นี่คือ 3D Model Format ที่ SDK รักษาไว้.
ตั้งค่าตัวเลือกการบันทึก PDF เพื่อรักษาเนื้อหา 3D
กำหนดค่า PdfSaveOptionsData เพื่อเก็บสตรีม 3D และใช้การปฏิบัติตาม PDF/A‑1b.
var pdfOptions = new PdfSaveOptionsData
{
UpdateFields = false,
Compliance = PdfCompliance.PdfA1b,
SaveFormat = "pdf"
};
ตัวเลือกเหล่านี้เป็นส่วนหนึ่งของ 3D to PDF Workflow ที่ทำให้โมเดลเชิงโต้ตอบคงอยู่อย่างสมบูรณ์
แปลงและดาวน์โหลดไฟล์ PDF 3 มิติแบบโต้ตอบ
เรียกใช้คำขอการแปลงและเขียนสตรีมที่ได้ไปยังไฟล์ PDF ในเครื่อง
var convertRequest = new ConvertDocumentRequest(
remoteFileName,
format: "pdf",
saveOptions: pdfOptions
);
using (var pdfStream = await wordsApi.ConvertDocumentAsync(convertRequest))
using (var fileWriter = File.Create(outputPdfPath))
{
await pdfStream.CopyToAsync(fileWriter);
}
หลังจากการแปลง คุณสามารถลบไฟล์ชั่วคราวจากที่เก็บข้อมูลบนคลาวด์ได้ตามต้องการ
ตัวอย่างโค้ดเต็ม: การสร้าง PDF 3 มิติแบบโต้ตอบใน C#
โค้ดต่อไปนี้แสดงกระบวนการทั้งหมดตั้งแต่เริ่มต้นจนจบ.
using System;
using System.IO;
using System.Threading.Tasks;
using Aspose.Words.Cloud.Sdk;
using Aspose.Words.Cloud.Sdk.Model;
using Aspose.Words.Cloud.Sdk.Model.Requests;
namespace Generate3DPdfExample
{
class Program
{
static async Task Main(string[] args)
{
// -----------------------------------------------------------------
// 1. Configure Aspose.Words Cloud client (replace with your credentials)
// -----------------------------------------------------------------
var config = new Configuration
{
ClientId = "YOUR_CLIENT_ID",
ClientSecret = "YOUR_CLIENT_SECRET"
};
var wordsApi = new WordsApi(config);
// -----------------------------------------------------------------
// 2. Define file names and paths (generic placeholders)
// -----------------------------------------------------------------
const string localDocxPath = "input.docx"; // DOCX that already contains an embedded 3D model (U3D/PRC)
const string remoteFileName = "input.docx"; // Name used in Aspose Cloud storage
const string outputPdfPath = "output.pdf";
// -----------------------------------------------------------------
// 3. Upload the DOCX to Aspose Cloud storage (overwrites if exists)
// -----------------------------------------------------------------
using (var fileStream = File.OpenRead(localDocxPath))
{
var uploadRequest = new UploadFileRequest(fileStream, remoteFileName);
await wordsApi.UploadFileAsync(uploadRequest);
}
// -----------------------------------------------------------------
// 4. Prepare PDF save options – enable 3D content preservation
// -----------------------------------------------------------------
var pdfOptions = new PdfSaveOptionsData
{
// Preserve the embedded 3D model; the option name may vary depending on API version.
// Setting 'UpdateFields' to false speeds up conversion when fields are not required.
UpdateFields = false,
// Use PDF/A-1b compliance to keep the document portable while still supporting 3D.
Compliance = PdfCompliance.PdfA1b,
// Ensure the output is a single PDF file.
SaveFormat = "pdf"
};
// -----------------------------------------------------------------
// 5. Convert the uploaded DOCX to PDF with the defined options
// -----------------------------------------------------------------
var convertRequest = new ConvertDocumentRequest(
remoteFileName,
format: "pdf",
saveOptions: pdfOptions
);
using (var pdfStream = await wordsApi.ConvertDocumentAsync(convertRequest))
using (var fileWriter = File.Create(outputPdfPath))
{
await pdfStream.CopyToAsync(fileWriter);
}
// -----------------------------------------------------------------
// 6. Clean up remote file (optional)
// -----------------------------------------------------------------
var deleteRequest = new DeleteFileRequest(remoteFileName);
await wordsApi.DeleteFileAsync(deleteRequest);
Console.WriteLine($"3D PDF generated successfully at '{Path.GetFullPath(outputPdfPath)}'.");
}
}
}
หมายเหตุ: ตัวอย่างโค้ดนี้แสดงการทำงานหลักของฟังก์ชัน ก่อนนำไปใช้ในโครงการของคุณ ให้ตรวจสอบและอัปเดตเส้นทางไฟล์ (
input.docx,output.pdf, เป็นต้น) ให้ตรงกับตำแหน่งไฟล์จริงของคุณ ตรวจสอบว่าการพึ่งพาทั้งหมดได้ติดตั้งอย่างถูกต้องแล้ว และทดสอบอย่างละเอียดในสภาพแวดล้อมการพัฒนา หากคุณพบปัญหาใด ๆ โปรดดูที่ เอกสารอย่างเป็นทางการ หรือ ติดต่อ ทีมสนับสนุน เพื่อขอความช่วยเหลือ
ทำการแปลง PDF 3 มิติด้วย cURL และ REST API
การดำเนินการเดียวกันสามารถทำได้ผ่านการเรียก cURL ไปยังจุดสิ้นสุด REST ของ Aspose.Words Cloud.
- รับโทเคนการเข้าถึง (แทนที่ตัวแปรด้วยข้อมูลประจำตัวของคุณ)
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"
- อัปโหลด DOCX ที่มีโมเดล 3D.
curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/input.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary @input.docx
- ขอแปลง PDF พร้อมการรักษา 3D
curl -X POST "https://api.aspose.cloud/v4.0/words/input.docx/saveAs/pdf" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"PdfSaveOptions": {
"UpdateFields": false,
"Compliance": "PdfA1b"
}
}' \
-o output.pdf
- ดาวน์โหลด PDF ที่ได้ผล (คำสั่งก่อนหน้านี้ได้บันทึกไว้ในเครื่องแล้ว แต่คุณก็สามารถดึงมันโดยตรงได้).
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ request bodies และพารามิเตอร์เพิ่มเติม, ดู เอกสาร API อย่างเป็นทางการ.
การพิจารณาการปรับใช้สำหรับการสร้าง PDF 3 มิติ
เมื่อผสานโซลูชันนี้เข้ากับสภาพแวดล้อมการผลิต โปรดคำนึงถึงประเด็นต่อไปนี้:
- Server Location - การแปลงทำงานบนเซิร์ฟเวอร์คลาวด์ของ Aspose ดังนั้นต้องตรวจสอบว่าเครือข่ายของคุณอนุญาตการจราจร HTTPS ขาออกไปยัง
api.aspose.cloud. - Licensing - จำเป็นต้องมีใบอนุญาตเชิงพาณิชย์สำหรับการใช้งานในสภาพแวดล้อมการผลิต คุณสามารถเริ่มต้นด้วยใบอนุญาตชั่วคราวจาก หน้าลิขสิทธิ์ชั่วคราว.
- Scalability - เนื่องจาก API ไม่มีสถานะ คุณสามารถทำการอัปโหลดและแปลงแบบขนานบนหลายอินสแตนซ์ของ worker เพื่อจัดการกับชุดข้อมูลขนาดใหญ่ รองรับ 3D to PDF Automation อย่างเต็มรูปแบบ.
สรุป
การสร้าง PDF 3 มิติแบบโต้ตอบใน C# กลายเป็นเรื่องง่ายด้วย Aspose.Words Cloud SDK for .NET. โดยการทำตามขั้นตอนข้างต้นคุณสามารถฝังโมเดล U3D หรือ PRC, รักษาโมเดลเหล่านั้นไว้ระหว่างการแปลงเป็น PDF, และอัตโนมัติขั้นตอนทำงานด้วยไลบรารี .NET หรือการเรียก REST โดยตรง. อย่าลืมจัดหาลิขสิทธิ์ที่เหมาะสมสำหรับการใช้งานในผลิตภัณฑ์และทดสอบ PDF ที่สร้างขึ้นในโปรแกรมดูที่รองรับ 3D เช่น Adobe Acrobat. ด้วยความสามารถนี้คุณสามารถส่งมอบเอกสารที่สมบูรณ์และน่าสนใจยิ่งขึ้นสำหรับวิศวกรรม การตลาด และการฝึกอบรม.
FAQs
ฉันจะสร้าง PDF 3 มิติแบบโต้ตอบใน C# โดยใช้ Aspose.Words Cloud ได้อย่างไร?
ใช้ SDK เพื่ออัปโหลดไฟล์ DOCX ที่มีโมเดล U3D หรือ PRC อยู่แล้ว, กำหนดค่า PdfSaveOptionsData เพื่อเก็บสตรีม 3D, และเรียก ConvertDocumentAsync. ตัวอย่างโค้ดเต็มในบทความนี้แสดงลำดับขั้นตอนที่แน่นอน.
ฉันสามารถฝังรูปแบบโมเดล 3D ใดสำหรับการแปลงเป็น PDF?
Aspose.Words Cloud รองรับรูปแบบ U3D และ PRC ซึ่งเป็นรูปแบบมาตรฐานสำหรับเนื้อหา 3D เชิงโต้ตอบใน PDF
สามารถทำการแปลงได้โดยไม่ต้องเขียนโค้ด C# หรือไม่?
ใช่, กระบวนการเดียวกันสามารถทำได้ด้วยคำสั่ง cURL ต่อ Aspose.Words Cloud REST API ตามที่แสดงในส่วน cURL
ฉันจะหาข้อมูลการกำหนดราคาและการออกใบอนุญาตได้จากที่ไหน?
รายละเอียดการออกใบอนุญาตเชิงพาณิชย์สามารถดูได้บนหน้าผลิตภัณฑ์ และคุณสามารถรับใบอนุญาตชั่วคราวเพื่อการประเมินจาก หน้าใบอนุญาตชั่วคราว