اکسل به PDF

اکسل را با استفاده از Node.js به PDF تبدیل کنید

اکسل یکی از فرمت های محبوب فایل برای ذخیره سازی داده های محاسباتی است. این می تواند داده هایی مانند اعداد و فرمول ها، متن و رسم اشکال را ذخیره کند. علاوه بر این، اکسل بخشی از مجموعه نرم افزار Microsoft Office است، بنابراین بسیاری از کاربران از آن برای تولید فایل های XLS استفاده می کنند. علاوه بر این، با توجه به قابلیت‌های آن برای ذخیره داده‌ها در شبکه‌ای از سلول‌های مرتب شده در ردیف‌های شماره‌دار و ستون‌هایی با نام حروف برای سازمان‌دهی دستکاری داده‌ها مانند عملیات‌های حسابی، بسیار محبوب شده است. اما برای مشاهده این فایل ها باید اپلیکیشن خاصی را نصب کنید. همچنین نسخه های مختلف نرم افزار فایل ها را با فرمت های مختلف نمایش می دهد. بنابراین، برای حل همه این مسائل، تبدیل فایل به فرمت PDF راه حل مناسبی است زیرا اکثر مرورگرهای وب روی دسکتاپ و برنامه های مختلف رایگان در دستگاه های تلفن همراه به راحتی اسناد PDF را نمایش می دهند.

در این مقاله قصد داریم در مورد تبدیل Excel به PDF با استفاده از Cloud REST API صحبت کنیم.

API تبدیل اکسل به PDF

Aspose.Cells Cloud برنده جایزه REST API ما است که توانایی ایجاد فایل‌های اکسل از ابتدا، ویرایش محتوای فایل‌های موجود و ارائه فایل به فرمت‌هایی مانند XLSM، HTML، XPS، TIFF، SVG و بسیاری موارد دیگر را ارائه می‌دهد. بنابراین، طبق محدوده این مقاله، ما قصد داریم از Aspose.Cells Cloud SDK برای Node.js استفاده کنیم.

با استفاده از دستورات cURL اکسل را به PDF تبدیل کنید

در این قسمت قصد داریم از دستورات cURL برای ذخیره اکسل در فرمت PDF استفاده کنیم. بنابراین اولین قدم ایجاد اشتراک حساب رایگان در Aspose.Cloud dashboard است. اگر یک حساب GitHub یا Google دارید، به سادگی ثبت نام کنید. در غیر این صورت، روی دکمه Create a new Account کلیک کنید و اطلاعات مورد نیاز را ارائه دهید. برای دسترسی به اعتبار مشتری خود وارد داشبورد شوید.

اکنون، لطفاً دستور زیر را برای تولید توکن دسترسی JWT اجرا کنید.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=718e4235-8866-4ebe-bff4-f5a14a4b6466&client_secret=388e864b819d8b067a8b1cb625a2ea8e" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

هنگامی که توکن JWT را داریم، باید دستور cURL زیر را برای آپلود یک فایل از سیستم محلی، در فضای ذخیره سازی ابری اجرا کنیم و سپس تبدیل به فرمت PDF را انجام دهیم.

curl -X PUT "https://api.aspose.cloud/v3.0/cells/storage/file/conditional.xls" \
-H  "accept: application/json" 
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"File":{}}
https://api.aspose.cloud/v3.0/cells/storage/file/conditional.xlsx

در صورت نیاز به تبدیل یک فایل XLS از قبل موجود در فضای ذخیره سازی ابری به فرمت PDF، لطفاً از دستور cURL زیر استفاده کنید:

curl -X GET "https://api.aspose.cloud/v3.0/cells/conditional.xls?format=PDF&isAutoFit=true&onlySaveTable=false&outPath=output.pdf" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

XLS را به PDF در Node.js تبدیل کنید

در این قسمت قصد داریم مراحل و جزئیات نحوه تبدیل کاربرگ Excel به فرمت PDF با استفاده از Node.js SDK را مورد بحث قرار دهیم. اولین قدم نصب SDK بر روی سیستم محلی است که برای دانلود در NPM و GitHub در دسترس است. بنابراین دستور زیر را برای نصب SDK از NPM اجرا می کنیم

npm i asposecellscloud

