104 lines
43 KiB
JavaScript
104 lines
43 KiB
JavaScript
/*
|
|
* (c) Copyright Ascensio System SIA 2010-2023
|
|
*
|
|
* This program is a free software product. You can redistribute it and/or
|
|
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
|
* version 3 as published by the Free Software Foundation. In accordance with
|
|
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
|
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
|
* of any third-party rights.
|
|
*
|
|
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
|
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
|
*
|
|
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
|
|
* street, Riga, Latvia, EU, LV-1050.
|
|
*
|
|
* The interactive user interfaces in modified source and object code versions
|
|
* of the Program must display Appropriate Legal Notices, as required under
|
|
* Section 5 of the GNU AGPL version 3.
|
|
*
|
|
* Pursuant to Section 7(b) of the License you must retain the original Product
|
|
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
|
* grant you any rights under trademark law for use of our trademarks.
|
|
*
|
|
* All the Product's GUI elements, including illustrations and icon sets, as
|
|
* well as technical writing content are licensed under the terms of the
|
|
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
|
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
|
*
|
|
*/
|
|
|
|
$(function() {
|
|
var api = new Asc.VisioEditorApi({
|
|
'id-view': 'editor_sdk'
|
|
});
|
|
AscCommon.g_oTableId.init();
|
|
|
|
let emptyVsdxFileBase64 = "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";
|
|
let rectangleVsdxBase64 = "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";
|
|
|
|
//todo events
|
|
setTimeout(startTests, 3000);
|
|
|
|
function startTests() {
|
|
// Read and parse vsdx file
|
|
const fileBase64 = emptyVsdxFileBase64;
|
|
|
|
const api = new Asc.VisioEditorApi({'id-view': 'editor_sdk'});
|
|
api.InitEditor();
|
|
let vsdxUint8Array = AscCommon.Base64.decode(fileBase64);
|
|
const openResOriginal = api.OpenDocumentFromZip(vsdxUint8Array);
|
|
|
|
let doc = api.Document;
|
|
// colorizeRectange(api.Document, "#A2A2A2");
|
|
addSquarePolygon(doc, 4, 6);
|
|
|
|
// serialize
|
|
api.saveDocumentToZip(api.Document, AscCommon.c_oEditorId.Visio, function (data) {
|
|
if (data) {
|
|
AscCommon.DownloadFileFromBytes(data, "fileName", AscCommon.openXml.GetMimeType("vsdx"));
|
|
}
|
|
});
|
|
}
|
|
|
|
function addSquarePolygon(doc, pinX, pinY) {
|
|
let pages = doc.getPages();
|
|
if (pages.length) {
|
|
let firstPage = doc.getPageContents(0);
|
|
let shape = AscVisio.createShape({
|
|
width: 2,
|
|
height: 1,
|
|
fillForegroundColor: "#ffffff",
|
|
points: [
|
|
{x: 0, y: 0},
|
|
{x: 1, y: 0},
|
|
{x: 1, y: 1},
|
|
{x: 0, y: 1},
|
|
{x: 0, y: 0}
|
|
]
|
|
});
|
|
firstPage.addShape(shape, pinX, pinY);
|
|
}
|
|
}
|
|
|
|
function colorizeRectange(doc, colorHex) {
|
|
// bad written and works on specific rectangle - with name Rectangle
|
|
// can be check on rectangleVsdxBase64
|
|
let pages = doc.getPages();
|
|
if (pages.length) {
|
|
let firstPage = doc.getPageContents(0);
|
|
let firstPageShapes = firstPage.shapes;
|
|
if (firstPageShapes.length) {
|
|
let rectangle = firstPageShapes.find(function(shape) { return shape.name === "Rectangle"; });
|
|
let colorCell = new AscVisio.Cell_Type();
|
|
colorCell.n = "FillForegnd";
|
|
colorCell.v = colorHex;
|
|
|
|
rectangle.elements.push(colorCell);
|
|
}
|
|
}
|
|
}
|
|
});
|