Create PowerPoint in Node.js

نرم‌افزار Microsoft PowerPoint (در ویندوز، macOS و دیگر پلتفرم‌ها) به شما این امکان را می‌دهد که ارائه‌ها و اسلایدشوهایی شامل متن‌ها، تصاویر، نمودارها، انیمیشن‌ها و بسیاری از عناصر دیگر ایجاد کنید.

با اتمام این مقاله، شما یاد خواهید گرفت چگونه پاورپوینت را در Node.js ایجاد کنید و انواع محتوا را به یک ارائه اضافه کنید با اجرای کد در node.js.

دریافت API پاورپوینت Node.js

Aspose.Slides Node.js PowerPoint API

Aspose.Slides for Node.js via Java یک API قدرتمند است که همه چیزهایی که برنامه‌نویسان و برنامه‌ها نیاز دارند تا اسناد پاورپوینت را در node.js و برنامه‌های سمت سرور جاوااسکریپت ایجاد، باز، تبدیل و دستکاری کنند، فراهم می‌کند.

شما می‌توانید Aspose.Slides for Node.js via Java را از NPM با اجرای این دستور نصب کنید:

npm install aspose.slides.via.java

اگر در طول فرآیند نصب با مشکلی مواجه شدید، به این صفحه محصول مراجعه کنید.

نکات:

ایجاد پاورپوینت PPT در Node.js

  1. یک نمونه از کلاس Presentation را ایجاد کنید.
  2. شی را از طریق متد Presentation.save(String, SaveFormat) ذخیره کنید.
// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation();

// Get the first slide
var slide = presentation.getSlides().get_Item(0);

// Add content to slide...

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

باز کردن پاورپوینت PPT در Node.js

  1. یک نمونه از کلاس Presentation ایجاد کنید و مسیر پاورپوینتی را که می‌خواهید باز کنید به سازنده کلاس پاس دهید.
  2. یک کار انجام دهید. می‌توانید مقداری محتوا به یک اسلاید اضافه کنید. می‌توانید هیچ کاری نکنید.
  3. ارائه را ذخیره کنید.
// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation("presentation.pptx");

// Get the first slide
var slide = presentation.getSlides().get_Item(0);

// Add content to slide...

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

اضافه کردن اسلاید به پاورپوینت PPTX در Node.js

  1. یک نمونه از کلاس Presentation ایجاد کنید و مسیر پاورپوینتی را که می‌خواهید اسلایدی به آن اضافه کنید، پاس دهید.
  2. کلاس ISlideCollection را با تنظیم یک مرجع به متد getSlides() نمونه‌سازی کنید.
  3. یک اسلاید خالی به ارائه از طریق متد addEmptySlide(ILayoutSlide) که توسط شیء ISlideCollection در دسترس است، اضافه کنید.
  4. ارائه به‌روز شده را با استفاده از متد Presentation.save(String, SaveFormat) ذخیره کنید.
// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation("presentation.pptx");

// Access the slides collection
var slds = presentation.getSlides();

for (var i = 0; i < presentation.getLayoutSlides().size(); i++) {
	// Add an empty slide to the Slides collection
	slds.addEmptySlide(presentation.getLayoutSlides().get_Item(i));
}

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

اضافه کردن متن به پاورپوینت PPT

  1. یک نمونه از کلاس Presentation ایجاد کنید و مسیر پاورپوینتی را که می‌خواهید متنی به آن اضافه کنید، پاس دهید.
  2. مرجع اسلایدی را که می‌خواهید متنی به آن اضافه کنید از طریق ایندکس آن دریافت کنید.
  3. یک مستطیل از طریق متد addAutoShape() اضافه کنید و مرجع آن را در شیء IAutoShape دریافت کنید.
  4. یک TextFrame به شکل اضافه کنید که شامل متن باشد.
  5. ویژگی‌های مورد نظر خود را برای متن تنظیم کنید، مانند رنگ پر، نوع پر و غیره.
  6. ارائه به‌روز شده را از طریق متد save(String, SaveFormat) ذخیره کنید.
var colorBlack = java.getStaticFieldValue("java.awt.Color", "BLACK");
var colorWhite = java.getStaticFieldValue("java.awt.Color", "WHITE");

// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation("presentation.pptx");

// Get the first slide
var sld = presentation.getSlides().get_Item(0);

// Add an AutoShape of Rectangle type
var ashp = sld.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 150, 75, 150, 50);

// Add ITextFrame to the Rectangle
ashp.addTextFrame("Hello World");

// Change the text color to Black (which is White by default)
ashp.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().getFillFormat()
		.setFillType(java.newByte(aspose.slides.FillType.Solid));
ashp.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().getFillFormat()
		.getSolidFillColor().setColor(colorBlack);

// Change the line color of the rectangle to White
ashp.getShapeStyle().getLineColor().setColor(colorWhite);

// Remove any fill formatting in the shape
ashp.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

