ინტუიციური დოკუმენტების შექმნა, რომელიც მომხმარებლებს აძლევს ბრუნვის, მასშტაბირების და 3‑განზომილებიანი მოდელების შესწავლის შესაძლებლობას პირდაპირ PDF-ში, ძლიერი საშუალებაა პროდუქტის კატალოგების, ინჟინერიული ანგარიშების და სასწავლო სახელმძღვანელოების გაუმჯობესებისთვის. Aspose.Words Cloud SDK for .NET ღრუბლოვანი ბიბლიოთეკა, რომელიც ადვილად საშუალებას აძლევს 3D შინაარსის ჩასმა და შენარჩუნება DOCX ფაილების PDF-ში გადაყვანისას. ამ გიდში თქვენ გაიგებთ, როგორ შექმნათ ინტერაქტიული 3D PDF C#-ში, ნახავთ სრულ კოდის ნიმუშს, განისწავლით შესაბამის cURL REST მოთხოვნებს და გაიგებთ რეალურ აპლიკაციებში განთავსების გათვალისწინებებს.

3D PDF გენერაციის სცენარის მოთხოვნები

ინჟინერიული პორტალებისა ან ინტერაქტიული პროდუქტის ბროშურების შემქმნელებს ხშირად სჭირდებათ PDF-ები, რომლებიც შეიცავენ ჩასმულ 3D მოდელებს. ჩვეულებრივი მოთხოვნები არიან:

  • წყაროს დოკუმენტი უნდა იყოს DOCX, რომელიც უკვე შეიცავს 3D მოდელს U3D ან PRC ფორმატში.
  • შედგენილი PDF‑მა უნდა შეინარჩუნოს 3D მონაცემები, რათა Adobe Acrobat-ის მსგავს მაყურებლებს შეუძლია იგი ინტერაქტიულად აჩვენოთ.
  • გარდაქმნის პროცესი უნდა იყოს ავტომატიზებული, სერვერზე გაშვებული და უნდა იმუშაოს დიდი ბატჩებით ხელით შეწყვეტის გარეშე.

ტრადიციული დესკტოპის ინსტრუმენტები ღრუბლოვან გარემოში სანდოდ ვერ სკრიპტდება, და ხშირად გადაყვანისას 3D ნაკადებს იწვევს. ამიტომ აუცილებელია პროგრამული გადაწყვეტა, რომელიც 3D მოდელს ინარჩუნებს და PDF/A შესაბამისობას უზრუნველყოფს.

მიმოხილვა: Aspose.Words Cloud-ის გამოყენება 3D PDF-სთვის

Aspose.Words Cloud SDK for .NET უზრუნველყოფს REST‑ზე დაფუძნებული ოპერაციების ნაკრებს, რომლებიც მუშაობენ Aspose-ის უსაფრთხო სერვერებზე. სცენარის გადაჭრაზე მიმართული ძირითადი შესაძლებლობები მოიცავს:

  • DOCX ფაილების პირდაპირი ატვირთვა Aspose Cloud საცავში.
  • PdfSaveOptionsData, რომელიც საშუალებას გაძლევთ კონტროლировать PDF‑ის შესაბამისობა, ველების განახლება და, განსაკუთრებით, ჩადგმული 3D შიგთავსის შენარჩუნება.
  • ასინქრონული კონვერსიის მეთოდები, რომლებიც აბრუნებენ ნაკადს, რაც საშუალებას გაძლევთ გამომავალი ფაილი პირდაპირ დისკზე დაწეროთ.

ერთობლივი ეს ფუნქციები საშუალებას აძლევს სუფთა 3D‑დან PDF-მდე სამუშაო ნაკადს, რომელიც შეიძლება ინტეგრირდეს CI პაიპლაინებში, ვებ‑სერვისებში ან ფონურ დავალებებში. დეტალური API ინფორმაციის მიღება შესაძლებელია ოფიციალურ დოკუმენტაციაში და API მიმართვაში.

ინტერაქტიული 3D PDF-ის გენერირება C#-ში: განხორციელება

ქვემოთ წარმოდგენილია ნაბიჯ‑ნაბიჯ მიმოხილვა განხორციელების. თითოეული ნაბიჯი შეიცავს მოკლე კოდის ნაწერს, რომელიც პირდაპირ სრულ მაგალითიდან აღებულია.

დააყენეთ Aspose.Words Cloud SDK for .NET

ჯერ დაამატეთ NuGet პაკეტი თქვენს პროექტში.

dotnet add package Aspose.Words-Cloud

თქვენ ასევე შეგიძლიათ ბინარიული ფაილების გადმოწერა ჩამოტვირთვის გვერდიდან.

WordsApi კლიენტის კონფიგურირება

შექმენით 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-ის ნაწილი, რომელიც უზრუნველყოფს ინტერაქტიული მოდელის მთლიანობას.

გარდაქმნა და გადმოწერა ინტერაქტიული 3D PDF

გამოძახეთ გადაყვანის მოთხოვნა და დაწერეთ მიღებული ნაკადი ლოკალურ 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);
}

კონვერტაციის შემდეგ, თქვენ შეგიძლიათ არასავალდებულოდ წაშალოთ დროებითი ფაილი ღრუბლოვანი შენახვიდან.

