Bloqueo de marca de agua WordArt con JavaScript a través de C++
Contents
[
Hide
]
Las APIs de Aspose.Cells permiten agregar marcas de agua WordArt en la hoja de cálculo de forma que el WordArt se convierte en un objeto que puedes mover y posicionar en la hoja de cálculo. También es posible bloquear el objeto WordArt para cualquier interacción como editar, mover y seleccionar. Este artículo explica el uso del método Shape.lockedProperty(ShapeLockType, boolean) para bloquear algunos aspectos de la marca de agua.
Las API de Aspose.Cells permiten bloquear ciertos aspectos de la marca de agua para limitar o bloquear por completo la interacción del usuario. El siguiente fragmento de código demuestra el uso de Aspose.Cells for JavaScript a través de C++ para bloquear selección, movimiento, edición y cambio de tamaño de la marca de agua creando una hoja de cálculo desde cero.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
</head>
<body>
<h1>Aspose.Cells Add Watermark 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 () => {
const fileInput = document.getElementById('fileInput');
let workbook;
if (fileInput.files && fileInput.files.length) {
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
workbook = new Workbook(new Uint8Array(arrayBuffer));
} else {
// Instantiate a new Workbook (empty)
workbook = new Workbook();
}
// Get the first default sheet
const sheet = workbook.worksheets.get(0);
// Add Watermark
const wordart = sheet.shapes.addTextEffect(
AsposeCells.MsoPresetTextEffect.TextEffect1,
"CONFIDENTIAL",
"Arial Black",
50,
false,
true,
18,
8,
1,
1,
130,
800
);
// Lock Shape Aspects
wordart.isLocked = true;
wordart.lockedProperty = {
[AsposeCells.ShapeLockType.Selection]: true,
[AsposeCells.ShapeLockType.ShapeType]: true,
[AsposeCells.ShapeLockType.Move]: true,
[AsposeCells.ShapeLockType.Resize]: true,
[AsposeCells.ShapeLockType.Text]: true
};
// Get the fill format of the word art
const wordArtFormat = wordart.fill;
// Set the color (converted to property assignment with args object)
wordArtFormat.oneColorGradient = {
color: AsposeCells.Color.Red,
variant: 0.2,
style: AsposeCells.GradientStyleType.Horizontal,
variant2: 2
};
// Set the transparency
wordArtFormat.transparency = 0.9;
// Make the line invisible
wordart.hasLine = false;
// 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 = 'output_out.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Modified Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">Watermark added successfully! Click the download link to get the modified file.</p>';
});
</script>
</html>