ایجاد نمودار در پاورپوینت PPT

  1. یک نمونه از کلاس Presentation ایجاد کنید و مسیر پاورپوینتی را که می‌خواهید نموداری در آن ایجاد کنید، پاس دهید.
  2. مرجع اسلایدی را که می‌خواهید نموداری در آن ایجاد کنید از طریق ایندکس آن دریافت کنید.
  3. نمودار مورد نظر خود را از طریق متد addChart اضافه کنید.
  4. عنوان نمودار را اضافه کنید.
  5. به ورق داده‌های نمودار دسترسی پیدا کنید.
  6. تمام سری‌ها و دسته‌های پیش‌فرض را پاک کنید.
  7. سری‌ها و دسته‌های جدید اضافه کنید.
  8. داده‌های جدید نمودار را برای سری نمودار اضافه کنید.
  9. یک رنگ پر برای سری نمودار تنظیم کنید.
  10. برچسب‌های سری نمودار را اضافه کنید.
  11. ارائه را به عنوان یک فایل PPT ذخیره کنید.
var colorGreen = java.getStaticFieldValue("java.awt.Color", "GREEN");
var colorRed = java.getStaticFieldValue("java.awt.Color", "RED");

// Instantiate a presentation class that represents a PPTX file
var pres = new aspose.slides.Presentation();

// Access the first slide
var sld = pres.getSlides().get_Item(0);

// Add a chart with its default data
var chart = sld.getShapes().addChart(aspose.slides.ChartType.ClusteredColumn, 0, 0, 500, 500);

// Set the chart Title
chart.getChartTitle().addTextFrameForOverriding("Sample Title");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(java.newByte(aspose.slides.NullableBool.True));
chart.getChartTitle().setHeight(20);
chart.hasTitle();

// Set the first series to show values
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);

// Set the index for the chart data sheet
var defaultWorksheetIndex = 0;

// Get the chart data WorkSheet
var fact = chart.getChartData().getChartDataWorkbook();

// Delete the default generated series and categories
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
var s = chart.getChartData().getSeries().size();
s = chart.getChartData().getCategories().size();

// Add new series
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"),chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"),chart.getType());

// Add new categories
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));

// Take the first chart series
var series = chart.getChartData().getSeries().get_Item(0);

// Now populates the series data
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));

// Set the fill color for series
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorRed);

// Take the second chart series
series = chart.getChartData().getSeries().get_Item(1);

// Populate series data
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 30));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 10));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 60));

// Set the fill color for the series
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorGreen);

//Create custom labels for each categories for the new series
// Set the first label to show Category name
var lbl = series.getDataPoints().get_Item(0).getLabel();
lbl.getDataLabelFormat().setShowCategoryName(true);

// Set the second label to show Series name
lbl = series.getDataPoints().get_Item(1).getLabel();
lbl.getDataLabelFormat().setShowSeriesName(true);

// Show value for the third label
lbl = series.getDataPoints().get_Item(2).getLabel();
lbl.getDataLabelFormat().setShowValue(true);
lbl.getDataLabelFormat().setShowSeriesName(true);
lbl.getDataLabelFormat().setSeparator("/");

// Save the presentation with chart
pres.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

اضافه کردن تصویر به PPT در Node.js

  1. یک نمونه از کلاس Presentation ایجاد کنید.
  2. مرجع اسلایدی را که می‌خواهید تصویری به آن اضافه کنید از طریق ایندکس آن دریافت کنید.
  3. یک شیء IPPImage با افزودن تصویری به IImagescollection که با شیء ارائه مرتبط است، ایجاد کنید که برای پر کردن شکل استفاده خواهد شد.
  4. عرض و ارتفاع تصویر را مشخص کنید.
  5. یک PictureFrame بر اساس عرض و ارتفاع تصویر از طریق متد AddPictureFrame که توسط شیء شکل مرتبط با اسلاید مرجع در دسترس است، ایجاد کنید.
  6. یک کادر تصویر (که شامل تصویر است) به اسلاید اضافه کنید.
  7. ارائه را به عنوان یک فایل PPT ذخیره کنید.
var fileStream = fs.createReadStream("image.png");
aspose.slides.readBytesFromStream(fileStream, function (imgArray) {
    var pres = new aspose.slides.Presentation();
    var img = pres.getImages().addImage(imgArray);
    pres.getSlides().get_Item(0).getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 10, 10, 200, 200, img); 
    pres.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);    
});

نتیجه‌گیری

در این مقاله، ما شما را از طریق عملیات ایجاد پاورپوینت در Node.js و انجام سایر وظایف با اجرای چند خط کد Node.js راهنمایی کردیم. ممکن است به یادگیری بیشتر در مورد API قدرتمند پاورپوینت که همه چیز را آسان می‌کند، علاقه‌مند باشید.

همچنین ببینید

  • ویژگی‌های Aspose.Slides for Node.js via Java Features.
  • مستندات Aspose.Slides for Node.js via Java Documentation.