Infoga bilder och former i Excel filer med Node.js via C++

Former i Excel är huvudsakligen indelade i följande typer:

  • Bilder
  • OleObjekt
  • Linjer
  • Rektanglar
  • Grundformer
  • Blockpilar
  • Ekvationformer
  • Flödesscheman
  • Stjärnor och banderoller
  • Inrop

Detta guide-dokument kommer att välja en eller två former från varje typ för att skapa exempel. Genom dessa exempel kommer du att lära dig hur du använder Aspose.Cells för att infoga den specificerade formen i kalkylbladet.

Lägga till bilder i Excel-kalkylblad med Node.js

Att lägga till bilder i ett kalkylblad är mycket enkelt. Det tar bara några rader kod:
Anropa helt enkelt PictureCollection.add(number, number, number, number, Uint8Array)-metoden för Pictures-samlingen (inkapslad i Worksheet objektet). PictureCollection.add(number, number, number, number, Uint8Array)-metoden tar följande parametrar:

  • Övre vänstra radindex, indexet för den övre vänstra raden.
  • Övre vänstra kolumnindex, indexet för den övre vänstra kolumnen.
  • Bildfilnamn, namnet på bildfilen, komplett med sökväg.
const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");

// Instantiating a Workbook object
const workbook = new AsposeCells.Workbook();

// Adding a new worksheet to the Workbook object
const sheetIndex = workbook.getWorksheets().add();

// Obtaining the reference of the newly added worksheet by passing its sheet index
const worksheet = workbook.getWorksheets().get(sheetIndex);

// Adding a picture at the location of a cell whose row and column indices
// Are 5 in the worksheet. It is "F6" cell
worksheet.getPictures().add(5, 5, path.join(dataDir, "logo.jpg"));

// Saving the Excel file
workbook.save(path.join(dataDir, "output.xls"));

Infoga OLE-objekt i Excel-kalkylblad med Node.js

Aspose.Cells stöder tillägg, extrahering och manipulation av OLE-objekt i kalkylblad. Av denna anledning har Aspose.Cells klassen OleObjectCollection, som används för att lägga till ett nytt OLE-objekt till listan. En annan klass, OleObject, representerar ett OLE-objekt. Den har några viktiga medlemmar:

  • Egenskapen OleObject.getImageData() specificerar bild (ikonen) data av typ byte-array. Bilden kommer att visas för att visa OLE-objektet i kalkbladet.
  • Egenskapen OleObject.getObjectData() specificerar objektets data i form av en byte-array. Denna data kommer att visas i det relaterade programmet när du dubbelklickar på OLE-objektets ikon.

Följande exempel visar hur man lägger till en OLE-objekt/-objekt i ett arbetsblad.

const path = require("path");
const fs = require("fs");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");

// Instantiate a new Workbook.
const workbook = new AsposeCells.Workbook();

// Get the first worksheet.
const sheet = workbook.getWorksheets().get(0);

// Define a string variable to store the image path.
const imageUrl = path.join(dataDir, "logo.jpg");

// Get the picture into the streams.
const imageData = fs.readFileSync(imageUrl);

// Get an excel file path in a variable.
const excelFilePath = path.join(dataDir, "book1.xls");

// Get the file into the streams.
const objectData = fs.readFileSync(excelFilePath);

// Add an Ole object into the worksheet with the image
// Shown in MS Excel.
sheet.getOleObjects().add(14, 3, 200, 220, imageData);

// Set embedded ole object data.
sheet.getOleObjects().get(0).setObjectData(objectData);

// Save the excel file
workbook.save(path.join(dataDir, "output.out.xls"));

Infoga en linje i Excel-kalkylblad med Node.js

Linjens form tillhör kategorin lines.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga linjen
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan linjen från ‘Senast använda former’ eller ‘Lines’

Använda Aspose.Cells

Du kan använda följande metod för att infoga en linje i kalkylarket.

Följande exempel visar hur man infogar en linje i ett kalkylblad.

const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Create workbook from sample file
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the line to the worksheet
sheet.getShapes().addLine(2, 0, 2, 0, 100, 300); // method 1
// sheet.getShapes().addAutoShape(AutoShapeType.Line, 2, 0, 2, 0, 100, 300); // method 2
// sheet.getShapes().addShape(MsoDrawingType.Line, 2, 0, 2, 0, 100, 300); // method 3

// Save. You can check your line in this way.
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga en linjepil i Excel-kalkylblad med Node.js

Formen av linjepilen tillhör kategorin Lines. Det är ett specialfall av linje.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga linjepilen
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan linjepilen från ‘Senast använda former’ eller ‘Lines’

Använda Aspose.Cells

Du kan använda följande metod för att infoga en linjepil i kalkylarket.

Följande exempel visar hur man infogar en linje pil i ett kalkylblad.

const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Loads the workbook which contains hidden external links
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the line arrow to the worksheet
let s = sheet.getShapes().addLine(2, 0, 2, 0, 100, 300); // method 1
// let s = sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.Line, 2, 0, 2, 0, 100, 300); // method 2
// let s = sheet.getShapes().addShape(AsposeCells.MsoDrawingType.Line, 2, 0, 2, 0, 100, 300); // method 3

