Configurar las propiedades ScaleCrop y LinksUpToDate de las propiedades de documento incorporadas con JavaScript vía C++

Escenarios de uso posibles

BuiltInDocumentPropertyCollection.scaleCrop y BuiltInDocumentPropertyCollection.linksUpToDate son dos propiedades extendidas incorporadas definidas dentro del formato OpenXml. El propósito de estas propiedades es lo siguiente.

1) ScaleCrop

Este elemento indica el modo de visualización de la miniatura del documento. Establezca este elemento en TRUE para habilitar el escalado de la miniatura del documento para la visualización. Establezca este elemento en FALSE para habilitar el recorte de la miniatura del documento para mostrar solo las secciones que se ajusten a la pantalla.

Los valores posibles para este elemento están definidos por el tipo de datos booleano del esquema XML de W3C.

2) LinksUpToDate

Este elemento indica si los hipervínculos en un documento están actualizados. Establezca este elemento en TRUE para indicar que los hipervínculos están actualizados. Establezca este elemento en FALSE para indicar que los hipervínculos están desactualizados.

Los valores posibles para este elemento están definidos por el tipo de datos booleano del esquema XML de W3C.

Captura de pantalla que muestra estas propiedades dentro del archivo app.xml

todo:image_alt_text

Establecer las propiedades ScaleCrop y LinksUpToDate de las propiedades de documento Integradas

El siguiente ejemplo de código establece las propiedades extendidas incorporadas del libro de trabajo BuiltInDocumentPropertyCollection.scaleCrop y BuiltInDocumentPropertyCollection.linksUpToDate. Por favor, revisa el archivo excel de salida generado con este código, cambia su extensión a .zip, extrae su contenido y visualiza el app.xml como se muestra en la captura de pantalla anterior.

<!DOCTYPE html>
<html>
    <head>
        <title>Aspose.Cells Example</title>
    </head>
    <body>
        <h1>Aspose.Cells Example - Set BuiltIn Document Properties</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 } = 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');

            // Create or load workbook
            let workbook;
            if (fileInput.files.length) {
                const file = fileInput.files[0];
                const arrayBuffer = await file.arrayBuffer();
                workbook = new Workbook(new Uint8Array(arrayBuffer));
            } else {
                workbook = new Workbook();
            }

            // Accessing BuiltIn Document Properties and setting properties
            const builtInDocumentProperties = workbook.builtInDocumentProperties;
            // Setting ScaleCrop and LinksUpToDate BuiltIn Document Properties.
            builtInDocumentProperties.scaleCrop = true;
            builtInDocumentProperties.linksUpToDate = true;

            // Saving the Excel file.
            const outputData = workbook.save(SaveFormat.Auto);
            const blob = new Blob([outputData]);
            const downloadLink = document.getElementById('downloadLink');
            downloadLink.href = URL.createObjectURL(blob);
            downloadLink.download = 'output.xls';
            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>