پس از نصب، می‌توانیم قطعه کد زیر را برای انجام تبدیل XLS به PDF با استفاده از Node.js اجرا کنیم.

  • اشیایی ایجاد کنید که شناسه مشتری و جزئیات راز مشتری را تعریف می کنند.
  • سپس یک شی از کلاس CellsApi ایجاد کنید که شناسه مشتری و جزئیات Client Secret را به عنوان آرگومان می گیرد.
  • گام بعدی خواندن محتویات فایل ورودی XLS موجود در سیستم محلی با استفاده از روش createReadStream(…) در ماژول سیستم فایل است.
  • اکنون یک نمونه از کلاس UploadFileRequest ایجاد کنید و سپس داده های جریان ورودی را به ویژگی فایل ارسال کنید.
  • برای آپلود فایل در فضای ذخیره سازی ابری، لطفاً با روش uploadFile(…) CellsApi تماس بگیرید.
  • مرحله بعدی ایجاد یک شی از کلاس CellsSaveAsPostDocumentSaveAsRequest(…) است.
  • علاوه بر این، یک نمونه از کلاس PdfSaveOptions ایجاد کنید و مقدار PDF را به ویژگی saveFormat منتقل کنید.
  • در نهایت، متدcellSaveAsPostDocumentSaveAs(..) از کلاس CellsApi را فراخوانی کنید تا فرآیند تبدیل آغاز شود.
const { CellsApi, CellsSaveAs_PostDocumentSaveAsRequest,UploadFileRequest,PdfSaveOptions } = require("asposecellscloud");

// ClientId و ClientSecret خود را از https://dashboard.aspose.cloud دریافت کنید (ثبت نام رایگان لازم است).
const clientId = "718e4235-8866-4ebe-bff4-f5a14a4b6466";
const clientSecret = "388e864b819d8b067a8b1cb625a2ea8e";

// یک نمونه از CellsApi ایجاد کنید
const cellsApi = new CellsApi(clientId, clientSecret);

// نام سند ورودی اکسل
filename = "conditional.xlsx"

// مرجع ماژول File System را در کد خود قرار دهید
const fs = require("fs");

// محتوای فایل اکسل ورودی را بخوانید
var data =fs.createReadStream("/Users/nayyershahbaz/Downloads/"+ filename);

// نمونه درخواست فایل آپلود را ایجاد کنید
var req = new UploadFileRequest();
req.path = filename;
// محتوا را به عنوان نمونه Stream حاوی فایل اکسل بارگذاری شده تنظیم کنید
req.file = data;

// فایل را در فضای ذخیره سازی ابری آپلود کنید
return cellsApi.uploadFile(req)
    .then((result) => {
        // نمونه SaveAsRequest سند ایجاد کنید
        var req = new CellsSaveAs_PostDocumentSaveAsRequest();
        req.name = filename;

        // یک شی از کلاس PdfSaveOptions ایجاد کنید
        req.saveOptions = new PdfSaveOptions();
  
        // فرمت فایل حاصل را به صورت PDF تنظیم کنید
        req.saveOptions.saveFormat = "pdf";
        
        // نام فایل حاصل جدید را تنظیم کنید
        req.newfilename = "newbook.pdf";
        // از آنجایی که می خواهیم در مکان پیش فرض ذخیره کنیم، بنابراین null را به عنوان مقدار پوشه تنظیم می کنیم        
        req.folder = null;
    
        // برای شروع فرآیند تبدیل، متد SaveAsPostDocument را فراخوانی کنید     
        return cellsApi.cellsSaveAsPostDocumentSaveAs(req)
            .then((result) => {
            expect(result.body.code).to.equal(200);
            expect(result.response.statusCode).to.equal(200);
        });
    });

نتیجه گیری

در این مقاله به صورت ساده و راحت به جزئیات تبدیل اکسل به فرمت PDF پرداخته ایم. لطفاً توجه داشته باشید که Aspose.Cells Cloud SDK برای Node.js بر اساس اصول منبع باز توسعه یافته است، بنابراین کد منبع کامل برای دانلود در GitHub موجود است. اگر هنگام استفاده از API با مشکلی مواجه شدید یا سؤالات مرتبطی دارید، لطفاً از طریق تالار گفتمان پشتیبانی رایگان محصول سؤال کنید.

مقالات مرتبط

برای کسب اطلاعات بیشتر می توانید از لینک های زیر دیدن کنید