Ein Bild basierend auf Zellreferenz mit JavaScript via C++ einfügen
Contents
[
Hide
]
Manchmal haben Sie ein leeres Bild und müssen Daten oder Inhalte im Bild anzeigen, indem Sie einen Zellbezug in der Formel-Leiste festlegen. Aspose.Cells unterstützt diese Funktion (Microsoft Excel 2010).
Einfügen eines Bildes anhand eines Zellbezugs
Aspose.Cells for JavaScript via C++ unterstützt die Anzeige des Inhalts einer Zelle in einer Bildform. Sie können das Bild mit der Zelle verknüpfen, die die anzuzeigenden Daten enthält. Da die Zelle oder der Zellbereich mit dem Grafikobjekt verknüpft ist, erscheinen Änderungen an den Daten in dieser Zelle oder diesem Zellbereich automatisch im Grafikelement. Fügen Sie ein Bild zum Arbeitsblatt hinzu, indem Sie die ShapeCollection.addPicture(number, number, number, number, Uint8Array)-Methode der ShapeCollection-Sammlung aufrufen (eingeschlossen in das Worksheet-Objekt). Der Zellbereich wird mit dem Picture.formula-Attribut des Picture-Objekts angegeben.
Codebeispiel
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
</head>
<body>
<h1>Referenced Picture Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, Utils } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
// Instantiate a new Workbook
const workbook = new Workbook();
// Get the first worksheet's cells collection
const cells = workbook.worksheets.get(0).cells;
// Add string values to the cells
cells.get("A1").value = "A1";
cells.get("C10").value = "C10";
// Get the conditional icon's image data
const imagedata = AsposeCells.ConditionalFormattingIcon.iconImageData(AsposeCells.IconSetType.TrafficLights31, 0);
// Create a stream based on the image data
const stream = Uint8Array.from(imagedata);
// Add a blank picture to the D1 cell
const pic = workbook.worksheets.get(0).shapes.addPicture(0, 3, stream, 10, 10);
// Specify the formula that refers to the source range of cells
pic.formula = "A1:C10";
// Update the shapes selected value in the worksheet
workbook.worksheets.get(0).shapes.updateSelectedValue();
// Saving the modified Excel file
const outputData = workbook.save(SaveFormat.Xlsx);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'referencedpicture.out.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">Operation completed successfully! Click the download link to get the modified file.</p>';
});
</script>
</html>