// add a arrow at the line begin
s.getLine().setBeginArrowheadStyle(AsposeCells.MsoArrowheadStyle.Arrow); // arrow type
s.getLine().setBeginArrowheadWidth(AsposeCells.MsoArrowheadWidth.Wide); // arrow width
s.getLine().setBeginArrowheadLength(AsposeCells.MsoArrowheadLength.Short); // arrow length

// add a arrow at the line end
s.getLine().setEndArrowheadStyle(AsposeCells.MsoArrowheadStyle.ArrowOpen); // arrow type
s.getLine().setEndArrowheadWidth(AsposeCells.MsoArrowheadWidth.Narrow); // arrow width
s.getLine().setEndArrowheadLength(AsposeCells.MsoArrowheadLength.Long); // arrow length

// Save. You can check your arrow in this way.
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga ett rektangel i Excel-kalkylblad med Node.js

Formen av rektangeln tillhör kategorin Rectangles.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga rektangeln
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan rektangeln från ‘Senast använda former’ eller ‘Rectangles’

Använda Aspose.Cells

Du kan använda följande metod för att infoga en rektangel i kalkylarket.

Följande exempel visar hur man infogar ett rektangel i ett kalkylblad.

const AsposeCells = require("aspose.cells.node");
const path = require("path");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Create workbook from sample file
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the rectangle to the worksheet
sheet.getShapes().addRectangle(2, 0, 2, 0, 100, 300);

// Save
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga en Kub i Excel-Arbetsblad med Node.js

Kubens form tillhör kategorin Grundformer.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga kuben
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan Kuben från Grundformer

Använda Aspose.Cells

Du kan använda följande metod för att infoga en kub i kalkylarket.

Följande exempel visar hur man infogar en kub i ett arbetsblad.

const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Loads the workbook which contains hidden external links
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the cube to the worksheet
sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.Cube, 2, 0, 2, 0, 100, 300);

// Save. You can check your cube in this way.
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga ett callout-quad-kommando i Excel-Arbetsblad med Node.js

Formen av callout-quad-kommando tillhör kategorin Blockpilar.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga återuppringningspilar
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan callout-quad-kommando från Blockpilar

Använda Aspose.Cells

Du kan använda följande metod för att infoga återuppringningspilar i kalkylarket.

Följande exempel visar hur man infogar ett callout-quad-kommando i ett arbetsblad.

const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Loads the workbook which contains hidden external links
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the callout quad arrow to the worksheet
sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.QuadArrowCallout, 2, 0, 2, 0, 100, 100);

//Save
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga ett multiplikations-tecken i Excel-Arbetsblad med Node.js

Formen av multiplikationstecknet tillhör kategorin Ekvationsformer.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga multiplikationstecknet
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan multiplikationstecknet från Ekvationsformer

Använda Aspose.Cells

Du kan använda följande metod för att infoga ett multiplikationstecken i kalkylarket.

Följande exempel visar hur man infogar ett multiplikations-tecken i ett arbetsblad.

const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Loads the workbook which contains hidden external links
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the multiplication sign to the worksheet
sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.MathMultiply, 2, 0, 2, 0, 100, 100);

// Save. You can check your multiplication in this way.
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga ett flerdokument i Excel-Arbetsblad med Node.js

Formen av flerdokumentet tillhör kategorin Flödesscheman.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga multi-dokument
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan flerdokumentet från Flödesscheman

Använda Aspose.Cells

Du kan använda följande metod för att infoga ett multi-dokument i arbetsbladet.

Följande exempel visar hur man infogar ett flerdokument i ett arbetsblad.

const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Create workbook from sample file
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the multidocument to the worksheet
sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.FlowChartMultidocument, 2, 0, 2, 0, 100, 100);

// Save
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga en femuddig stjärna i Excel-Arbetsblad med Node.js

Formen av femuddig stjärna tillhör kategorin Stjärnor och Band.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga Femuddig stjärna
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan femuddig stjärna från Stjärnor och Band

Använda Aspose.Cells

Du kan använda följande metod för att infoga en Femuddig stjärna i arbetsbladet.

Följande exempel visar hur man infogar en femuddig stjärna i ett arbetsblad.

const AsposeCells = require("aspose.cells.node");
const path = require("path");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Create workbook from sample file
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the Five-pointed star to the worksheet
sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.Star5, 2, 0, 2, 0, 100, 100);

// Save. You can check your icon in this way.
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Infoga en tankebubbla i Excel-Arbetsblad med Node.js

Formen av tankebubblan tillhör kategorin Callouts.

I Microsoft Excel (till exempel 2007):

  • Välj cellen där du vill infoga pratbubblan
  • Klicka på Infoga-menyn och klicka på Former.
  • Välj sedan tankebubblan från Callouts

Använda Aspose.Cells

Du kan använda följande metod för att infoga en pratbubbla i arbetsbladet.

Följande exempel visar hur man infogar en tankebubbla i ett arbetsblad.

const AsposeCells = require("aspose.cells.node");
const path = require("path");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = path.join(dataDir, "sample.xlsx");
// Loads the workbook which contains hidden external links
const workbook = new AsposeCells.Workbook(filePath);

// Access first worksheet from the collection
const sheet = workbook.getWorksheets().get(0);

// Add the thought bubble cloud to the worksheet
sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.CloudCallout, 2, 0, 2, 0, 100, 100);

// Save
workbook.save("sample.xlsx", AsposeCells.SaveFormat.Xlsx);

Exekvera ovanstående kod, kommer du att få följande resultat:

Fortsatta ämnen