სრული კოდის მაგალითი: ინტერაქტიული 3D PDF-ის გენერაცია 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, ა.შ.) თქვენი რეალური ფაილების მდებარეობებთან, გადაამოწმეთ, რომ ყველა საჭირო დამოკიდებულება სწორად დაინსტალირებულია, და სრულად ტესტირეთ თქვენი განვითარების გარემოში. თუ რაიმე პრობლემას შეხვდეთ, გთხოვთ მიმართოთ ოფიციალურ დოკუმენტაციას ან დაუკავშირდეთ მხარდაჭერის გუნდს დახმარებისთვის.

შეასრულეთ 3D PDF კონვერტირება cURL-ით და REST API-ით

იგივე ოპერაცია შეიძლება შესრულდეს cURL გამოძახებებით Aspose.Words Cloud REST endpoint-ებზე.

  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"
  1. ატვირთეთ 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
  1. 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
  1. გადმოწერეთ მიღებული PDF (წინამდებარი ბრძანება უკვე შეინახა იგი ლოკალურად, თუმცა შეგიძლიათ ასევე გადმოწეროთ პირდაპირ).

მოთხოვნის სხეულებისა და დამატებითი პარამეტრების შესახებ მეტი დეტალებისთვის, იხილეთ ოფიციალური API დოკუმენტაცია.

3D PDF გენერაციისთვის განთავსების განხილვები

ამ გადაწყვეტის წარმოების გარემოში ინტეგრაციისას, გაითვალისწინეთ შემდეგი საკითხები:

  • სერვერის მდებარეობა - გადაყვანა მუშაობს Aspose-ის ღრუბლოვან სერვერებზე, ამიტომ დარწმუნდით, რომ თქვენი ქსელი აძლევს დაშვებას გამავალი HTTPS ტრეფიკისთვის api.aspose.cloud.
  • ლიცენზირება - სამუშაო გარემოში კომერციული ლიცენზია აუცილებელია. შეგიძლიათ დაიწყოთ დროებით ლიცენზიით დროებითი ლიცენზიის გვერდიდან.
  • მასშტაბურობა - რადგან API-ს სტატუსი არ აქვს, შეგიძლიათ პერალელიზაცია ატვირთვების და გადაყვანების მრავალ სამუშაო ინსტანსზე, რათა მართოთ მაღალი მოცულობის ბაჩები, რაც სრულ 3D to PDF Automation‑ს უჭერს მხარდაჭერას.

დასკვნა

ინტერაქტიული 3D PDF-ის შექმნა C#-ში ხდება მარტივი Aspose.Words Cloud SDK for .NET‑ის საშუალებით. ზემოთ მითითებული ნაბიჯების მიყოლებით შეგიძლიათ ჩასვით U3D ან PRC მოდელები, შეინახოთ ისინი PDF-ის კონვერტაციისას და ავტომატიზიროთ სამუშაო პროცესი .NET ბიბლიოთეკის ან პირდაპირ REST მოთხოვნებით. დამახსოვრეთ, რომ მიიღოთ შესაბამისი ლიცენზია პროდუქციისთვის და გამოცადოთ შექმნილი PDF-ები 3D-ს მხარდაჭერით მქონე ნახვით, მაგალითად Adobe Acrobat. ამ შესაძლებლობით შეგიძლიათ მიწოდოთ უფრო მდიდარი, უფრო მიმზიდველი დოკუმენტები ინჟინერიის, მარკეტინგის და ტრენინგის სცენარებისთვის.

ხშირად დასმული კითხვები

როგორ შემიძლია გენერირებ ინტერაქტიურ 3D PDF-ს C#-ში Aspose.Words Cloud-ის გამოყენებით?
გამოიყენეთ SDK, რათა ატვირთოთ DOCX, რომელიც უკვე შეიცავს U3D ან PRC მოდელს, კონფიგურირეთ PdfSaveOptionsData 3D სტრიმების შენარჩუნებისთვის და გამოიძახეთ ConvertDocumentAsync. სტატიის სრულ კოდის მაგალითი აჩვენებს ზუსტად ამ რიგს.

PDF კონვერტაციისთვის რომელი 3D მოდელის ფორმატებია, რომელსაც შემიძლია ჩასვათ?
Aspose.Words Cloud მხარდაჭერას იძლევა U3D და PRC ფორმატებს, რომლებიც სტანდარტული ფორმატებია ინტერაქტიული 3D კონტენტისათვის PDF-ებში.

შეიძლება თუ არა გარდაქმნის შესრულება C# კოდის დაწერის გარეშე?
დიახ, იგივე პროცესი შეიძლება შესრულდეს cURL ბრძანებების საშუალებით Aspose.Words Cloud REST API-ის მიმართ, როგორც ნაჩვენებია cURL განყოფილებაში.

სად შეიძლება ვიპოვო ფასის და ლიცენზირების ინფორმაცია?
კომერციული ლიცენზირების დეტალები ხელმისაწვდომია პროდუქტის გვერდზე, და შეგიძლიათ მიიღოთ დროებითი ლიცენზია შეფასებისთვის დროებითი ლიცენზიის გვერდიდან.

მეტი