/* * (c) Copyright Ascensio System SIA 2010-2024 * * 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 * */ "use strict"; (function(window, undefined){ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Private area //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// function private_GetLogicDocument() { if (editor) return editor.WordControl.m_oLogicDocument; return null; } function private_GetStyles() { var oLogicDocument = private_GetLogicDocument(); return oLogicDocument instanceof AscCommonWord.CDocument ? oLogicDocument.Get_Styles() : oLogicDocument.globalTableStyles; } function private_GetPresentation(){ return editor.WordControl.m_oLogicDocument; } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // End of private area //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// var WriterToJSON = window['AscJsonConverter'].WriterToJSON; var ReaderFromJSON = window['AscJsonConverter'].ReaderFromJSON; WriterToJSON.prototype.SerPresentation = function(oPres) { var aNotesMasters = []; for (var nNote = 0; nNote < oPres.notesMasters.length; nNote++) aNotesMasters.push(this.SerNotesMaster(oPres.notesMasters[nNote])); var aSlides = []; for (var nSlide = 0; nSlide < oPres.Slides.length; nSlide++) aSlides.push(this.SerSlide(oPres.Slides[nSlide], false, false, false)); var aSldMasters = []; for (var nMaster = 0; nMaster < oPres.slideMasters.length; nMaster++) aSldMasters.push(this.SerMasterSlide(oPres.slideMasters[nMaster], true)); var sConformanceType = oPres.pres.attrConformance === Asc.c_oAscConformanceType.Strict ? "strict" : "transitional"; return { "slides": aSlides, "sldSz": this.SerSlideSize(oPres.sldSz), "showPr": this.SerShowPr(oPres.showPr), "notesMasters": aNotesMasters, "sldMasters": aSldMasters, // CPres (oPresentation.pres) "defaultTextStyle": this.SerLstStyle(oPres.pres.defaultTextStyle), "autoCompressPictures": oPres.pres.attrAutoCompressPictures, "bookmarkIdSeed": oPres.pres.attrBookmarkIdSeed, "compatMode": oPres.pres.attrCompatMode, "conformance": sConformanceType, "embedTrueTypeFonts": oPres.pres.attrEmbedTrueTypeFonts, "firstSlideNum": oPres.pres.attrFirstSlideNum, "removePersonalInfoOnSave": oPres.pres.attrRemovePersonalInfoOnSave, "rtl": oPres.pres.attrRtl, "saveSubsetFonts": oPres.pres.attrSaveSubsetFonts, "serverZoom": oPres.pres.attrServerZoom, "showSpecialPlsOnTitleSld": oPres.pres.attrShowSpecialPlsOnTitleSld, "strictFirstAndLastChars": oPres.pres.attrStrictFirstAndLastChars, "type": "presentation" } }; WriterToJSON.prototype.SerSlideSize = function(oSldSz) { var sSldSzType = undefined; switch (oSldSz.type) { case Asc.c_oAscSlideSZType.Sz35mm: sSldSzType = "35mm"; break; case Asc.c_oAscSlideSZType.SzA3: sSldSzType = "A3"; break; case Asc.c_oAscSlideSZType.SzA4: sSldSzType = "A4"; break; case Asc.c_oAscSlideSZType.SzB4ISO: sSldSzType = "B4ISO"; break; case Asc.c_oAscSlideSZType.SzB4JIS: sSldSzType = "B4JIS"; break; case Asc.c_oAscSlideSZType.SzB5ISO: sSldSzType = "B5ISO"; break; case Asc.c_oAscSlideSZType.SzB5JIS: sSldSzType = "B5JIS"; break; case Asc.c_oAscSlideSZType.SzBanner: sSldSzType = "banner"; break; case Asc.c_oAscSlideSZType.SzCustom: sSldSzType = "custom"; break; case Asc.c_oAscSlideSZType.SzHagakiCard: sSldSzType = "hagakiCard"; break; case Asc.c_oAscSlideSZType.SzLedger: sSldSzType = "ledger"; break; case Asc.c_oAscSlideSZType.SzLetter: sSldSzType = "letter"; break; case Asc.c_oAscSlideSZType.SzOverhead: sSldSzType = "overhead"; break; case Asc.c_oAscSlideSZType.SzScreen16x10: sSldSzType = "screen16x10"; break; case Asc.c_oAscSlideSZType.SzScreen16x9: sSldSzType = "screen16x9"; break; case Asc.c_oAscSlideSZType.SzScreen4x3: sSldSzType = "screen4x3"; break; case Asc.c_oAscSlideSZType.SzWidescreen: sSldSzType = "wideScreen"; break; } return { "cx": oSldSz.cx, "cy": oSldSz.cy, "type": sSldSzType } }; WriterToJSON.prototype.SerShowPr = function(oShowPr) { if (!oShowPr) return undefined; return { "browse": oShowPr.browse, "kiosk": oShowPr.kiosk, "penClr": this.SerColor(oShowPr.penClr), "present": oShowPr.present, "show": oShowPr.show, "loop": oShowPr.loop, "showAnimation": oShowPr.showAnimation, "showNarration": oShowPr.showNarration, "useTimings": oShowPr.useTimings } }; WriterToJSON.prototype.SerNotesMaster = function(oNoteMaster) { var oNotesMasterObj = { "id": oNoteMaster.Id, "clrMap": this.SerColorMapOvr(oNoteMaster.clrMap), "cSld": this.SerCSld(oNoteMaster.cSld), "hf": this.SerHF(oNoteMaster.hf), "notesStyle": this.SerLstStyle(oNoteMaster.txStyles), "theme": oNoteMaster.Theme ? (this.themesMap[oNoteMaster.Theme.Id] ? oNoteMaster.Theme.Id : this.SerTheme(oNoteMaster.Theme)) : null } // мапим, чтобы не записывать несколько раз this.notesMasterMap[oNoteMaster.Id] = oNotesMasterObj; return oNotesMasterObj; }; WriterToJSON.prototype.SerNotes = function(oNote) { return { "lock": undefined, /// ??? вроде не нужно "clrMapOvr": this.SerColorMapOvr(oNote.clrMap), "graphicObjects": undefined, /// ??? вроде не нужно "cSld": this.SerCSld(oNote.cSld), "showMasterPhAnim": oNote.showMasterPhAnim, "showMasterSp": oNote.showMasterSp, "master": this.notesMasterMap[oNote.Master.Id] ? oNote.Master.Id : this.SerNotesMaster(oNote.Master) } }; WriterToJSON.prototype.SerSldComments = function(oSldComments) { var aComments = []; for (var nComment = 0; nComment < oSldComments.comments.length; nComment++) aComments.push(this.SerComment(oSldComments.comments[nComment])); return aComments; }; WriterToJSON.prototype.SerComment = function(oComment) { return { "pos": { "x": oComment.x, "y": oComment.y }, "text": oComment.Data.m_sText, "authorName": oComment.Data.m_sUserName, "authorId": oComment.Data.m_sUserId, "dt": oComment.Data.m_sOOTime, "idx": oComment.Parent.comments.indexOf(oComment) } }; WriterToJSON.prototype.SerSlideLayout = function(oLayout, bWriteMaster) { var sLayoutType = undefined; switch (oLayout.type) { case c_oAscSlideLayoutType.Blank: sLayoutType = "blank"; break; case c_oAscSlideLayoutType.Chart: sLayoutType = "chart"; break; case c_oAscSlideLayoutType.ChartAndTx: sLayoutType = "chartAndTx"; break; case c_oAscSlideLayoutType.ClipArtAndTx: sLayoutType = "clipArtAndTx"; break; case c_oAscSlideLayoutType.ClipArtAndVertTx: sLayoutType = "clipArtAndVertTx"; break; case c_oAscSlideLayoutType.Cust: sLayoutType = "cust"; break; case c_oAscSlideLayoutType.Dgm: sLayoutType = "dgm"; break; case c_oAscSlideLayoutType.FourObj: sLayoutType = "fourObj"; break; case c_oAscSlideLayoutType.MediaAndTx: sLayoutType = "mediaAndTx"; break; case c_oAscSlideLayoutType.Obj: sLayoutType = "obj"; break; case c_oAscSlideLayoutType.ObjAndTwoObj: sLayoutType = "objAndTwoObj"; break; case c_oAscSlideLayoutType.ObjAndTx: sLayoutType = "objAndTx"; break; case c_oAscSlideLayoutType.ObjOnly: sLayoutType = "objOnly"; break; case c_oAscSlideLayoutType.ObjOverTx: sLayoutType = "objOverTx"; break; case c_oAscSlideLayoutType.ObjTx: sLayoutType = "objTx"; break; case c_oAscSlideLayoutType.PicTx: sLayoutType = "picTx"; break; case c_oAscSlideLayoutType.SecHead: sLayoutType = "secHead"; break; case c_oAscSlideLayoutType.Tbl: sLayoutType = "tbl"; break; case c_oAscSlideLayoutType.Title: sLayoutType = "title"; break; case c_oAscSlideLayoutType.TitleOnly: sLayoutType = "titleOnly"; break; case c_oAscSlideLayoutType.TwoColTx: sLayoutType = "twoColTx"; break; case c_oAscSlideLayoutType.TwoObj: sLayoutType = "twoObj"; break; case c_oAscSlideLayoutType.TwoObjAndObj: sLayoutType = "twoObjAndObj"; break; case c_oAscSlideLayoutType.TwoObjAndTx: sLayoutType = "twoObjAndTx"; break; case c_oAscSlideLayoutType.TwoObjOverTx: sLayoutType = "twoObjOverTx"; break; case c_oAscSlideLayoutType.TwoTxTwoObj: sLayoutType = "twoTxTwoObj"; break; case c_oAscSlideLayoutType.Tx: sLayoutType = "tx"; break; case c_oAscSlideLayoutType.TxAndChart: sLayoutType = "txAndChart"; break; case c_oAscSlideLayoutType.TxAndClipArt: sLayoutType = "txAndClipArt"; break; case c_oAscSlideLayoutType.TxAndMedia: sLayoutType = "txAndMedia"; break; case c_oAscSlideLayoutType.TxAndObj: sLayoutType = "txAndObj"; break; case c_oAscSlideLayoutType.TxAndTwoObj: sLayoutType = "txAndTwoObj"; break; case c_oAscSlideLayoutType.TxOverObj: sLayoutType = "txOverObj"; break; case c_oAscSlideLayoutType.VertTitleAndTx: sLayoutType = "vertTitleAndTx"; break; case c_oAscSlideLayoutType.VertTitleAndTxOverChart: sLayoutType = "vertTitleAndTxOverChart"; break; case c_oAscSlideLayoutType.VertTx: sLayoutType = "vertTx"; break; } return { "id": oLayout.Id, "master": bWriteMaster ? this.SerMasterSlide(oLayout.Master, false) : oLayout.Master.Id, "clrMapOvr": this.SerColorMapOvr(oLayout.clrMap), "cSld": this.SerCSld(oLayout.cSld), "hf": this.SerHF(oLayout.hf), "timing": this.SerTiming(oLayout.timing), "transition": this.SerTransition(oLayout.transition), "matchingName": oLayout.matchingName, "preserve": oLayout.preserve, "showMasterPhAnim": oLayout.showMasterPhAnim, "showMasterSp": oLayout.showMasterSp, "userDrawn": oLayout.userDrawn, "ltType": sLayoutType, "imgBase64": oLayout.ImageBase64, "type": "sldLayout" } }; WriterToJSON.prototype.SerMasterSlide = function(oMaster, bWriteAllMasLayouts) { var aLayoutLst = []; if (bWriteAllMasLayouts) { for (var nLayout = 0; nLayout < oMaster.sldLayoutLst.length; nLayout++) aLayoutLst.push(this.SerSlideLayout(oMaster.sldLayoutLst[nLayout], false)); } return { "id": oMaster.Id, "theme": this.SerTheme(oMaster.Theme), "clrMapOvr": this.SerColorMapOvr(oMaster.clrMap), "cSld": this.SerCSld(oMaster.cSld), "hf": this.SerHF(oMaster.hf), "sldLayoutLst": aLayoutLst, "timing": this.SerTiming(oMaster.timing), "transition": this.SerTransition(oMaster.transition), "txStyles": this.SerTxStyles(oMaster.txStyles), "preserve": oMaster.preserve, "imgBase64": oMaster.ImageBase64, "type": "sldMaster" } }; WriterToJSON.prototype.SerSlide = function(oSlide, bWriteLayout, bWriteMaster, bWriteAllMasLayouts) { var oMaster = oSlide.Layout.Master.Id; var oLayout = oSlide.Layout.Id; // нет смысла тащить master за слайдом без layout if (bWriteLayout || (bWriteMaster && bWriteAllMasLayouts)) { if (bWriteMaster) oMaster = this.SerMasterSlide(oSlide.Layout.Master, bWriteAllMasLayouts); if (!bWriteAllMasLayouts) oLayout = this.SerSlideLayout(oSlide.Layout, false); } return { "notes": this.SerNotes(oSlide.notes), "master": oMaster, "clrMapOvr": this.SerColorMapOvr(oSlide.clrMap), "layout": oLayout, "cSld": this.SerCSld(oSlide.cSld), "transition": this.SerTransition(oSlide.transition), "timing": this.SerTiming(oSlide.timing), "comments": this.SerSldComments(oSlide.slideComments), "show": oSlide.show, "showMasterPhAnim": oSlide.showMasterPhAnim, "showMasterSp": oSlide.showMasterSp, "type": "slide" } }; WriterToJSON.prototype.SerSlides = function(nStart, nEnd, bWriteLayout, bWriteMaster, bWriteAllMasLayouts) { var aMasters = []; var aLayouts = []; var aSlides = []; var oPresentation = private_GetPresentation(); for (var nSlide = nStart; nSlide <= nEnd; nSlide++) { aSlides.push(this.SerSlide(oPresentation.Slides[nSlide], false, false, false)); if (bWriteLayout || (bWriteMaster && bWriteAllMasLayouts)) { if (bWriteMaster) { var sMasterId = oPresentation.Slides[nSlide].Layout.Master ? oPresentation.Slides[nSlide].Layout.Master.Id : ""; if (sMasterId && !this.mastersMap[sMasterId]) { this.mastersMap[sMasterId] = this.SerMasterSlide(oPresentation.Slides[nSlide].Layout.Master, bWriteAllMasLayouts); aMasters.push(this.mastersMap[sMasterId]); } } if (!bWriteAllMasLayouts) { var sLayoutId = oPresentation.Slides[nSlide].Layout ? oPresentation.Slides[nSlide].Layout.Id : ""; if (!this.layoutsMap[sLayoutId]) { this.layoutsMap[sLayoutId] = this.SerSlideLayout(oPresentation.Slides[nSlide].Layout); aLayouts.push(this.layoutsMap[sLayoutId]); } } } } return { "masters": aMasters, "layouts": aLayouts, "slides": aSlides, "type": "slides" } }; WriterToJSON.prototype.SerTxStyles = function(oTxStyles) { return { "bodyStyle": this.SerLstStyle(oTxStyles.bodyStyle), "otherStyle": this.SerLstStyle(oTxStyles.otherStyle), "titleStyle": this.SerLstStyle(oTxStyles.titleStyle) } }; WriterToJSON.prototype.SerTableStylesForWrite = function() { if (this.stylesForWrite == null) return undefined; var oResult = {}; for (var key in this.stylesForWrite.styles) oResult[key] = this.SerTableStyle(this.stylesForWrite.styles[key]); return oResult; }; WriterToJSON.prototype.SerTableStyle = function(oStyle) { return { "styleId": oStyle.Id, "name": oStyle.Name, "tblBg": this.SerTableCellStyle(oStyle.TablePr, true), "wholeTbl": this.SerTableStylePart(oStyle.TableWholeTable), "band1H": this.SerTableStylePart(oStyle.TableBand1Horz), "band2H": this.SerTableStylePart(oStyle.TableBand2Horz), "band1V": this.SerTableStylePart(oStyle.TableBand1Vert), "band2V": this.SerTableStylePart(oStyle.TableBand2Vert), "lastCol": this.SerTableStylePart(oStyle.TableLastCol), "firstCol": this.SerTableStylePart(oStyle.TableFirstCol), "lastRow": this.SerTableStylePart(oStyle.TableLastRow), "seCell": this.SerTableStylePart(oStyle.TableBRCell), "swCell": this.SerTableStylePart(oStyle.TableBLCell), "firstRow": this.SerTableStylePart(oStyle.TableFirstRow), "neCell": this.SerTableStylePart(oStyle.TableTRCell), "nwCell": this.SerTableStylePart(oStyle.TableTLCell) } }; WriterToJSON.prototype.SerTableCellStyle = function(oCellPr, isTableBorders) { if (!oCellPr) return undefined; let oBorders = isTableBorders ? oCellPr.TableBorders : oCellPr.TableCellBorders; let oShd = oCellPr.Shd; let bBorders = oBorders && (oBorders.Left || oBorders.Right || oBorders.Top || oBorders.Bottom || oBorders.InsideH || oBorders.InsideV); return { "tcBdr": bBorders ? { "left": this.SerTableCellBorder(oBorders.Left), "right": this.SerTableCellBorder(oBorders.Right), "top": this.SerTableCellBorder(oBorders.Top), "bottom": this.SerTableCellBorder(oBorders.Bottom), "insideH": this.SerTableCellBorder(oBorders.InsideH), "insideV": this.SerTableCellBorder(oBorders.InsideV), } : undefined, "fillRef": oShd ? this.SerStyleRef(oShd.FillRef) : undefined, "fill": oShd ? this.SerFill(oShd.Unifill) : undefined } }; WriterToJSON.prototype.SerTableCellBorder = function(oBorder) { if (!oBorder) return undefined; let oResult = {}; if (oBorder.LineRef) oResult["lnRef"] = this.SerStyleRef(oBorder.LineRef); else { let oLn = new AscFormat.CLn(); oLn.fromDocumentBorder(oBorder); oResult["ln"] = this.SerLn(oLn); } return oResult; }; WriterToJSON.prototype.SerTableStylePart = function(oStylePart) { if (!oStylePart) return undefined; return { "tcTxStyle": this.SerTcTxStyle(oStylePart.TextPr), "tcStyle": this.SerTableCellStyle(oStylePart.TableCellPr) } }; WriterToJSON.prototype.SerTcTxStyle = function(oTextPr) { if (!oTextPr) return undefined; let oResult; let oUnicolor = oTextPr.Unifill && oTextPr.Unifill.fill && oTextPr.Unifill.fill.color; if(oTextPr.Italic === true || oTextPr.Italic === false || oTextPr.Bold === true || oTextPr.Bold === false || oTextPr.FontRef || oUnicolor) { oResult = {}; if(oTextPr.Italic === true || oTextPr.Italic === false) { oResult["i"] = oTextPr.Italic ? "on" : "off"; } if(oTextPr.Bold === true || oTextPr.Bold === false) { oResult["b"] = oTextPr.Bold ? "on" : "off"; } if(oTextPr.FontRef) { oResult["fontRef"] = this.SerFontRef(oTextPr.FontRef); } if(oUnicolor) { oResult["color"] = this.SerColor(oUnicolor); } } return oResult; }; WriterToJSON.prototype.SerHF = function(oHf) { if (!oHf) return undefined; return { "dt": oHf.dt, "ftr": oHf.ftr, "hdr": oHf.hdr, "sldNum": oHf.sldNum } }; WriterToJSON.prototype.SerCSld = function(oCSld) { var aSpTree = []; for (var nElm = 0; nElm < oCSld.spTree.length; nElm++) aSpTree.push(this.SerGraphicObject(oCSld.spTree[nElm])); return { "bg": this.SerBg(oCSld.Bg), "spTree": aSpTree, "name": oCSld.name } }; WriterToJSON.prototype.SerBg = function(oBg) { if (!oBg) return undefined; var sBwModeType = undefined; switch (oBg.bwMode) { case c_oAscSlideBgBwModeType.Auto: sBwModeType = "auto"; break; case c_oAscSlideBgBwModeType.Black: sBwModeType = "black"; break; case c_oAscSlideBgBwModeType.BlackGray: sBwModeType = "blackGray"; break; case c_oAscSlideBgBwModeType.BlackWhite: sBwModeType = "blackWhite"; break; case c_oAscSlideBgBwModeType.Clr: sBwModeType = "clr"; break; case c_oAscSlideBgBwModeType.Gray: sBwModeType = "gray"; break; case c_oAscSlideBgBwModeType.GrayWhite: sBwModeType = "grayWhite"; break; case c_oAscSlideBgBwModeType.Hidden: sBwModeType = "hidden"; break; case c_oAscSlideBgBwModeType.InvGray: sBwModeType = "invGray"; break; case c_oAscSlideBgBwModeType.LtGray: sBwModeType = "ltGray"; break; case c_oAscSlideBgBwModeType.White: sBwModeType = "white"; break; } return { "bwMode": sBwModeType, "bgPr": this.SerBgPr(oBg.bgPr), "bgRef": this.SerStyleRef(oBg.bgRef) } }; WriterToJSON.prototype.SerBgPr = function(oBgPr) { if (!oBgPr) return undefined; return { "fill": this.SerFill(oBgPr.Fill), "shadeToTitle": oBgPr.shadeToTitle } }; WriterToJSON.prototype.SerTransition = function(oTransition) { if (!oTransition) return undefined; var sTransType = undefined; switch (oTransition.TransitionType) { case c_oAscSlideTransitionTypes.None: sTransType = "none"; break; case c_oAscSlideTransitionTypes.Fade: sTransType = "fade"; break; case c_oAscSlideTransitionTypes.Push: sTransType = "push"; break; case c_oAscSlideTransitionTypes.Wipe: sTransType = "wipe"; break; case c_oAscSlideTransitionTypes.Split: sTransType = "split"; break; case c_oAscSlideTransitionTypes.UnCover: sTransType = "unCover"; break; case c_oAscSlideTransitionTypes.Cover: sTransType = "cover"; break; case c_oAscSlideTransitionTypes.Clock: sTransType = "clock"; break; case c_oAscSlideTransitionTypes.Zoom: sTransType = "zoom"; break; } var transOption = "none"; switch (sTransType) { case "fade": transOption = oTransition.TransitionOption !== c_oAscSlideTransitionParams.Fade_Smoothly; break; case "push": case "wipe": case "cover": case "uncover": switch (oTransition.TransitionOption) { case c_oAscSlideTransitionParams.Param_Left: transOption = "l"; break; case c_oAscSlideTransitionParams.Param_Top: transOption = "t"; break; case c_oAscSlideTransitionParams.Param_Right: transOption = "r"; break; case c_oAscSlideTransitionParams.Param_Bottom: transOption = "b"; break; case c_oAscSlideTransitionParams.Param_TopLeft: transOption = "tl"; break; case c_oAscSlideTransitionParams.Param_TopRight: transOption = "tr"; break; case c_oAscSlideTransitionParams.Param_BottomLeft: transOption = "bl"; break; case c_oAscSlideTransitionParams.Param_BottomRight: transOption = "br"; break; } break; case "split": switch (oTransition.TransitionOption) { case c_oAscSlideTransitionParams.Split_VerticalIn: transOption = "verIn"; break; case c_oAscSlideTransitionParams.Split_VerticalOut: transOption = "verOut"; break; case c_oAscSlideTransitionParams.Split_HorizontalIn: transOption = "horIn"; break; case c_oAscSlideTransitionParams.Split_HorizontalOut: transOption = "horOut"; break; } break; case "clock": switch (oTransition.TransitionOption) { case c_oAscSlideTransitionParams.Clock_Clockwise: transOption = "clockwise"; break; case c_oAscSlideTransitionParams.Clock_Counterclockwise: transOption = "counterClockwise"; break; case c_oAscSlideTransitionParams.Clock_Wedge: transOption = "wedge"; break; } break; case "zoom": switch (oTransition.TransitionOption) { case c_oAscSlideTransitionParams.Zoom_In: transOption = "in"; break; case c_oAscSlideTransitionParams.Zoom_Out: transOption = "out"; break; case c_oAscSlideTransitionParams.Zoom_AndRotate: transOption = "andRotate"; break; } break; } return { "option": transOption, "type": sTransType, "transDur": oTransition.TransitionDuration, "advClick": oTransition.SlideAdvanceOnMouseClick, "advAfter": oTransition.SlideAdvanceAfter, "advDur": oTransition.SlideAdvanceDuration, "shwLoop": oTransition.ShowLoop } }; WriterToJSON.prototype.SerTiming = function(oTiming) { if (!oTiming) return undefined; return { "bldLst": this.SerBldLst(oTiming.bldLst), "tnLst": this.SerTnLst(oTiming.tnLst), "type": "timing" } }; WriterToJSON.prototype.SerBldLst = function(oBldLst) { if (!oBldLst) return undefined; var aBldLst = []; for (var nElm = 0; nElm < oBldLst.list.length; nElm++) { if (oBldLst.list[nElm] instanceof AscFormat.CBldDgm) aBldLst.push(this.SerBldDgm(oBldLst.list[nElm])); else if (oBldLst.list[nElm] instanceof AscFormat.CBldOleChart) aBldLst.push(this.SerBldOleChart(oBldLst.list[nElm])); else if (oBldLst.list[nElm] instanceof AscFormat.CBldGraphic) aBldLst.push(this.SerBldGraphic(oBldLst.list[nElm])); else if (oBldLst.list[nElm] instanceof AscFormat.CBldP) aBldLst.push(this.SerBldP(oBldLst.list[nElm])); } return aBldLst; }; WriterToJSON.prototype.SerBldDgm = function(oBldDgm) { if (!oBldDgm) return undefined; let nSpId = this.GetSpIdxId(oBldDgm.spid); return { "bld": oBldDgm.bld, // ?? c_oAscSlideDgmBuildType "grpId": oBldDgm.grpId, "spid": nSpId != null ? nSpId : undefined, "uiExpand": oBldDgm.uiExpand, "type": "bldDgm" } }; WriterToJSON.prototype.SerBldOleChart = function(oBldOleChart) { if (!oBldOleChart) return undefined; let nSpId = this.GetSpIdxId(oBldOleChart.spid); return { "animBg": oBldOleChart.animBg, "bld": oBldOleChart.bld, // ?? c_oAscSlideOleChartBuildType "grpId": oBldOleChart.grpId, "spid": nSpId != null ? nSpId : undefined, "uiExpand": oBldOleChart.uiExpand, "type": "bldOleChart" } }; WriterToJSON.prototype.SerBldGraphic = function(oBldGraphic) { if (!oBldGraphic) return undefined; let nSpId = this.GetSpIdxId(oBldGraphic.spid); return { "bldAsOne": this.SerEmptyObject(oBldGraphic.bldAsOne), "bldSub": this.SerBldSub(oBldGraphic.bldSub), "grpId": oBldGraphic.grpId, "spid": nSpId != null ? nSpId : undefined, "uiExpand": oBldGraphic.uiExpand, "type": "bldGraphic" } }; WriterToJSON.prototype.SerEmptyObject = function(oEmptyObject) { if (!oEmptyObject) return undefined; return { "type": "emptyObj" } }; WriterToJSON.prototype.SerBldSub = function(oBldSub) { if (!oBldSub) return undefined; return { "chart": oBldSub.chart, "animBg": oBldSub.animBg, "bldChart": oBldSub.bldChart, // ?? c_oAscSlideAnimDgmBuildType "bldDgm": oBldSub.bldDgm, // ?? c_oAscSlideAnimChartBuildType "rev": oBldSub.rev } }; WriterToJSON.prototype.SerBldP = function(oBldP) { if (!oBldP) return undefined; var sBuildType = undefined; switch (oBldP.build) { case c_oAscSlideParaBuildType.AllAtOnce: sBuildType = "allAtOnce"; break; case c_oAscSlideParaBuildType.Cust: sBuildType = "cust"; break; case c_oAscSlideParaBuildType.P: sBuildType = "p"; break; case c_oAscSlideParaBuildType.Whole: sBuildType = "whole"; break; } let nSpId = this.GetSpIdxId(oBldP.spid); return { "tmplLst": this.SerTmplLst(oBldP.tmplLst), "advAuto": oBldP.advAuto, "animBg": oBldP.animBg, "autoUpdateAnimB": oBldP.autoUpdateAnimB, "bldLvl": oBldP.bldLvl, "build": sBuildType, "grpId": oBldP.grpId, "rev": oBldP.rev, "spid": nSpId != null ? nSpId : undefined, "uiExpand": oBldP.uiExpand, "type": "bldP" } }; WriterToJSON.prototype.SerTmplLst = function(oTmplLst) { if (!oTmplLst) return undefined; var aTmplLst = []; for (var nElm = 0; nElm < oTmplLst.list.length; nElm++) aTmplLst.push(this.SerTmpl(oTmplLst.list[nElm])); return aTmplLst; }; WriterToJSON.prototype.SerTmpl = function(oTmpl) { return { "lvl": oTmpl.lvl, "tnLst": this.SerTnLst(oTmpl.tnLst) } }; WriterToJSON.prototype.SerTnLst = function(oTnLst) { if (!oTnLst) return undefined; var aTnLst = []; var oTempElm = null; for (var nElm = 0; nElm < oTnLst.list.length; nElm++) { oTempElm = oTnLst.list[nElm]; if (oTempElm instanceof AscFormat.CPar) aTnLst.push(this.SerPar(oTempElm)); else if (oTempElm instanceof AscFormat.CSeq) aTnLst.push(this.SerSeq(oTempElm)); else if (oTempElm instanceof AscFormat.CAudio) aTnLst.push(this.SerAudio(oTempElm)); else if (oTempElm instanceof AscFormat.CVideo) aTnLst.push(this.SerVideo(oTempElm)); else if (oTempElm instanceof AscFormat.CExcl) aTnLst.push(this.SerExcl(oTempElm)); else if (oTempElm instanceof AscFormat.CAnim) aTnLst.push(this.SerAnim(oTempElm)); else if (oTempElm instanceof AscFormat.CAnimClr) aTnLst.push(this.SerAnimClr(oTempElm)); else if (oTempElm instanceof AscFormat.CAnimEffect) aTnLst.push(this.SerAnimEffect(oTempElm)); else if (oTempElm instanceof AscFormat.CAnimMotion) aTnLst.push(this.SerAnimMotion(oTempElm)); else if (oTempElm instanceof AscFormat.CAnimRot) aTnLst.push(this.SerAnimRot(oTempElm)); else if (oTempElm instanceof AscFormat.CAnimScale) aTnLst.push(this.SerAnimScale(oTempElm)); else if (oTempElm instanceof AscFormat.CCmd) aTnLst.push(this.SerCmd(oTempElm)); else if (oTempElm instanceof AscFormat.CSet) aTnLst.push(this.SerSet(oTempElm)); } return aTnLst; }; WriterToJSON.prototype.SerPar = function(oPar) { return { "cTn": this.SerCTn(oPar.cTn), "objType": "par" } }; WriterToJSON.prototype.SerCTn = function(oCTn) { if (!oCTn) return undefined; var sNodeFillType = undefined; switch (oCTn.fill) { case c_oAscSlideNodeFillType.Freeze: sNodeFillType = "freeze"; break; case c_oAscSlideNodeFillType.Hold: sNodeFillType = "hold"; break; case c_oAscSlideNodeFillType.Remove: sNodeFillType = "remove"; break; case c_oAscSlideNodeFillType.Transition: sNodeFillType = "transition"; break; } var sMasterRelType = undefined; switch (oCTn.masterRel) { case c_oAscSlideMasterRelationType.LastClick: sMasterRelType = "lastClick"; break; case c_oAscSlideMasterRelationType.NextClick: sMasterRelType = "nextClick"; break; case c_oAscSlideMasterRelationType.SameClick: sMasterRelType = "sameClick"; break; } var sNodeType = undefined; switch (oCTn.nodeType) { case c_oAscSlideNodeType.AfterEffect: sNodeType = "afterEffect"; break; case c_oAscSlideNodeType.AfterGroup: sNodeType = "afterGroup"; break; case c_oAscSlideNodeType.ClickEffect: sNodeType = "clickEffect"; break; case c_oAscSlideNodeType.ClickPar: sNodeType = "clickPar"; break; case c_oAscSlideNodeType.InteractiveSeq: sNodeType = "interactiveSeq"; break; case c_oAscSlideNodeType.MainSeq: sNodeType = "mainSeq"; break; case c_oAscSlideNodeType.TmRoot: sNodeType = "tmRoot"; break; case c_oAscSlideNodeType.WithEffect: sNodeType = "withEffect"; break; case c_oAscSlideNodeType.WithGroup: sNodeType = "withGroup"; break; } var sPresetClassType = undefined; switch (oCTn.presetClass) { case c_oAscSlidePresetClassType.Emph: sPresetClassType = "emph"; break; case c_oAscSlidePresetClassType.Entr: sPresetClassType = "entr"; break; case c_oAscSlidePresetClassType.Exit: sPresetClassType = "exit"; break; case c_oAscSlidePresetClassType.Mediacall: sPresetClassType = "mediacall"; break; case c_oAscSlidePresetClassType.Path: sPresetClassType = "path"; break; case c_oAscSlidePresetClassType.Verb: sPresetClassType = "verb"; break; } var sRestartType = undefined; switch (oCTn.restart) { case c_oAscSlideRestartType.Always: sRestartType = "always"; break; case c_oAscSlideRestartType.Never: sRestartType = "never"; break; case c_oAscSlideRestartType.WhenNotActive: sRestartType = "whenNotActive"; break; } var sSyncBehaviorType = undefined; switch (oCTn.syncBehavior) { case c_oAscSlideSyncBehaviorType.CanSlip: sSyncBehaviorType = "canSlip"; break; case c_oAscSlideSyncBehaviorType.Locked: sSyncBehaviorType = "locked"; break; } return { "Id": oCTn.Id, "childTnLst": this.SerTnLst(oCTn.childTnLst), "endCondLst": this.SerCondLst(oCTn.endCondLst), "endSync": this.SerCond(oCTn.endSync), "iterate": this.SerIterate(oCTn.iterate), "stCondLst": this.SerCondLst(oCTn.stCondLst), "subTnLst": this.SerTnLst(oCTn.subTnLst), "accel": oCTn.accel, "afterEffect": oCTn.afterEffect, "autoRev": oCTn.autoRev, "bldLvl": oCTn.bldLvl, "decel": oCTn.decel, "display": oCTn.display, "dur": oCTn.dur, "evtFilter": oCTn.evtFilter, "fill": sNodeFillType, "grpId": oCTn.grpId, "id": oCTn.id, "masterRel": sMasterRelType, "nodePh": oCTn.nodePh, "nodeType": sNodeType, "presetClass": sPresetClassType, "presetID": oCTn.presetID, "presetSubtype": oCTn.presetSubtype, "repeatCount": oCTn.repeatCount, "repeatDur": oCTn.repeatDur, "restart": sRestartType, "spd": oCTn.spd, "syncBehavior": sSyncBehaviorType, "tmFilter": oCTn.tmFilter } }; WriterToJSON.prototype.SerSeq = function(oSeq) { var sNextAcType = undefined; switch (oSeq.nextAc) { case c_oAscSlideNextAcType.None: sNextAcType = "none"; break; case c_oAscSlideNextAcType.Seek: sNextAcType = "seek"; break; } var sPrevAcType = undefined; switch (oSeq.prevAc) { case c_oAscSlidePrevAcType.None: sPrevAcType = "none"; break; case c_oAscSlidePrevAcType.SkipTimed: sPrevAcType = "skipTimed"; break; } return { "cTn": this.SerCTn(oSeq.cTn), "nextCondLst": this.SerCondLst(oSeq.nextCondLst), "prevCondLst": this.SerCondLst(oSeq.prevCondLst), "concurrent": oSeq.concurrent, "nextAc": sNextAcType, "prevAc": sPrevAcType, "objType": "seq" } }; WriterToJSON.prototype.SerIterate = function(oIterate) { if (!oIterate) return undefined; var sIterateType = undefined; switch (oIterate.type) { case c_oAscSlideIterateType.El: sIterateType = "el"; break; case c_oAscSlideIterateType.Lt: sIterateType = "lt"; break; case c_oAscSlideIterateType.Wd: sIterateType = "wd"; break; } return { "tmAbs": oIterate.tmAbs, "tmPct": oIterate.tmPct, "backwards": oIterate.backwards, "type": sIterateType } }; WriterToJSON.prototype.SerAudio = function(oAudio) { return { "cMediaNode": this.SerCMediaNode(oAudio.cMediaNode), "isNarration": oAudio.isNarration, "objType": "audio" } }; WriterToJSON.prototype.SerCMediaNode = function(oCMediaNode) { if (!oCMediaNode) return undefined; return { "cTn": this.SerCTn(oCMediaNode.cTn), "tgtEl": this.SerTgtEl(oCMediaNode.tgtEl), "mute": oCMediaNode.mute, "numSld": oCMediaNode.numSld, "showWhenStopped": oCMediaNode.showWhenStopped, "vol": oCMediaNode.vol } }; WriterToJSON.prototype.SerVideo = function(oVideo) { return { "cMediaNode": this.SerCMediaNode(oVideo.cMediaNode), "fullScrn": oVideo.fullScrn, "objType": "video" } }; WriterToJSON.prototype.SerExcl = function(oExcl) { return { "cTn": this.SerCTn(oExcl.cTn), "objType": "excl" } }; WriterToJSON.prototype.SerAnim = function(oAnim) { var sCalcmodeType = undefined; switch (oAnim.calcmode) { case c_oAscSlideCalcModeType.Discrete: sCalcmodeType = "discrete"; break; case c_oAscSlideCalcModeType.Lin: sCalcmodeType = "lin"; break; case c_oAscSlideCalcModeType.Fmla: sCalcmodeType = "fmla"; break; } var sValueType = undefined; switch (oAnim.valueType) { case c_oAscSlideTLValueType.Num: sValueType = "num"; break; case c_oAscSlideTLValueType.Clr: sValueType = "clr"; break; case c_oAscSlideTLValueType.Str: sValueType = "str"; break; } return { "cBhvr": this.SerCBhvr(oAnim.cBhvr), "tavLst": this.SerTavLst(oAnim.tavLst), "by": oAnim.by, "calcmode": sCalcmodeType, "from": oAnim.from, "to": oAnim.to, "valueType": sValueType, "objType": "anim" } }; WriterToJSON.prototype.SerCBhvr = function(oCBhvr) { if (!oCBhvr) return undefined; var sAccumulateType = undefined; switch (oCBhvr.accumulate) { case c_oAscSlideTLAccumulateType.Always: sAccumulateType = "always"; break; case c_oAscSlideTLAccumulateType.None: sAccumulateType = "none"; break; } var sAdditiveType = undefined; switch (oCBhvr.additive) { case c_oAscSlideTLAdditiveType.Base: sAdditiveType = "base"; break; case c_oAscSlideTLAdditiveType.Mult: sAdditiveType = "mult"; break; case c_oAscSlideTLAdditiveType.None: sAdditiveType = "none"; break; case c_oAscSlideTLAdditiveType.Repl: sAdditiveType = "repl"; break; case c_oAscSlideTLAdditiveType.Sum: sAdditiveType = "sum"; break; } var sOverrideType = undefined; switch (oCBhvr.override) { case c_oAscSlideTLOverrideType.ChildStyle: sOverrideType = "childStyle"; break; case c_oAscSlideTLOverrideType.Normal: sOverrideType = "normal"; break; } var sXfrmTypeType = undefined; switch (oCBhvr.xfrmType) { case c_oAscSlideTLTransformType.Img: sXfrmTypeType = "img"; break; case c_oAscSlideTLTransformType.Pt: sXfrmTypeType = "pt"; break; } return { "attrNameLst": this.SerAttrNameLst(oCBhvr.attrNameLst), "cTn": this.SerCTn(oCBhvr.cTn), "tgtEl": this.SerTgtEl(oCBhvr.tgtEl), "accumulate": sAccumulateType, "additive": sAdditiveType, "by": oCBhvr.by, "from": oCBhvr.from, "override": sOverrideType, "rctx": oCBhvr.rctx, "to": oCBhvr.to, "xfrmType": sXfrmTypeType } }; WriterToJSON.prototype.SerTavLst = function(oTavLst) { if (!oTavLst) return undefined; var aTavLst = []; for (var nTav = 0; nTav < oTavLst.list.length; nTav++) aTavLst.push(this.SerTav(oTavLst.list[nTav])); return aTavLst; }; WriterToJSON.prototype.SerTav = function(oTav) { return { "val": this.SerAnimVariant(oTav.val), "fmla": oTav.fmla, "tm": oTav.tm }; }; WriterToJSON.prototype.SerAttrNameLst = function(oAttrNameLst) { if (!oAttrNameLst) return undefined; var aAttrNameLst = []; for (var nName = 0; nName < oAttrNameLst.list.length; nName++) aAttrNameLst.push(oAttrNameLst.list[nName].text); return aAttrNameLst; }; WriterToJSON.prototype.SerAnimClr = function(oAnimClr) { var sClrSpcType = undefined; switch (oAnimClr.clrSpc) { case c_oAscSlideTLColorSpaceType.Rgb: sClrSpcType = "rgb"; break; case c_oAscSlideTLColorSpaceType.Hsl: sClrSpcType = "hsl"; break; } var sColorDir = undefined; switch (oAnimClr.dir) { case AscCommon.ST_HueDir.Ccw: sColorDir = "ccw"; break; case AscCommon.ST_HueDir.Cw: sColorDir = "cw"; break; } return { "by": { "rgb": this.SerByRGB(oAnimClr.byRGB), "hsl": this.SerByHSL(oAnimClr.byHSL) }, "cBhvr": this.SerCBhvr(oAnimClr.cBhvr), "from": oAnimClr.from, "to": oAnimClr.to, "clrSpc": sClrSpcType, "dir": sColorDir, "objType": "animClr" } }; WriterToJSON.prototype.SerByRGB = function(oByRGB) { if (!oByRGB) return undefined; return { "r": oByRGB.c1, "g": oByRGB.c2, "b": oByRGB.c3 } }; WriterToJSON.prototype.SerByHSL = function(oByHSL) { if (!oByHSL) return undefined; return { "h": oByHSL.c1, "s": oByHSL.c2, "l": oByHSL.c3 } }; WriterToJSON.prototype.SerAnimEffect = function(oAnimEffect) { return { "cBhvr": this.SerCBhvr(oAnimEffect.cBhvr), "progress": this.SerAnimVariant(oAnimEffect.progress), "filter": oAnimEffect.filter, "prLst": oAnimEffect.prLst, "transition": To_XML_TLAnimateEffectTransition(oAnimEffect.transition), "objType": "animEffect" } }; WriterToJSON.prototype.SerAnimMotion = function(oAnimMotion) { var sOriginType = undefined; switch (oAnimMotion.origin) { case c_oAscSlideTLOriginType.Parent: sOriginType = "parent"; break; case c_oAscSlideTLOriginType.Layout: sOriginType = "layout"; break; } var sPathEditMode = undefined; switch (oAnimMotion.pathEditMode) { case c_oAscSlideTLPathEditMode.Fixed: sPathEditMode = "fixed"; break; case c_oAscSlideTLPathEditMode.Relative: sPathEditMode = "relative"; break; } return { "by": this.SerByPoint(oAnimMotion.by), "cBhvr": this.SerCBhvr(oAnimMotion.cBhvr), "from": this.SerByPoint(oAnimMotion.from), "rCtr": this.SerByPoint(oAnimMotion.rCtr), "to": this.SerByPoint(oAnimMotion.to), "origin": sOriginType, "path": oAnimMotion.path, "pathEditMode": sPathEditMode, "ptsTypes": oAnimMotion.ptsTypes, "rAng": oAnimMotion.rAng, "objType": "animMotion" } }; WriterToJSON.prototype.SerByPoint = function(oPoint) { if (!oPoint) return undefined; return { "x": oPoint.x, "y": oPoint.y } }; WriterToJSON.prototype.SerAnimRot = function(oAnimRot) { return { "cBhvr": this.SerCBhvr(oAnimRot.cBhvr), "by": oAnimRot.by, "from": oAnimRot.from, "to": oAnimRot.to, "objType": "animRot" } }; WriterToJSON.prototype.SerAnimScale = function(oAnimScale) { return { "cBhvr": this.SerCBhvr(oAnimScale.cBhvr), "by": this.SerByPoint(oAnimScale.by), "from": this.SerByPoint(oAnimScale.from), "to": this.SerByPoint(oAnimScale.to), "zoomContents": oAnimScale.zoomContents, "objType": "animScale" } }; WriterToJSON.prototype.SerCmd = function(oCmd) { var sCommandType = undefined; switch (oCmd.type) { case c_oAscSlideTLCommandType.Call: sCommandType = "call"; break; case c_oAscSlideTLCommandType.Evt: sCommandType = "evt"; break; case c_oAscSlideTLCommandType.Verb: sCommandType = "verb"; break; } return { "cBhvr": this.SerCBhvr(oCmd.cBhvr), "cmd": oCmd.cmd, "type": sCommandType, "objType": "cmd" } }; WriterToJSON.prototype.SerSet = function(oSet) { return { "cBhvr": this.SerCBhvr(oSet.cBhvr), "to": this.SerAnimVariant(oSet.to), "objType": "set" } }; WriterToJSON.prototype.SerAnimVariant = function(oAnimVariant) { if (!oAnimVariant) return undefined; return { "boolVal": oAnimVariant.boolVal, "strVal": oAnimVariant.strVal, "intVal": oAnimVariant.intVal, "fltVal": oAnimVariant.fltVal, "clrVal": this.SerColor(oAnimVariant.clrVal) } }; WriterToJSON.prototype.SerCondLst = function(oCondLst) { if (!oCondLst) return undefined; var aCondLst = []; for (var nCond = 0; nCond < oCondLst.list.length; nCond++) aCondLst.push(this.SerCond(oCondLst.list[nCond])); return aCondLst; }; WriterToJSON.prototype.SerCond = function(oCond) { if (!oCond) return undefined; var sEventType = undefined; switch (oCond.evt) { case c_oAscSlideTriggerEventType.Begin: sEventType = "begin"; break; case c_oAscSlideTriggerEventType.End: sEventType = "end"; break; case c_oAscSlideTriggerEventType.OnBegin: sEventType = "onBegin"; break; case c_oAscSlideTriggerEventType.OnClick: sEventType = "onClick"; break; case c_oAscSlideTriggerEventType.OnDblClick: sEventType = "onDblClick"; break; case c_oAscSlideTriggerEventType.OnEnd: sEventType = "onEnd"; break; case c_oAscSlideTriggerEventType.OnMouseOut: sEventType = "onMouseOut"; break; case c_oAscSlideTriggerEventType.OnMouseOver: sEventType = "onMouseOver"; break; case c_oAscSlideTriggerEventType.OnNext: sEventType = "onNext"; break; case c_oAscSlideTriggerEventType.OnPrev: sEventType = "onPrev"; break; case c_oAscSlideTriggerEventType.OnStopAudio: sEventType = "onStopAudio"; break; } return { "rtn": this.SerRtn(oCond.rtn), "tgtEl": this.SerTgtEl(oCond.tgtEl), "tn": oCond.tn, "delay": oCond.delay, "evt": sEventType } }; WriterToJSON.prototype.SerRtn = function(nRtn) { if (!AscFormat.isRealNumber(nRtn)) return undefined; var sType = undefined; switch (nRtn) { case c_oAscSlideRuntimeTriggerType.All: sType = "all"; break; case c_oAscSlideRuntimeTriggerType.First: sType = "first"; break; case c_oAscSlideRuntimeTriggerType.Last: sType = "last"; break; } return { "val": sType } }; WriterToJSON.prototype.SerTgtEl = function(oTgtEl) { if (!oTgtEl) return undefined; return { "inkTgt": this.SerInkTgt(oTgtEl.inkTgt), "sldTgt": undefined, /// ??? "sndTgt": this.SerSndTgt(oTgtEl.sndTgt), "spTgt": this.SerSpTgt(oTgtEl.spTgt) } }; WriterToJSON.prototype.SerInkTgt = function(oInkTgt) { if (!oInkTgt) return undefined; let nSpId = this.GetSpIdxId(oInkTgt.spid); return { "spid": nSpId != null ? nSpId : undefined } }; WriterToJSON.prototype.SerSndTgt = function(oSndTgt) { if (!oSndTgt) return undefined; return { "embed": oSndTgt.embed, "name": oSndTgt.name, "builtIn": oSndTgt.builtIn } }; WriterToJSON.prototype.SerSpTgt = function(oSpTgt) { if (!oSpTgt) return undefined; let nSpId = this.GetSpIdxId(oSpTgt.spid); let nSubSpId = this.GetSpIdxId(oSpTgt.subSpId); return { "spid": nSpId != null ? nSpId : undefined, "bg": oSpTgt.bg, "subSpId": nSubSpId != null ? nSubSpId : undefined, "oleChartEl": this.SerOleChartEl(oSpTgt.oleChartEl), "txEl": this.SerTxEl(oSpTgt.txEl), "graphicEl": this.SerGraphicEl(oSpTgt.graphicEl) } }; WriterToJSON.prototype.SerOleChartEl = function(oOleChartEl) { if (!oOleChartEl) return undefined; var sType = undefined; switch (oOleChartEl.type) { case c_oAscSlideChartSubElementType.Category: sType = "category"; break; case c_oAscSlideChartSubElementType.GridLegend: sType = "gridLegend"; break; case c_oAscSlideChartSubElementType.PtInCategory: sType = "ptInCategory"; break; case c_oAscSlideChartSubElementType.PtInSeries: sType = "ptInSeries"; break; case c_oAscSlideChartSubElementType.Series: sType = "series"; break; } return { "lvl": oOleChartEl.lvl, "type": sType } }; WriterToJSON.prototype.SerTxEl = function(oTxEl) { if (!oTxEl) return undefined; return { "charRg": this.SerIndexRg(oTxEl.charRg), "pRg": this.SerIndexRg(oTxEl.pRg) } }; WriterToJSON.prototype.SerIndexRg = function(oIndexRg) { if (!oIndexRg) return undefined; return { "st": oIndexRg.st, "end": oIndexRg.end } }; WriterToJSON.prototype.SerGraphicEl = function(oGraphicEl) { if (!oGraphicEl) return undefined; let nSpId = this.GetSpIdxId(oGraphicEl.dgmId); return { "chart": { "bldStep": oGraphicEl.chartBuildStep, "categoryIdx": oGraphicEl.categoryIdx, "seriesIdx": oGraphicEl.seriesIdx }, "dgm": { "bldStep": oGraphicEl.dgmBuildStep, "id": nSpId != null ? nSpId : undefined } } }; ReaderFromJSON.prototype.MasterSlideFromJSON = function(oParsedMaster, oPres) { var oMasterSlide = new AscCommonSlide.MasterSlide(undefined, null); var oTheme = oParsedMaster["theme"] ? this.ThemeFromJSON(oParsedMaster["theme"]) : null; var oClrMap = oParsedMaster["clrMapOvr"] ? this.ColorMapOvrFromJSON(oParsedMaster["clrMapOvr"]) : null; oTheme && oMasterSlide.setTheme(oTheme); oClrMap && oMasterSlide.setClMapOverride(oClrMap); // cSld var oCSld = this.CSldFromJSON(oParsedMaster["cSld"]); for (var nShape = 0; nShape < oCSld.spTree.length; nShape++) oMasterSlide.shapeAdd(nShape, oCSld.spTree[nShape]); oCSld.Bg && oMasterSlide.changeBackground(oCSld.Bg); oCSld.name && oMasterSlide.setCSldName(oCSld.name); // hf oParsedMaster["hf"] && oMasterSlide.setHF(this.HFFromJSON(oParsedMaster["hf"])); // layouts for (var nLayout = 0; nLayout < oParsedMaster["sldLayoutLst"].length; nLayout++) oMasterSlide.addToSldLayoutLstToPos(oMasterSlide.sldLayoutLst.length, this.SlideLayoutFromJSON(oParsedMaster["sldLayoutLst"][nLayout])); // transition oParsedMaster["transition"] && oMasterSlide.applyTransition(this.TransitionFromJSON(oParsedMaster["transition"])); // timing oParsedMaster["timing"] && oMasterSlide.setTiming(this.TimingFromJSON(oParsedMaster["timing"])); //txStyles oParsedMaster["txStyles"] && oMasterSlide.setTxStyles(this.TxStylesFromJSON(oParsedMaster["txStyles"])); oMasterSlide.setPreserve(oParsedMaster["preserve"]); oMasterSlide.ImageBase64 = oParsedMaster["imgBase64"]; if (!oPres) oPres = private_GetPresentation(); oPres.pushSlideMaster(oMasterSlide); this.mastersMap[oParsedMaster["id"]] = oMasterSlide; return oMasterSlide; }; ReaderFromJSON.prototype.TxStylesFromJSON = function(oParsedTxStyles) { var oTxStyles = new AscFormat.CTextStyles(); if (oParsedTxStyles["bodyStyle"]) oTxStyles.bodyStyle = this.LstStyleFromJSON(oParsedTxStyles["bodyStyle"]); if (oParsedTxStyles["otherStyle"]) oTxStyles.otherStyle = this.LstStyleFromJSON(oParsedTxStyles["otherStyle"]); if (oParsedTxStyles["titleStyle"]) oTxStyles.titleStyle = this.LstStyleFromJSON(oParsedTxStyles["titleStyle"]); return oTxStyles; }; ReaderFromJSON.prototype.TableStylesFromJSON = function(oParsedStyles) { this.RestoredStylesMap = {}; // восстанавливаем все стили и мапим по старым id (т.к. создаются с новыми) for (var key in oParsedStyles) this.RestoredStylesMap[key] = this.TableStyleFromJSON(oParsedStyles[key]); }; ReaderFromJSON.prototype.TableStyleFromJSON = function(oParsedStyle) { let oTableStyle = new AscCommonWord.CStyle(oParsedStyle["name"], null, null, styletype_Table); if (oParsedStyle["band1H"]) oTableStyle.Set_TableBand1Horz(this.TableStylePartFromJSON(oParsedStyle["band1H"])); if (oParsedStyle["band1V"]) oTableStyle.Set_TableBand1Vert(this.TableStylePartFromJSON(oParsedStyle["band1V"])); if (oParsedStyle["band2H"]) oTableStyle.Set_TableBand2Horz(this.TableStylePartFromJSON(oParsedStyle["band2H"])); if (oParsedStyle["band2V"]) oTableStyle.Set_TableBand2Vert(this.TableStylePartFromJSON(oParsedStyle["band2V"])); if (oParsedStyle["firstCol"]) oTableStyle.Set_TableFirstCol(this.TableStylePartFromJSON(oParsedStyle["firstCol"])); if (oParsedStyle["firstRow"]) oTableStyle.Set_TableFirstRow(this.TableStylePartFromJSON(oParsedStyle["firstRow"])); if (oParsedStyle["lastCol"]) oTableStyle.Set_TableLastCol(this.TableStylePartFromJSON(oParsedStyle["lastCol"])); if (oParsedStyle["lastRow"]) oTableStyle.Set_TableLastRow(this.TableStylePartFromJSON(oParsedStyle["lastRow"])); if (oParsedStyle["wholeTbl"]) oTableStyle.Set_TableWholeTable(this.TableStylePartFromJSON(oParsedStyle["wholeTbl"])); if (oParsedStyle["neCell"]) oTableStyle.Set_TableTLCell(this.TableStylePartFromJSON(oParsedStyle["neCell"])); if (oParsedStyle["nwCell"]) oTableStyle.Set_TableTRCell(this.TableStylePartFromJSON(oParsedStyle["nwCell"])); if (oParsedStyle["seCell"]) oTableStyle.Set_TableBLCell(this.TableStylePartFromJSON(oParsedStyle["seCell"])); if (oParsedStyle["swCell"]) oTableStyle.Set_TableBRCell(this.TableStylePartFromJSON(oParsedStyle["swCell"])); if (oParsedStyle["tblBg"]) oTableStyle.Set_TablePr(this.TableCellStyleFromJSON(null, oParsedStyle["tblBg"], true)); var oStyles = private_GetStyles(); if (oTableStyle) { // если такого стиля нет - добавляем новый var nExistingStyleId = oStyles.GetStyleIdByName(oTableStyle.Name); if (nExistingStyleId === null) { oStyles.Add(oTableStyle); } else { var oExistingStyle = oStyles.Get(nExistingStyleId); // если стили идентичны, стиль не добавляем if (!oTableStyle.IsEqual(oExistingStyle)) oStyles.Add(oTableStyle); else oTableStyle = oExistingStyle; } } return oTableStyle; }; ReaderFromJSON.prototype.TableStylePartFromJSON = function(oParsed) { let oPart = new CTableStylePr(); let oCellPr = oPart.TableCellPr; let oTextPr = oPart.TextPr; if (oParsed["tcTxStyle"]) this.TcTxStyleFromJSON(oTextPr, oParsed["tcTxStyle"]); if (oParsed["tcStyle"]) this.TableCellStyleFromJSON(oCellPr, oParsed["tcStyle"]); return oPart; }; ReaderFromJSON.prototype.TableCellStyleFromJSON = function(oCellPr, oParsed, isTableBorders) { if (!oCellPr) oCellPr = new CTablePr(); let oBorders = isTableBorders ? oCellPr.TableBorders : oCellPr.TableCellBorders; if (oParsed["fill"]) { let oFill = this.FillFromJSON(oParsed["fill"]); if(!oCellPr.Shd) { oCellPr.Shd = new AscCommonWord.CDocumentShd(); oCellPr.Shd.Value = c_oAscShdClear; } oCellPr.Shd.Unifill = oFill; } if (oParsed["fillRef"]) { let oStyleRef = this.StyleRefFromJSON(oParsed["fillRef"]); if(!oCellPr.Shd) { oCellPr.Shd = new AscCommonWord.CDocumentShd(); oCellPr.Shd.Value = c_oAscShdClear; } oCellPr.Shd.FillRef = oStyleRef; } if (oParsed["tcBdr"]) { if (oParsed["tcBdr"]["bottom"]) oBorders.Bottom = this.TableCellBorderFromJSON(oParsed["tcBdr"]["bottom"]); if (oParsed["tcBdr"]["insideH"]) oBorders.InsideH = this.TableCellBorderFromJSON(oParsed["tcBdr"]["insideH"]); if (oParsed["tcBdr"]["insideV"]) oBorders.InsideV = this.TableCellBorderFromJSON(oParsed["tcBdr"]["insideV"]); if (oParsed["tcBdr"]["left"]) oBorders.Left = this.TableCellBorderFromJSON(oParsed["tcBdr"]["left"]); if (oParsed["tcBdr"]["right"]) oBorders.Right = this.TableCellBorderFromJSON(oParsed["tcBdr"]["right"]); if (oParsed["tcBdr"]["top"]) oBorders.Top = this.TableCellBorderFromJSON(oParsed["tcBdr"]["top"]); } return oCellPr; }; ReaderFromJSON.prototype.TableCellBorderFromJSON = function(oParsed) { let oBorder = new CDocumentBorder(); if (oParsed["ln"]) { let oLn = this.LnFromJSON(oParsed["ln"]); oLn.fillDocumentBorder(oBorder) } else if (oParsed["lnRef"]) { oBorder.LineRef = this.StyleRefFromJSON(oParsed["lnRef"]); oBorder.Value = AscCommonWord.border_Single; } return oBorder; }; ReaderFromJSON.prototype.TcTxStyleFromJSON = function(oTcTxPr, oParsed) { if (oParsed["i"] != null) oTcTxPr.Italic = oParsed["i"] === "on"; if (oParsed["b"] != null) oTcTxPr.Bold = oParsed["b"] === "on"; if (oParsed["fontRef"]) oTcTxPr.FontRef = this.FontRefFromJSON(oParsed["fontRef"]); if (oParsed["color"]) { let oColor = this.ColorFromJSON(oParsed["color"]); oTcTxPr.Unifill = AscFormat.CreateUniFillByUniColor(oColor); } }; ReaderFromJSON.prototype.SlideLayoutFromJSON = function(oParsedLayout) { var oLayout = new AscCommonSlide.SlideLayout(); var nLayoutType = undefined; switch (oParsedLayout["ltType"]) { case "blank": nLayoutType = c_oAscSlideLayoutType.Blank; break; case "chart": nLayoutType = c_oAscSlideLayoutType.Chart; break; case "chartAndTx": nLayoutType = c_oAscSlideLayoutType.ChartAndTx; break; case "clipArtAndTx": nLayoutType = c_oAscSlideLayoutType.ClipArtAndTx; break; case "clipArtAndVertTx": nLayoutType = c_oAscSlideLayoutType.ClipArtAndVertTx; break; case "cust": nLayoutType = c_oAscSlideLayoutType.Cust; break; case "dgm": nLayoutType = c_oAscSlideLayoutType.Dgm; break; case "fourObj": nLayoutType = c_oAscSlideLayoutType.FourObj; break; case "mediaAndTx": nLayoutType = c_oAscSlideLayoutType.MediaAndTx; break; case "obj": nLayoutType = c_oAscSlideLayoutType.Obj; break; case "objAndTwoObj": nLayoutType = c_oAscSlideLayoutType.ObjAndTwoObj; break; case "objAndTx": nLayoutType = c_oAscSlideLayoutType.ObjAndTx; break; case "objOnly": nLayoutType = c_oAscSlideLayoutType.ObjOnly; break; case "objOverTx": nLayoutType = c_oAscSlideLayoutType.ObjOverTx; break; case "objTx": nLayoutType = c_oAscSlideLayoutType.ObjTx; break; case "picTx": nLayoutType = c_oAscSlideLayoutType.PicTx; break; case "secHead": nLayoutType = c_oAscSlideLayoutType.SecHead; break; case "tbl": nLayoutType = c_oAscSlideLayoutType.Tbl; break; case "title": nLayoutType = c_oAscSlideLayoutType.Title; break; case "titleOnly": nLayoutType = c_oAscSlideLayoutType.TitleOnly; break; case "twoColTx": nLayoutType = c_oAscSlideLayoutType.TwoColTx; break; case "twoObj": nLayoutType = c_oAscSlideLayoutType.TwoObj; break; case "twoObjAndObj": nLayoutType = c_oAscSlideLayoutType.TwoObjAndObj; break; case "twoObjAndTx": nLayoutType = c_oAscSlideLayoutType.TwoObjAndTx; break; case "twoObjOverTx": nLayoutType = c_oAscSlideLayoutType.TwoObjOverTx; break; case "twoTxTwoObj": nLayoutType = c_oAscSlideLayoutType.TwoTxTwoObj; break; case "tx": nLayoutType = c_oAscSlideLayoutType.Tx; break; case "txAndChart": nLayoutType = c_oAscSlideLayoutType.TxAndChart; break; case "txAndClipArt": nLayoutType = c_oAscSlideLayoutType.TxAndClipArt; break; case "txAndMedia": nLayoutType = c_oAscSlideLayoutType.TxAndMedia; break; case "txAndObj": nLayoutType = c_oAscSlideLayoutType.TxAndObj; break; case "txAndTwoObj": nLayoutType = c_oAscSlideLayoutType.TxAndTwoObj; break; case "txOverObj": nLayoutType = c_oAscSlideLayoutType.TxOverObj; break; case "vertTitleAndTx": nLayoutType = c_oAscSlideLayoutType.VertTitleAndTx; break; case "vertTitleAndTxOverChart": nLayoutType = c_oAscSlideLayoutType.VertTitleAndTxOverChart; break; case "vertTx": nLayoutType = c_oAscSlideLayoutType.VertTx; break; } var oClrMap = oParsedLayout["clrMapOvr"] ? this.ColorMapOvrFromJSON(oParsedLayout["clrMapOvr"]) : null; oClrMap && oLayout.setClMapOverride(oClrMap); // cSld var oCSld = this.CSldFromJSON(oParsedLayout["cSld"]); for (var nShape = 0; nShape < oCSld.spTree.length; nShape++) oLayout.shapeAdd(nShape, oCSld.spTree[nShape]); oCSld.Bg && oLayout.changeBackground(oCSld.Bg); oCSld.name && oLayout.setCSldName(oCSld.name); // hf oParsedLayout["hf"] && oLayout.setHF(this.HFFromJSON(oParsedLayout["hf"])); // timing oParsedLayout["timing"] && oLayout.setTiming(this.TimingFromJSON(oParsedLayout["timing"])); // transition oParsedLayout["transition"] && oLayout.applyTransition(this.TransitionFromJSON(oParsedLayout["transition"])); oParsedLayout["matchingName"] && oLayout.setMatchingName(oParsedLayout["matchingName"]); oLayout.setPreserve(oParsedLayout["preserve"]); oParsedLayout["showMasterPhAnim"] && oLayout.setShowPhAnim(oParsedLayout["showMasterPhAnim"]); oParsedLayout["showMasterSp"] && oLayout.setShowMasterSp(oParsedLayout["showMasterSp"]); oLayout.userDrawn = oParsedLayout["userDrawn"]; oLayout.setType(nLayoutType); oLayout.ImageBase64 = oParsedLayout["imgBase64"]; // мапим, чтобы повторно не восстанавливать this.layoutsMap[oParsedLayout["id"]] = oLayout; if (this.mastersMap[oParsedLayout["master"]]) { var oMaster = this.mastersMap[oParsedLayout["master"]]; oMaster.addToSldLayoutLstToPos(oMaster.sldLayoutLst.length, oLayout); } return oLayout; }; ReaderFromJSON.prototype.SlideFromJSON = function(oParsedSlide, oPres) { var oPresentation = oPres || private_GetPresentation(); var oLayout = null; var oMaster = null; if (typeof oParsedSlide["layout"] === "object") oLayout = this.SlideLayoutFromJSON(oParsedSlide["layout"]); if (typeof oParsedSlide["master"] === "object") oMaster = this.MasterSlideFromJSON(oParsedSlide["master"], oPresentation); if (oMaster) { if (!oLayout) oLayout = this.layoutsMap[oParsedSlide["layout"]]; else oMaster.addToSldLayoutLstToPos(oMaster.length, oLayout); } if (!oLayout) { if (!this.layoutsMap[oParsedSlide["layout"]]) { var CurSlide = oPresentation.Slides[oPresentation.CurPage]; if (!CurSlide) { oMaster = oPresentation.getDefaultMasterSlide(); oLayout = oMaster.sldLayoutLst[0]; } else oLayout = CurSlide.Layout; } else oLayout = this.layoutsMap[oParsedSlide["layout"]]; } // установим MasterSlide для Layout, если не задан if (!oLayout.Master) { oMaster = oPresentation.getDefaultMasterSlide(); oLayout.setMaster(oMaster); oMaster.addToSldLayoutLstToPos(oMaster.length, oLayout); } var oSlide = new AscCommonSlide.Slide(oPresentation, oLayout, 0); oParsedSlide["notes"] && oSlide.setNotes(this.NotesFromJSON(oParsedSlide["notes"], oPresentation)); oParsedSlide["clrMapOvr"] && oSlide.setClMapOverride(this.ColorMapOvrFromJSON(oParsedSlide["clrMapOvr"])); // cSld var oCSld = this.CSldFromJSON(oParsedSlide["cSld"]); for (var nShape = 0; nShape < oCSld.spTree.length; nShape++) oSlide.shapeAdd(nShape, oCSld.spTree[nShape]); oCSld.Bg && oSlide.changeBackground(oCSld.Bg); oCSld.name && oSlide.setCSldName(oCSld.name); // comments for (var nComment = 0; nComment < oParsedSlide["comments"].length; nComment++) oSlide.slideComments.addComment(this.CommentFromJSON(oParsedSlide["comments"][nComment], oSlide.slideComments)); oParsedSlide["transition"] && oSlide.applyTransition(this.TransitionFromJSON(oParsedSlide["transition"])); oParsedSlide["timing"] && oSlide.setTiming(this.TimingFromJSON(oParsedSlide["timing"])); oParsedSlide["show"] != undefined && oSlide.setShow(oParsedSlide["show"]); oParsedSlide["showMasterPhAnim"] != undefined && oSlide.setShowPhAnim(oParsedSlide["showMasterPhAnim"]); oParsedSlide["showMasterSp"] != undefined && oSlide.setShowMasterSp(oParsedSlide["showMasterSp"]); oSlide.setSlideSize(oPresentation.GetWidthMM(), oPresentation.GetHeightMM()); return oSlide; }; ReaderFromJSON.prototype.SlidesFromJSON = function(oParsedSlides, oPres) { var oPresentation = oPres || private_GetPresentation(); var aSlides = []; for (var nMaster = 0; nMaster < oParsedSlides["masters"].length; nMaster++) this.MasterSlideFromJSON(oParsedSlides["masters"][nMaster], oPresentation); for (var nLayout = 0; nLayout < oParsedSlides["layouts"].length; nLayout++) this.SlideLayoutFromJSON(oParsedSlides["layouts"][nLayout]); for (var nSlide = 0; nSlide < oParsedSlides["slides"].length; nSlide++) aSlides.push(this.SlideFromJSON(oParsedSlides["slides"][nSlide])); return aSlides; }; ReaderFromJSON.prototype.SlideSizeFromJSON = function(oParsedSldSize) { var nSldSzType = undefined; switch (oParsedSldSize["type"]) { case Asc.c_oAscSlideSZType.Sz35mm: nSldSzType = "35mm"; break; case Asc.c_oAscSlideSZType.SzA3: nSldSzType = "A3"; break; case Asc.c_oAscSlideSZType.SzA4: nSldSzType = "A4"; break; case Asc.c_oAscSlideSZType.SzB4ISO: nSldSzType = "B4ISO"; break; case Asc.c_oAscSlideSZType.SzB4JIS: nSldSzType = "B4JIS"; break; case Asc.c_oAscSlideSZType.SzB5ISO: nSldSzType = "B5ISO"; break; case Asc.c_oAscSlideSZType.SzB5JIS: nSldSzType = "B5JIS"; break; case Asc.c_oAscSlideSZType.SzBanner: nSldSzType = "banner"; break; case Asc.c_oAscSlideSZType.SzCustom: nSldSzType = "custom"; break; case Asc.c_oAscSlideSZType.SzHagakiCard: nSldSzType = "hagakiCard"; break; case Asc.c_oAscSlideSZType.SzLedger: nSldSzType = "ledger"; break; case Asc.c_oAscSlideSZType.SzLetter: nSldSzType = "letter"; break; case Asc.c_oAscSlideSZType.SzOverhead: nSldSzType = "overhead"; break; case Asc.c_oAscSlideSZType.SzScreen16x10: nSldSzType = "screen16x10"; break; case Asc.c_oAscSlideSZType.SzScreen16x9: nSldSzType = "screen16x9"; break; case Asc.c_oAscSlideSZType.SzScreen4x3: nSldSzType = "screen4x3"; break; case Asc.c_oAscSlideSZType.SzWidescreen: nSldSzType = "wideScreen"; break; } var oSldSize = new AscCommonSlide.CSlideSize(); oParsedSldSize["cx"] != undefined && oSldSize.setCX(oParsedSldSize["cx"]); oParsedSldSize["cy"] != undefined && oSldSize.setCY(oParsedSldSize["cy"]); nSldSzType != undefined && oSldSize.setType(oParsedSldSize["cx"]); return oSldSize; }; ReaderFromJSON.prototype.ShowPrFromJSON = function(oParsedShowPr) { var oShowPr = new CShowPr(); oShowPr.browse = oParsedShowPr["browse"] !== undefined ? oParsedShowPr["browse"] : oShowPr.browse; oShowPr.kiosk = oParsedShowPr["kiosk"] !== undefined ? oParsedShowPr["kiosk"] : oShowPr.kiosk; oShowPr.penClr = oParsedShowPr["penClr"] !== undefined ? this.ColorFromJSON(oParsedShowPr["penClr"]) : oShowPr.penClr; oShowPr.present = oParsedShowPr["present"] !== undefined ? oParsedShowPr["present"] : oShowPr.present; oShowPr.show = oParsedShowPr["show"] !== undefined ? oParsedShowPr["show"] : oShowPr.show; oShowPr.loop = oParsedShowPr["loop"] !== undefined ? oParsedShowPr["loop"] : oShowPr.loop; oShowPr.showAnimation = oParsedShowPr["showAnimation"] !== undefined ? oParsedShowPr["showAnimation"] : oShowPr.showAnimation; oShowPr.showNarration = oParsedShowPr["showNarration"] !== undefined ? oParsedShowPr["showNarration"] : oShowPr.showNarration; oShowPr.useTimings = oParsedShowPr["useTimings"] !== undefined ? oParsedShowPr["useTimings"] : oShowPr.useTimings; return oShowPr; }; ReaderFromJSON.prototype.CommentFromJSON = function(oParsedComment, oParent) { var oAscCommentData = new Asc.asc_CCommentDataSlide({ m_sText: oParsedComment["text"], m_sUserName: oParsedComment["authorName"], m_sUserId: oParsedComment["authorId"], m_sOOTime: oParsedComment["dt"] }); var oCommentData = new AscCommon.CCommentData(); oCommentData.Read_FromAscCommentData(oAscCommentData); var oComment = new AscCommon.CComment(oParent, oCommentData); oComment.setPosition(oParsedComment["pos"]["x"], oParsedComment["pos"]["y"]); return oComment; }; ReaderFromJSON.prototype.NotesFromJSON = function(oParsedNotes, oPres) { var oNotes = new AscCommonSlide.CNotes(); oParsedNotes["clrMapOvr"] && oNotes.setClMapOverride(this.ColorMapOvrFromJSON(oParsedNotes["clrMapOvr"])); // cSld var oCSld = this.CSldFromJSON(oParsedNotes["cSld"]); for (var nShape = 0; nShape < oCSld.spTree.length; nShape++) oNotes.addToSpTreeToPos(nShape, oCSld.spTree[nShape]); oCSld.Bg && oNotes.changeBackground(oCSld.Bg); oCSld.name && oNotes.setCSldName(oCSld.name); oParsedNotes["showMasterPhAnim"] != undefined && oNotes.setShowMasterPhAnim(oParsedNotes["showMasterPhAnim"]); oParsedNotes["showMasterSp"] != undefined && oNotes.setShowMasterSp(oParsedNotes["showMasterSp"]); var oNotesMaster = typeof oParsedNotes["master"] === "object" ? this.NotesMasterFromJSON(oParsedNotes["master"], oPres) : oParsedNotes["master"]; typeof oNotesMaster === "object" ? oNotes.setNotesMaster(oNotesMaster) : oNotes.setNotesMaster(this.notesMasterMap[oNotesMaster]); return oNotes; }; ReaderFromJSON.prototype.NotesMasterFromJSON = function(oParsedNotesMaster, oPres) { var oNotesMaster = new AscCommonSlide.CNotesMaster(); if (oParsedNotesMaster["clrMap"] != null) oNotesMaster.setClrMap(this.ColorMapOvrFromJSON(oParsedNotesMaster["clrMap"])); // cSld var oCSld = this.CSldFromJSON(oParsedNotesMaster["cSld"]); for (var nShape = 0; nShape < oCSld.spTree.length; nShape++) oNotesMaster.addToSpTreeToPos(nShape, oCSld.spTree[nShape]); oCSld.Bg && oNotesMaster.changeBackground(oCSld.Bg); oCSld.name && oNotesMaster.setCSldName(oCSld.name); oParsedNotesMaster["hf"] && oNotesMaster.setHF(this.HFFromJSON(oParsedNotesMaster["hf"])); oParsedNotesMaster["notesStyle"] && oNotesMaster.setNotesStyle(this.LstStyleFromJSON(oParsedNotesMaster["notesStyle"])); // oTheme здесь будет либо объект темы, либо Id по которому тема уже создана и замаплена var oTheme = typeof oParsedNotesMaster["theme"] === "object" ? this.ThemeFromJSON(oParsedNotesMaster["theme"]) : oParsedNotesMaster["theme"]; typeof oParsedNotesMaster["theme"] === "object" ? oNotesMaster.setTheme(oTheme) : oNotesMaster.setTheme(this.themesMap[oTheme]); oPres.notesMasters[oPres.notesMasters.length] = oNotesMaster; this.notesMasterMap[oParsedNotesMaster["id"]] = oNotesMaster; return oNotesMaster; }; ReaderFromJSON.prototype.TimingFromJSON = function(oParsedTimig) { var oTiming = new AscFormat.CTiming(); oParsedTimig["bldLst"] && oTiming.setBldLst(this.BldLstFromJSON(oParsedTimig["bldLst"])); oParsedTimig["tnLst"] && oTiming.setTnLst(this.TnLstFromJSON(oParsedTimig["tnLst"])); return oTiming; }; ReaderFromJSON.prototype.BldLstFromJSON = function(oParsedBldLst) { var oBldLst = new AscFormat.CBldLst(); for (var nElm = 0; nElm < oParsedBldLst.length; nElm++) { if (oParsedBldLst[nElm]["type"] === "bldDgm") oBldLst.addToLst(oBldLst.list.length, this.BldDgmFromJSON(oParsedBldLst[nElm])); else if (oParsedBldLst[nElm]["type"] === "bldOleChart") oBldLst.addToLst(oBldLst.list.length, this.BldOleChartFromJSON(oParsedBldLst[nElm])); else if (oParsedBldLst[nElm]["type"] === "bldGraphic") oBldLst.addToLst(oBldLst.list.length, this.BldGraphicFromJSON(oParsedBldLst[nElm])); else if (oParsedBldLst[nElm]["type"] === "bldP") oBldLst.addToLst(oBldLst.list.length, this.BldPFromJSON(oParsedBldLst[nElm])); } return oBldLst; }; ReaderFromJSON.prototype.BldDgmFromJSON = function(oParsedBldDgm) { var oBldDgm = new AscFormat.CBldDgm(); var spId = this.drawingsMap[oParsedBldDgm["spid"]] ? this.drawingsMap[oParsedBldDgm["spid"]].Id : oParsedBldDgm["spid"]; oParsedBldDgm["bld"] != undefined && oBldDgm.setBld(oParsedBldDgm["bld"]); oParsedBldDgm["grpId"] != undefined && oBldDgm.setGrpId(oParsedBldDgm["grpId"]); oParsedBldDgm["spid"] != undefined && oBldDgm.setSpid(spId); oParsedBldDgm["uiExpand"] != undefined && oBldDgm.setUiExpand(oParsedBldDgm["uiExpand"]); return oBldDgm; }; ReaderFromJSON.prototype.BldOleChartFromJSON = function(oParsedBldOleChart) { var oBldOleChart = new AscFormat.CBldOleChart(); var spId = this.drawingsMap[oParsedBldOleChart["spid"]] ? this.drawingsMap[oParsedBldOleChart["spid"]].Id : oParsedBldOleChart["spid"]; oParsedBldOleChart["animBg"] != undefined && oBldOleChart.setAnimBg(oParsedBldOleChart["animBg"]); oParsedBldOleChart["bld"] != undefined && oBldOleChart.setBld(oParsedBldOleChart["bld"]); oParsedBldOleChart["grpId"] != undefined && oBldOleChart.setGrpId(oParsedBldOleChart["grpId"]); oParsedBldOleChart["spid"] != undefined && oBldOleChart.setSpid(spId); oParsedBldOleChart["uiExpand"] != undefined && oBldOleChart.setUiExpand(oParsedBldOleChart["uiExpand"]); return oBldOleChart; }; ReaderFromJSON.prototype.BldGraphicFromJSON = function(oParsedBldGraphic) { var oBldGraphic = new AscFormat.CBldGraphic(); var spId = this.drawingsMap[oParsedBldGraphic["spid"]] ? this.drawingsMap[oParsedBldGraphic["spid"]].Id : oParsedBldGraphic["spid"]; oParsedBldGraphic["bldAsOne"] && oBldGraphic.setBldAsOne(new AscFormat.CEmptyObject()); oParsedBldGraphic["bldSub"] && oBldGraphic.setBldSub(this.BldSubFromJSON(oParsedBldGraphic["bldSub"])); oParsedBldGraphic["grpId"] != undefined && oBldGraphic.setGrpId(oParsedBldGraphic["grpId"]); oParsedBldGraphic["spid"] != undefined && oBldGraphic.setSpid(spId); oParsedBldGraphic["uiExpand"] != undefined && oBldGraphic.setUiExpand(oParsedBldGraphic["uiExpand"]); return oBldGraphic; }; ReaderFromJSON.prototype.BldSubFromJSON = function(oParsedBldSub) { var oBldSub = new AscFormat.CBldSub(); oParsedBldSub["chart"] != undefined && oBldSub.setChart(oParsedBldSub["chart"]); oParsedBldSub["animBg"] != undefined && oBldSub.setAnimBg(oParsedBldSub["animBg"]); oParsedBldSub["bldChart"] != undefined && oBldSub.setBldChart(oParsedBldSub["bldChart"]); oParsedBldSub["bldDgm"] != undefined && oBldSub.setBldDgm(oParsedBldSub["bldDgm"]); oParsedBldSub["rev"] != undefined && oBldSub.setRev(oParsedBldSub["rev"]); return oBldSub; }; ReaderFromJSON.prototype.BldPFromJSON = function(oParsedBldP) { var oBldP = new AscFormat.CBldP(); var spId = this.drawingsMap[oParsedBldP["spid"]] ? this.drawingsMap[oParsedBldP["spid"]].Id : oParsedBldP["spid"]; var nBuildType = undefined; switch (oParsedBldP["build"]) { case "allAtOnce": nBuildType = c_oAscSlideParaBuildType.AllAtOnce; break; case "cust": nBuildType = c_oAscSlideParaBuildType.Cust; break; case "p": nBuildType = c_oAscSlideParaBuildType.P; break; case "whole": nBuildType = c_oAscSlideParaBuildType.Whole; break; } oParsedBldP["tmplLst"] != undefined && oBldP.setTmplLst(this.TmplLstFromJSON(oParsedBldP["tmplLst"])); oParsedBldP["advAuto"] != undefined && oBldP.setAdvAuto(oParsedBldP["advAuto"]); oParsedBldP["animBg"] != undefined && oBldP.setAnimBg(oParsedBldP["animBg"]); oParsedBldP["autoUpdateAnimB"] != undefined && oBldP.setAutoUpdateAnimBg(oParsedBldP["autoUpdateAnimB"]); oParsedBldP["bldLvl"] != undefined && oBldP.setBldLvl(oParsedBldP["bldLvl"]); nBuildType != undefined && oBldP.setBuild(nBuildType); oParsedBldP["grpId"] != undefined && oBldP.setGrpId(oParsedBldP["grpId"]); oParsedBldP["rev"] != undefined && oBldP.setRev(oParsedBldP["rev"]); oParsedBldP["spid"] != undefined && oBldP.setSpid(spId); oParsedBldP["uiExpand"] != undefined && oBldP.setUiExpand(oParsedBldP["uiExpand"]); return oBldP; }; ReaderFromJSON.prototype.TmplLstFromJSON = function(oParsedTmplLst) { var oTmplLst = new AscFormat.CTmplLst(); for (var nElm = 0; nElm < oParsedTmplLst["list"].length; nElm++) oTmplLst.addToLst(oTmplLst.list.length, this.TmplFromJSON(oParsedTmplLst["list"][nElm])); return oTmplLst; }; ReaderFromJSON.prototype.TmplFromJSON = function(oParsedTmpl) { var oTmlp = new AscFormat.CTmpl(); oParsedTmpl["lvl"] != undefined && oTmlp.setLvl(oParsedTmpl["lvl"]); oParsedTmpl["tnLst"] && oTmlp.setTnLst(this.TnLstFromJSON(oParsedTmpl["tnLst"])); return oTmlp; }; ReaderFromJSON.prototype.TnLstFromJSON = function(oParsedTnLst, bChildLst) { var oTnLSt = bChildLst ? new AscFormat.CChildTnLst() : new AscFormat.CTnLst(); var oTempElm = null; for (var nElm = 0; nElm < oParsedTnLst.length; nElm++) { oTempElm = oParsedTnLst[nElm]; switch (oTempElm["objType"]) { case "par": oTnLSt.addToLst(oTnLSt.list.length, this.ParFromJSON(oTempElm)); break; case "seq": oTnLSt.addToLst(oTnLSt.list.length, this.SeqFromJSON(oTempElm)); break; case "audio": oTnLSt.addToLst(oTnLSt.list.length, this.AudioFromJSON(oTempElm)); break; case "video": oTnLSt.addToLst(oTnLSt.list.length, this.VideoFromJSON(oTempElm)); break; case "excl": oTnLSt.addToLst(oTnLSt.list.length, this.ExclFromJSON(oTempElm)); break; case "anim": oTnLSt.addToLst(oTnLSt.list.length, this.AnimFromJSON(oTempElm)); break; case "animClr": oTnLSt.addToLst(oTnLSt.list.length, this.AnimClrFromJSON(oTempElm)); break; case "animEffect": oTnLSt.addToLst(oTnLSt.list.length, this.AnimEffectFromJSON(oTempElm)); break; case "animMotion": oTnLSt.addToLst(oTnLSt.list.length, this.AnimMotionFromJSON(oTempElm)); break; case "animRot": oTnLSt.addToLst(oTnLSt.list.length, this.AnimRotFromJSON(oTempElm)); break; case "animScale": oTnLSt.addToLst(oTnLSt.list.length, this.AnimScaleFromJSON(oTempElm)); break; case "cmd": oTnLSt.addToLst(oTnLSt.list.length, this.CmdFromJSON(oTempElm)); break; case "set": oTnLSt.addToLst(oTnLSt.list.length, this.SetFromJSON(oTempElm)); break; } } return oTnLSt; }; ReaderFromJSON.prototype.ParFromJSON = function(oParsedPar) { var oPar = new AscFormat.CPar(); oParsedPar["cTn"] && oPar.setCTn(this.CTnFromJSON(oParsedPar["cTn"])); return oPar; }; ReaderFromJSON.prototype.CTnFromJSON = function(oParsedCTn) { var oCTn = new AscFormat.CCTn(); oParsedCTn["childTnLst"] && oCTn.setChildTnLst(this.TnLstFromJSON(oParsedCTn["childTnLst"], true)); oParsedCTn["endCondLst"] && oCTn.setEndCondLst(this.CondLstFromJSON(oParsedCTn["endCondLst"])); oParsedCTn["endSync"] && oCTn.setEndSync(this.CondFromJSON(oParsedCTn["endSync"])); oParsedCTn["iterate"] && oCTn.setIterate(this.IterateFromJSON(oParsedCTn["iterate"])); oParsedCTn["stCondLst"] && oCTn.setStCondLst(this.CondLstFromJSON(oParsedCTn["stCondLst"])); oParsedCTn["subTnLst"] && oCTn.setSubTnLst(this.TnLstFromJSON(oParsedCTn["subTnLst"])); var nNodeFillType = undefined; switch (oParsedCTn["fill"]) { case "freeze": nNodeFillType = c_oAscSlideNodeFillType.Freeze; break; case "hold": nNodeFillType = c_oAscSlideNodeFillType.Hold; break; case "remove": nNodeFillType = c_oAscSlideNodeFillType.Remove; break; case "transition": nNodeFillType = c_oAscSlideNodeFillType.Transition; break; } var nMasterRelType = undefined; switch (oParsedCTn["masterRel"]) { case "lastClick": nMasterRelType = c_oAscSlideMasterRelationType.LastClick; break; case "nextClick": nMasterRelType = c_oAscSlideMasterRelationType.NextClick; break; case "sameClick": nMasterRelType = c_oAscSlideMasterRelationType.SameClick; break; } var nNodeType = undefined; switch (oParsedCTn["nodeType"]) { case "afterEffect": nNodeType = c_oAscSlideNodeType.AfterEffect; break; case "afterGroup": nNodeType = c_oAscSlideNodeType.AfterGroup; break; case "clickEffect": nNodeType = c_oAscSlideNodeType.ClickEffect; break; case "clickPar": nNodeType = c_oAscSlideNodeType.ClickPar; break; case "interactiveSeq": nNodeType = c_oAscSlideNodeType.InteractiveSeq; break; case "mainSeq": nNodeType = c_oAscSlideNodeType.MainSeq; break; case "tmRoot": nNodeType = c_oAscSlideNodeType.TmRoot; break; case "withEffect": nNodeType = c_oAscSlideNodeType.WithEffect; break; case "withGroup": nNodeType = c_oAscSlideNodeType.WithGroup; break; } var nPresetClassType = undefined; switch (oParsedCTn["presetClass"]) { case "emph": nPresetClassType = c_oAscSlidePresetClassType.Emph; break; case "entr": nPresetClassType = c_oAscSlidePresetClassType.Entr; break; case "exit": nPresetClassType = c_oAscSlidePresetClassType.Exit; break; case "mediacall": nPresetClassType = c_oAscSlidePresetClassType.Mediacall; break; case "path": nPresetClassType = c_oAscSlidePresetClassType.Path; break; case "verb": nPresetClassType = c_oAscSlidePresetClassType.Verb; break; } var nRestartType = undefined; switch (oParsedCTn["restart"]) { case "always": nRestartType = c_oAscSlideRestartType.Always; break; case "never": nRestartType = c_oAscSlideRestartType.Never; break; case "whenNotActive": nRestartType = c_oAscSlideRestartType.WhenNotActive; break; } var nSyncBehaviorType = undefined; switch (oParsedCTn["syncBehavior"]) { case "canSlip": nSyncBehaviorType = c_oAscSlideSyncBehaviorType.CanSlip; break; case "locked": nSyncBehaviorType = c_oAscSlideSyncBehaviorType.Locked; break; } oParsedCTn["accel"] != undefined && oCTn.setAccel(oParsedCTn["accel"]); oParsedCTn["afterEffect"] != undefined && oCTn.setAfterEffect(oParsedCTn["afterEffect"]); oParsedCTn["autoRev"] != undefined && oCTn.setAutoRev(oParsedCTn["autoRev"]); oParsedCTn["bldLvl"] != undefined && oCTn.setBldLvl(oParsedCTn["bldLvl"]); oParsedCTn["decel"] != undefined && oCTn.setDecel(oParsedCTn["decel"]); oParsedCTn["display"] != undefined && oCTn.setDisplay(oParsedCTn["display"]); oParsedCTn["dur"] != undefined && oCTn.setDur(oParsedCTn["dur"]); oParsedCTn["evtFilter"] != undefined && oCTn.setEvtFilter(oParsedCTn["evtFilter"]); nNodeFillType != undefined && oCTn.setFill(nNodeFillType); oParsedCTn["grpId"] != undefined && oCTn.setGrpId(oParsedCTn["grpId"]); oParsedCTn["id"] != undefined && oCTn.setId(oParsedCTn["id"]); nMasterRelType != undefined && oCTn.setMasterRel(nMasterRelType); oParsedCTn["nodePh"] != undefined && oCTn.setNodePh(oParsedCTn["nodePh"]); nNodeType != undefined && oCTn.setNodeType(nNodeType); nPresetClassType != undefined && oCTn.setPresetClass(nPresetClassType); oParsedCTn["presetID"] != undefined && oCTn.setPresetID(oParsedCTn["presetID"]); oParsedCTn["presetSubtype"] != undefined && oCTn.setPresetSubtype(oParsedCTn["presetSubtype"]); oParsedCTn["repeatCount"] != undefined && oCTn.setRepeatCount(oParsedCTn["repeatCount"]); oParsedCTn["repeatDur"] != undefined && oCTn.setRepeatDur(oParsedCTn["repeatDur"]); nRestartType != undefined && oCTn.setRestart(nRestartType); oParsedCTn["spd"] != undefined && oCTn.setSpd(oParsedCTn["spd"]); nSyncBehaviorType != undefined && oCTn.setSyncBehavior(nSyncBehaviorType); oParsedCTn["tmFilter"] != undefined && oCTn.setTmFilter(oParsedCTn["tmFilter"]); return oCTn; }; ReaderFromJSON.prototype.CondLstFromJSON = function(oParsedCondLst) { var oCondLst = new AscFormat.CCondLst(); for (var nCond = 0; nCond < oParsedCondLst.length; nCond++) oCondLst.addToLst(oCondLst.list.length, this.CondFromJSON(oParsedCondLst[nCond])); return oCondLst; }; ReaderFromJSON.prototype.CondFromJSON = function(oParsedCond) { var oCond = new AscFormat.CCond(); var nEventType = undefined; switch (oParsedCond["evt"]) { case "begin": nEventType = c_oAscSlideTriggerEventType.Begin; break; case "end": nEventType = c_oAscSlideTriggerEventType.End; break; case "onBegin": nEventType = c_oAscSlideTriggerEventType.OnBegin; break; case "onClick": nEventType = c_oAscSlideTriggerEventType.OnClick; break; case "onDblClick": nEventType = c_oAscSlideTriggerEventType.OnDblClick; break; case "onEnd": nEventType = c_oAscSlideTriggerEventType.OnEnd; break; case "onMouseOut": nEventType = c_oAscSlideTriggerEventType.OnMouseOut; break; case "onMouseOver": nEventType = c_oAscSlideTriggerEventType.OnMouseOver; break; case "onNext": nEventType = c_oAscSlideTriggerEventType.OnNext; break; case "onPrev": nEventType = c_oAscSlideTriggerEventType.OnPrev; break; case "onStopAudio": nEventType = c_oAscSlideTriggerEventType.OnStopAudio; break; } oParsedCond["rtn"] && oCond.setRtn(this.RtnFromJSON(oParsedCond["rtn"])); oParsedCond["tgtEl"] && oCond.setTgtEl(this.TgtElFromJSON(oParsedCond["tgtEl"])); oParsedCond["tn"] != undefined && oCond.setTn(oParsedCond["tn"]); oParsedCond["delay"] != undefined && oCond.setDelay(oParsedCond["delay"]); nEventType != undefined && oCond.setEvt(nEventType); return oCond; }; ReaderFromJSON.prototype.RtnFromJSON = function(oParsedRtn) { var nType = undefined; switch (oParsedRtn["val"]) { case "all": nType = c_oAscSlideRuntimeTriggerType.All; break; case "first": nType = c_oAscSlideRuntimeTriggerType.First; break; case "last": nType = c_oAscSlideRuntimeTriggerType.Last; break; } return nType || null; }; ReaderFromJSON.prototype.TgtElFromJSON = function(oParsedTgtEl) { var oTgtEl = new AscFormat.CTgtEl(); oParsedTgtEl["inkTgt"] && oTgtEl.setInkTgt(this.InkTgtFromJSON(oParsedTgtEl["inkTgt"])); //oParsedTgtEl["sldTgt"] && oTgtEl.setSldTgt(this.SldTgtFromJSON(oParsedTgtEl["sldTgt"])); oParsedTgtEl["sndTgt"] && oTgtEl.setSndTgt(this.SndTgtFromJSON(oParsedTgtEl["sndTgt"])); oParsedTgtEl["spTgt"] && oTgtEl.setSpTgt(this.SpTgtFromJSON(oParsedTgtEl["spTgt"])); return oTgtEl; }; ReaderFromJSON.prototype.InkTgtFromJSON = function(oParsedInkTgt) { var oInkTgt = new AscFormat.CObjectTarget(); //var spId = this.drawingsMap[oParsedInkTgt["spid"]] ? this.drawingsMap[oParsedInkTgt["spid"]].Id : oParsedInkTgt["spid"]; oParsedInkTgt["spid"] != undefined && oInkTgt.setSpid(oParsedInkTgt["spid"]); this.AddConnectedObject(oInkTgt); return oInkTgt; }; ReaderFromJSON.prototype.SldTgtFromJSON = function(oParsedSldTgt) { // not supported yet }; ReaderFromJSON.prototype.SndTgtFromJSON = function(oParsedSndTgt) { var oSndTgt = new AscFormat.CSndTgt(); oParsedSndTgt["embed"] != undefined && oSndTgt.setEmbed(oParsedSndTgt["embed"]); oParsedSndTgt["name"] != undefined && oSndTgt.setName(oParsedSndTgt["name"]); oParsedSndTgt["builtIn"] != undefined && oSndTgt.setBuiltIn(oParsedSndTgt["builtIn"]); return oSndTgt; }; ReaderFromJSON.prototype.SpTgtFromJSON = function(oParsedSpTgt) { var oSpTgt = new AscFormat.CSpTgt(); //var spId = this.drawingsMap[oParsedSpTgt["spid"]] ? this.drawingsMap[oParsedSpTgt["spid"]].Id : oParsedSpTgt["spid"]; //var subSpId = this.drawingsMap[oParsedSpTgt["subSpId"]] ? this.drawingsMap[oParsedSpTgt["subSpId"]].Id : oParsedSpTgt["subSpId"]; oParsedSpTgt["spid"] != undefined && oSpTgt.setSpid(oParsedSpTgt["spid"]); oParsedSpTgt["bg"] != undefined && oSpTgt.setBg(oParsedSpTgt["bg"]); oParsedSpTgt["subSpId"] != undefined && oSpTgt.setSubSpId(oParsedSpTgt["subSpId"]); oParsedSpTgt["oleChartEl"] && oSpTgt.setOleChartEl(this.OleChartElFromJSON(oParsedSpTgt["oleChartEl"])); oParsedSpTgt["txEl"] && oSpTgt.setTxEl(this.TxElFromJSON(oParsedSpTgt["txEl"])); oParsedSpTgt["graphicEl"] && oSpTgt.setGraphicEl(this.GraphicElFromJSON(oParsedSpTgt["graphicEl"])); this.AddConnectedObject(oSpTgt); return oSpTgt; }; ReaderFromJSON.prototype.OleChartElFromJSON = function(oParsedOleChartEl) { var oOleChartEl = new AscFormat.COleChartEl(); var nType = undefined; switch (oParsedOleChartEl["type"]) { case "category": nType = c_oAscSlideChartSubElementType.Category; break; case "gridLegend": nType = c_oAscSlideChartSubElementType.GridLegend; break; case "ptInCategory": nType = c_oAscSlideChartSubElementType.PtInCategory; break; case "ptInSeries": nType = c_oAscSlideChartSubElementType.PtInSeries; break; case "series": nType = c_oAscSlideChartSubElementType.Series; break; } oParsedOleChartEl["lvl"] != undefined && oOleChartEl.setLvl(oParsedOleChartEl["lvl"]); nType != undefined && oOleChartEl.setType(nType); return oOleChartEl; }; ReaderFromJSON.prototype.TxElFromJSON = function(oParsedTxEl) { var oTxEl = new AscFormat.CTxEl(); oParsedTxEl["charRg"] && oTxEl.setCharRg(this.IndexRgFromJSON(oParsedTxEl["charRg"])); oParsedTxEl["pRg"] && oTxEl.setPRg(this.IndexRgFromJSON(oParsedTxEl["pRg"])); return oTxEl; }; ReaderFromJSON.prototype.IndexRgFromJSON = function(oParsedIndexRg) { var oIndexRg = new AscFormat.CIndexRg(); oParsedIndexRg["st"] != undefined && oIndexRg.setSt(oParsedIndexRg["st"]); oParsedIndexRg["end"] != undefined && oIndexRg.setEnd(oParsedIndexRg["end"]); return oIndexRg; }; ReaderFromJSON.prototype.GraphicElFromJSON = function(oParsedGraphicEl) { var oGraphicEl = new AscFormat.CGraphicEl(); oParsedGraphicEl["chart"]["bldStep"] != undefined && oGraphicEl.setChartBuildStep(oParsedGraphicEl["chart"]["bldStep"]); oParsedGraphicEl["chart"]["categoryIdx"] != undefined && oGraphicEl.setCategoryIdx(oParsedGraphicEl["chart"]["categoryIdx"]); oParsedGraphicEl["chart"]["seriesIdx"] != undefined && oGraphicEl.setSeriesIdx(oParsedGraphicEl["chart"]["seriesIdx"]); oParsedGraphicEl["dgm"]["bldStep"] != undefined && oGraphicEl.setDgmBuildStep(oParsedGraphicEl["dgm"]["bldStep"]); oParsedGraphicEl["dgm"]["id"] != undefined && oGraphicEl.setDgmId(oParsedGraphicEl["dgm"]["id"]); this.AddConnectedObject(oGraphicEl); return oGraphicEl; }; ReaderFromJSON.prototype.IterateFromJSON = function(oParsedIterate) { var oIterate = new AscFormat.CIterateData(); var nIterateType = undefined; switch (oParsedIterate["type"]) { case "el": nIterateType = c_oAscSlideIterateType.El; break; case "lt": nIterateType = c_oAscSlideIterateType.Lt; break; case "wd": nIterateType = c_oAscSlideIterateType.Wd; break; } oParsedIterate["tmAbs"] != undefined && oIterate.setTmAbs(oParsedIterate["tmAbs"]); oParsedIterate["tmPct"] != undefined && oIterate.setTmPct(oParsedIterate["tmPct"]); oParsedIterate["backwards"] != undefined && oIterate.setBackwards(oParsedIterate["backwards"]); nIterateType != undefined && oIterate.setType(nIterateType); return oIterate; }; ReaderFromJSON.prototype.SeqFromJSON = function(oParsedSeq) { var oSeq = new AscFormat.CSeq(); var nNextAcType = undefined; switch (oParsedSeq["nextAc"]) { case "none": nNextAcType = c_oAscSlideNextAcType.None; break; case "seek": nNextAcType = c_oAscSlideNextAcType.Seek; break; } var nPrevAcType = undefined; switch (oParsedSeq["prevAc"]) { case "none": nPrevAcType = c_oAscSlidePrevAcType.None; break; case "skipTimed": nPrevAcType = c_oAscSlidePrevAcType.SkipTimed; break; } oParsedSeq["cTn"] && oSeq.setCTn(this.CTnFromJSON(oParsedSeq["cTn"])); oParsedSeq["nextCondLst"] && oSeq.setNextCondLst(this.CondLstFromJSON(oParsedSeq["nextCondLst"])); oParsedSeq["prevCondLst"] && oSeq.setPrevCondLst(this.CondLstFromJSON(oParsedSeq["prevCondLst"])); oParsedSeq["concurrent"] != undefined && oSeq.setConcurrent(oParsedSeq["concurrent"]); nNextAcType != undefined && oSeq.setNextAc(nNextAcType); nPrevAcType != undefined && oSeq.setPrevAc(nPrevAcType); return oSeq; }; ReaderFromJSON.prototype.AudioFromJSON = function(oParsedAudio) { var oAudio = new AscFormat.CAudio(); oParsedAudio["cMediaNode"] && oAudio.setCMediaNode(this.CMediaNodeFromJSON(oParsedAudio["cMediaNode"])); oParsedAudio["isNarration"] != undefined && oAudio.setIsNarration(oParsedAudio["isNarration"]); return oAudio; }; ReaderFromJSON.prototype.CMediaNodeFromJSON = function(oParsedCMediaNode) { var oCMediaNode = new AscFormat.CCMediaNode(); oParsedCMediaNode["cTn"] && oCMediaNode.setCTn(this.CTnFromJSON(oParsedCMediaNode["cTn"])); oParsedCMediaNode["tgtEl"] && oCMediaNode.setTgtEl(this.TgtElFromJSON(oParsedCMediaNode["tgtEl"])); oParsedCMediaNode["mute"] != undefined && oCMediaNode.setMute(oParsedCMediaNode["mute"]); oParsedCMediaNode["numSld"] != undefined && oCMediaNode.setNumSld(oParsedCMediaNode["numSld"]); oParsedCMediaNode["showWhenStopped"] != undefined && oCMediaNode.setShowWhenStopped(oParsedCMediaNode["showWhenStopped"]); oParsedCMediaNode["vol"] != undefined && oCMediaNode.setVol(oParsedCMediaNode["vol"]); return oCMediaNode; }; ReaderFromJSON.prototype.VideoFromJSON = function(oParsedVideo) { var oVideo = new AscFormat.CVideo(); oParsedVideo["cMediaNode"] && oVideo.setCMediaNode(this.CMediaNodeFromJSON(oParsedVideo["cMediaNode"])); oParsedVideo["fullScrn"] != undefined && oVideo.setFullScrn(oParsedVideo["fullScrn"]); return oVideo; }; ReaderFromJSON.prototype.ExclFromJSON = function(oParsedExcl) { var oExcl = new AscFormat.CExcl(); oParsedExcl["cTn"] && oExcl.setCTn(this.CTnFromJSON(oParsedExcl["cTn"])); return oExcl; }; ReaderFromJSON.prototype.AnimFromJSON = function(oParsedAnim) { var oAnim = new AscFormat.CAnim(); var nCalcmodeType = undefined; switch (oParsedAnim["calcmode"]) { case "discrete": nCalcmodeType = c_oAscSlideCalcModeType.Discrete; break; case "lin": nCalcmodeType = c_oAscSlideCalcModeType.Lin; break; case "fmla": nCalcmodeType = c_oAscSlideCalcModeType.Fmla; break; } var nValueType = undefined; switch (oParsedAnim["valueType"]) { case "num": nValueType = c_oAscSlideTLValueType.Num; break; case "clr": nValueType = c_oAscSlideTLValueType.Clr; break; case "str": nValueType = c_oAscSlideTLValueType.Str; break; } oParsedAnim["cBhvr"] && oAnim.setCBhvr(this.CBhvrFromJSON(oParsedAnim["cBhvr"])); oParsedAnim["tavLst"] && oAnim.setTavLst(this.TavLstFromJSON(oParsedAnim["tavLst"])); oParsedAnim["by"] != undefined && oAnim.setBy(oParsedAnim["by"]); nCalcmodeType != undefined && oAnim.setCalcmode(nCalcmodeType); oParsedAnim["from"] != undefined && oAnim.setFrom(oParsedAnim["from"]); oParsedAnim["to"] != undefined && oAnim.setTo(oParsedAnim["to"]); nValueType != undefined && oAnim.setValueType(nValueType); return oAnim; }; ReaderFromJSON.prototype.CBhvrFromJSON = function(oParsedCBhvr) { var oCBhvr = new AscFormat.CCBhvr(); var nAccumulateType = undefined; switch (oParsedCBhvr["accumulate"]) { case "always": nAccumulateType = c_oAscSlideTLAccumulateType.Always; break; case "none": nAccumulateType = c_oAscSlideTLAccumulateType.None; break; } var nAdditiveType = undefined; switch (oParsedCBhvr["additive"]) { case "base": nAdditiveType = c_oAscSlideTLAdditiveType.Base; break; case "mult": nAdditiveType = c_oAscSlideTLAdditiveType.Mult; break; case "none": nAdditiveType = c_oAscSlideTLAdditiveType.None; break; case "repl": nAdditiveType = c_oAscSlideTLAdditiveType.Repl; break; case "sum": nAdditiveType = c_oAscSlideTLAdditiveType.Sum; break; } var nOverrideType = undefined; switch (oParsedCBhvr["override"]) { case "childStyle": nOverrideType = c_oAscSlideTLOverrideType.ChildStyle; break; case "normal": nOverrideType = c_oAscSlideTLOverrideType.Normal; break; } var nXfrmTypeType = undefined; switch (oParsedCBhvr["xfrmType"]) { case "img": nXfrmTypeType = c_oAscSlideTLTransformType.Img; break; case "pt": nXfrmTypeType = c_oAscSlideTLTransformType.Pt; break; } oParsedCBhvr["attrNameLst"] && oCBhvr.setAttrNameLst(this.AttrNameLstFromJSON(oParsedCBhvr["attrNameLst"])); oParsedCBhvr["cTn"] && oCBhvr.setCTn(this.CTnFromJSON(oParsedCBhvr["cTn"])); oParsedCBhvr["tgtEl"] && oCBhvr.setTgtEl(this.TgtElFromJSON(oParsedCBhvr["tgtEl"])); nAccumulateType != undefined && oCBhvr.setAccumulate(nAccumulateType); nAdditiveType != undefined && oCBhvr.setAdditive(nAdditiveType); oParsedCBhvr["by"] != undefined && oCBhvr.setBy(oParsedCBhvr["by"]); oParsedCBhvr["from"] != undefined && oCBhvr.setFrom(oParsedCBhvr["from"]); nOverrideType != undefined && oCBhvr.setOverride(nOverrideType); oParsedCBhvr["rctx"] != undefined && oCBhvr.setRctx(oParsedCBhvr["rctx"]); oParsedCBhvr["to"] != undefined && oCBhvr.setTo(oParsedCBhvr["to"]); nXfrmTypeType != undefined && oCBhvr.setXfrmType(nXfrmTypeType); return oCBhvr; }; ReaderFromJSON.prototype.AttrNameLstFromJSON = function(oParsedAttrNameLst) { var oAttrNameLst = new AscFormat.CAttrNameLst(); var oTempName = null; for (var nName = 0; nName < oParsedAttrNameLst.length; nName++) { oTempName = new AscFormat.CAttrName(); oTempName.setText(oParsedAttrNameLst[nName]); oAttrNameLst.addToLst(oAttrNameLst.list.length, oTempName); } return oAttrNameLst; }; ReaderFromJSON.prototype.TavLstFromJSON = function(oParsedTavLst) { var oTavLst = new AscFormat.CTavLst(); for (var nTav = 0; nTav < oParsedTavLst.length; nTav++) oTavLst.addToLst(oTavLst.list.length, this.TavFromJSON(oParsedTavLst[nTav])); return oTavLst; }; ReaderFromJSON.prototype.TavFromJSON = function(oParsedTav) { var oTav = new AscFormat.CTav(); oParsedTav["val"] && oTav.setVal(this.AnimVariantFromJSON(oParsedTav["val"])); oParsedTav["fmla"] != undefined && oTav.setFmla(oParsedTav["fmla"]); oParsedTav["tm"] != undefined && oTav.setTm(oParsedTav["tm"]); return oTav; }; ReaderFromJSON.prototype.AnimVariantFromJSON = function(oParsedAnimVariant) { var oAnimVariant = new AscFormat.CAnimVariant(); oParsedAnimVariant["boolVal"] != undefined && oAnimVariant.setBoolVal(oParsedAnimVariant["boolVal"]); oParsedAnimVariant["fltVal"] != undefined && oAnimVariant.setFltVal(oParsedAnimVariant["fltVal"]); oParsedAnimVariant["intVal"] != undefined && oAnimVariant.setIntVal(oParsedAnimVariant["intVal"]); oParsedAnimVariant["strVal"] != undefined && oAnimVariant.setStrVal(oParsedAnimVariant["strVal"]); oParsedAnimVariant["clrVal"] && oAnimVariant.setClrVal(this.ColorFromJSON(oParsedAnimVariant["clrVal"])); return oAnimVariant; }; ReaderFromJSON.prototype.AnimClrFromJSON = function(oParsedAnimClr) { var oAnimClr = new AscFormat.CAnimClr(); var nClrSpcType = undefined; switch (oParsedAnimClr["clrSpc"]) { case "rgb": nClrSpcType = c_oAscSlideTLColorSpaceType.Rgb; break; case "hsl": nClrSpcType = c_oAscSlideTLColorSpaceType.Hsl; break; } var nColorDir = undefined; switch (oParsedAnimClr["dir"]) { case "ccw": nColorDir = AscCommon.ST_HueDir.Ccw; break; case "cw": nColorDir = AscCommon.ST_HueDir.Cw; break; } oParsedAnimClr["by"]["rgb"] && oAnimClr.setByRGB(this.ByRGBFromJSON(oParsedAnimClr["by"]["rgb"])); oParsedAnimClr["by"]["hsl"] && oAnimClr.setByHSL(this.ByHSLFromJSON(oParsedAnimClr["by"]["hsl"])); oParsedAnimClr["cBhvr"] && oAnimClr.setCBhvr(this.CBhvrFromJSON(oParsedAnimClr["cBhvr"])); oParsedAnimClr["from"] != undefined && oAnimClr.setFrom(oParsedAnimClr["from"]); oParsedAnimClr["to"] != undefined && oAnimClr.setTo(oParsedAnimClr["to"]); nClrSpcType != undefined && oAnimClr.setClrSpc(nClrSpcType); nColorDir != undefined && oAnimClr.setDir(nColorDir); return oAnimClr; }; ReaderFromJSON.prototype.ByRGBFromJSON = function(oParsedByRGB) { var oByRGB = new AscFormat.CColorPercentage(); oByRGB.c1 = oParsedByRGB["r"]; oByRGB.c1 = oParsedByRGB["g"]; oByRGB.c1 = oParsedByRGB["b"]; return oByRGB; }; ReaderFromJSON.prototype.ByHSLFromJSON = function(oParsedByHSL) { var oByHSL = new AscFormat.CColorPercentage(); oByHSL.c1 = oParsedByHSL["h"]; oByHSL.c1 = oParsedByHSL["s"]; oByHSL.c1 = oParsedByHSL["l"]; return oByHSL; }; ReaderFromJSON.prototype.AnimEffectFromJSON = function(oParsedAnimEffect) { var oAnimEffect = new AscFormat.CAnimEffect(); oParsedAnimEffect["cBhvr"] && oAnimEffect.setCBhvr(this.CBhvrFromJSON(oParsedAnimEffect["cBhvr"])); oParsedAnimEffect["progress"] && oAnimEffect.setProgress(this.AnimVariantFromJSON(oParsedAnimEffect["progress"])); oParsedAnimEffect["filter"] != undefined && oAnimEffect.setFilter(oParsedAnimEffect["filter"]); oParsedAnimEffect["prLst"] != undefined && oAnimEffect.setPrLst(oParsedAnimEffect["prLst"]); oParsedAnimEffect["transition"] && oAnimEffect.setTransition(From_XML_TLAnimateEffectTransition(oParsedAnimEffect["transition"])); return oAnimEffect; }; ReaderFromJSON.prototype.TransitionFromJSON = function(oParsedTransition) { var oTransition = new Asc.CAscSlideTransition(); var nTransType = undefined; switch (oParsedTransition["type"]) { case "none": nTransType = c_oAscSlideTransitionTypes.None; break; case "fade": nTransType = c_oAscSlideTransitionTypes.Fade; break; case "push": nTransType = c_oAscSlideTransitionTypes.Push; break; case "wipe": nTransType = c_oAscSlideTransitionTypes.Wipe; break; case "split": nTransType = c_oAscSlideTransitionTypes.Split; break; case "unCover": nTransType = c_oAscSlideTransitionTypes.UnCover; break; case "cover": nTransType = c_oAscSlideTransitionTypes.Cover; break; case "clock": nTransType = c_oAscSlideTransitionTypes.Clock; break; case "zoom": nTransType = c_oAscSlideTransitionTypes.Zoom; break; } var transOption = undefined; switch (nTransType) { case c_oAscSlideTransitionTypes.Fade: transOption = oParsedTransition["option"] === false ? c_oAscSlideTransitionParams.Fade_Smoothly : c_oAscSlideTransitionParams.Fade_Through_Black; break; case c_oAscSlideTransitionTypes.Push: case c_oAscSlideTransitionTypes.Wipe: case c_oAscSlideTransitionTypes.Cover: case c_oAscSlideTransitionTypes.UnCover: switch (oParsedTransition["option"]) { case "l": transOption = c_oAscSlideTransitionParams.Param_Left; break; case "t": transOption = c_oAscSlideTransitionParams.Param_Top; break; case "r": transOption = c_oAscSlideTransitionParams.Param_Right; break; case "b": transOption = c_oAscSlideTransitionParams.Param_Bottom; break; case "tl": transOption = c_oAscSlideTransitionParams.Param_TopLeft; break; case "tr": transOption = c_oAscSlideTransitionParams.Param_TopRight; break; case "bl": transOption = c_oAscSlideTransitionParams.Param_BottomLeft; break; case "br": transOption = c_oAscSlideTransitionParams.Param_BottomRight; break; } break; case c_oAscSlideTransitionTypes.Split: switch (oParsedTransition["option"]) { case "verIn": transOption = c_oAscSlideTransitionParams.Split_VerticalIn; break; case "verOut": transOption = c_oAscSlideTransitionParams.Split_VerticalOut; break; case "horIn": transOption = c_oAscSlideTransitionParams.Split_HorizontalIn; break; case "horOut": transOption = c_oAscSlideTransitionParams.Split_HorizontalOut; break; } break; case c_oAscSlideTransitionTypes.Clock: switch (oParsedTransition["option"]) { case "clockwise": transOption = c_oAscSlideTransitionParams.Clock_Clockwise; break; case "counterClockwise": transOption = c_oAscSlideTransitionParams.Clock_Counterclockwise; break; case "wedge": transOption = c_oAscSlideTransitionParams.Clock_Wedge; break; } break; case c_oAscSlideTransitionTypes.Zoom: switch (oParsedTransition["option"]) { case "in": transOption = c_oAscSlideTransitionParams.Zoom_In; break; case "out": transOption = c_oAscSlideTransitionParams.Zoom_Out; break; case "andRotate": transOption = c_oAscSlideTransitionParams.Zoom_AndRotate; break; } break; } oTransition.TransitionType = nTransType; oTransition.TransitionOption = transOption; oTransition.TransitionDuration = oParsedTransition["transDur"]; oTransition.SlideAdvanceOnMouseClick = oParsedTransition["advClick"]; oTransition.SlideAdvanceAfter = oParsedTransition["advAfter"]; oTransition.SlideAdvanceDuration = oParsedTransition["advDur"]; oTransition.ShowLoop = oParsedTransition["shwLoop"]; return oTransition; }; ReaderFromJSON.prototype.AnimMotionFromJSON = function(oParsedAnimMotion) { var oAnimMotion = new AscFormat.CAnimMotion(); var nOriginType = undefined; switch (oParsedAnimMotion["origin"]) { case "parent": nOriginType = c_oAscSlideTLOriginType.Parent; break; case "layout": nOriginType = c_oAscSlideTLOriginType.Layout; break; } var nPathEditMode = undefined; switch (oParsedAnimMotion["pathEditMode"]) { case "fixed": nPathEditMode = c_oAscSlideTLPathEditMode.Fixed; break; case "relative": nPathEditMode = c_oAscSlideTLPathEditMode.Relative; break; } oParsedAnimMotion["by"] && oAnimMotion.setBy(this.ByPointFromJSON(oParsedAnimMotion["by"])); oParsedAnimMotion["cBhvr"] && oAnimMotion.setCBhvr(this.CBhvrFromJSON(oParsedAnimMotion["cBhvr"])); oParsedAnimMotion["from"] && oAnimMotion.setFrom(this.ByPointFromJSON(oParsedAnimMotion["from"])); oParsedAnimMotion["rCtr"] && oAnimMotion.setRCtr(this.ByPointFromJSON(oParsedAnimMotion["rCtr"])); oParsedAnimMotion["to"] && oAnimMotion.setTo(this.ByPointFromJSON(oParsedAnimMotion["to"])); nOriginType != undefined && oAnimMotion.setOrigin(nOriginType); oParsedAnimMotion["path"] != undefined && oAnimMotion.setPath(oParsedAnimMotion["path"]); nPathEditMode != undefined && oAnimMotion.setPathEditMode(nPathEditMode); oParsedAnimMotion["ptsTypes"] != undefined && oAnimMotion.setPtsTypes(oParsedAnimMotion["ptsTypes"]); oParsedAnimMotion["rAng"] != undefined && oAnimMotion.setRAng(oParsedAnimMotion["rAng"]); return oAnimMotion; }; ReaderFromJSON.prototype.ByPointFromJSON = function(oParsedByPoint) { var oTLPoint = new AscFormat.CTLPoint(); oParsedByPoint["x"] != undefined && oTLPoint.setX(oParsedByPoint["x"]); oParsedByPoint["y"] != undefined && oTLPoint.setY(oParsedByPoint["y"]); return oTLPoint; }; ReaderFromJSON.prototype.AnimRotFromJSON = function(oParsedAnimRot) { var oAnimRot = new AscFormat.CAnimRot(); oParsedAnimRot["cBhvr"] && oAnimRot.setCBhvr(this.CBhvrFromJSON(oParsedAnimRot["cBhvr"])); oParsedAnimRot["by"] != undefined && oAnimRot.setBy(oParsedAnimRot["by"]); oParsedAnimRot["from"] != undefined && oAnimRot.setFrom(oParsedAnimRot["from"]); oParsedAnimRot["to"] != undefined && oAnimRot.setTo(oParsedAnimRot["to"]); return oAnimRot; }; ReaderFromJSON.prototype.AnimScaleFromJSON = function(oParsedAnimScale) { var oAnimScale = new AscFormat.CAnimScale(); oParsedAnimScale["cBhvr"] && oAnimScale.setCBhvr(this.CBhvrFromJSON(oParsedAnimScale["cBhvr"])); oParsedAnimScale["by"] && oAnimScale.setBy(this.ByPointFromJSON(oParsedAnimScale["by"])); oParsedAnimScale["from"] && oAnimScale.setFrom(this.ByPointFromJSON(oParsedAnimScale["from"])); oParsedAnimScale["to"] && oAnimScale.setTo(this.ByPointFromJSON(oParsedAnimScale["to"])); oParsedAnimScale["zoomContents"] != undefined && oAnimScale.setZoomContents(oParsedAnimScale["zoomContents"]); return oAnimScale; }; ReaderFromJSON.prototype.CmdFromJSON = function(oParsedCmd) { var oCmd = new AscFormat.CCmd(); var nCommandType = undefined; switch (oParsedCmd["type"]) { case "call": nCommandType = c_oAscSlideTLCommandType.Call; break; case "evt": nCommandType = c_oAscSlideTLCommandType.Evt; break; case "verb": nCommandType = c_oAscSlideTLCommandType.Verb; break; } oParsedCmd["cBhvr"] && oCmd.setCBhvr(this.CBhvrFromJSON(oParsedCmd["cBhvr"])); oParsedCmd["cmd"] && oCmd.setCmd(oParsedCmd["cmd"]); nCommandType != undefined && oCmd.setType(nCommandType); return oCmd; }; ReaderFromJSON.prototype.SetFromJSON = function(oParsedSet) { var oSet = new AscFormat.CSet(); oParsedSet["cBhvr"] && oSet.setCBhvr(this.CBhvrFromJSON(oParsedSet["cBhvr"])); oParsedSet["to"] && oSet.setTo(this.AnimVariantFromJSON(oParsedSet["to"])); return oSet; }; ReaderFromJSON.prototype.HFFromJSON = function(oParsedHF) { var oHF = new AscFormat.HF(); oParsedHF["dt"] != undefined && oHF.setDt(oParsedHF["dt"]); oParsedHF["ftr"] != undefined && oHF.setFtr(oParsedHF["ftr"]); oParsedHF["hdr"] != undefined && oHF.setHdr(oParsedHF["hdr"]); oParsedHF["sldNum"] != undefined && oHF.setSldNum(oParsedHF["sldNum"]); return oHF; }; ReaderFromJSON.prototype.CSldFromJSON = function(oParsedCSld) { var oCSld = new AscFormat.CSld(); for (var nShape = 0; nShape < oParsedCSld["spTree"].length; nShape++) oCSld.spTree.push(this.GraphicObjFromJSON(oParsedCSld["spTree"][nShape])); oCSld.Bg = oParsedCSld["bg"] ? this.BgFromJSON(oParsedCSld["bg"]) : oCSld.Bg; oCSld.name = oParsedCSld.name; return oCSld; }; ReaderFromJSON.prototype.BgFromJSON = function(oParsedBg) { var oBg = new AscFormat.CBg(); var nBwModeType = undefined; switch (oParsedBg["bwMode"]) { case "auto": nBwModeType = c_oAscSlideBgBwModeType.Auto; break; case "black": nBwModeType = c_oAscSlideBgBwModeType.Black; break; case "blackGray": nBwModeType = c_oAscSlideBgBwModeType.BlackGray; break; case "blackWhite": nBwModeType = c_oAscSlideBgBwModeType.BlackWhite; break; case "clr": nBwModeType = c_oAscSlideBgBwModeType.Clr; break; case "gray": nBwModeType = c_oAscSlideBgBwModeType.Gray; break; case "grayWhite": nBwModeType = c_oAscSlideBgBwModeType.GrayWhite; break; case "hidden": nBwModeType = c_oAscSlideBgBwModeType.Hidden; break; case "invGray": nBwModeType = c_oAscSlideBgBwModeType.InvGray; break; case "ltGray": nBwModeType = c_oAscSlideBgBwModeType.LtGray; break; case "white": nBwModeType = c_oAscSlideBgBwModeType.White; break; } nBwModeType != undefined && oBg.setBwMode(nBwModeType); oParsedBg["bgPr"] && oBg.setBgPr(this.BgPrFromJSON(oParsedBg["bgPr"])); oParsedBg["bgRef"] && oBg.setBgRef(this.StyleRefFromJSON(oParsedBg["bgRef"])); return oBg; }; ReaderFromJSON.prototype.BgPrFromJSON = function(oParsedBgPr) { var oBgPr = new AscFormat.CBgPr(); oParsedBgPr["fill"] && oBgPr.setFill(this.FillFromJSON(oParsedBgPr["fill"])); oParsedBgPr["setShadeToTitle"] && oBgPr.setShadeToTitle(oParsedBgPr["setShadeToTitle"]); return oBgPr; }; function To_XML_TLAnimateEffectTransition(nVal) { var sVal = undefined; switch(nVal) { case AscCommon.ST_TLAnimateEffectTransition.in: sVal = "in"; break; case AscCommon.ST_TLAnimateEffectTransition.out: sVal = "out"; break; case AscCommon.ST_TLAnimateEffectTransition.none: sVal = "none"; break; } return sVal; } function From_XML_TLAnimateEffectTransition(sVal) { var nVal = undefined; switch(sVal) { case "in": nVal = AscCommon.ST_TLAnimateEffectTransition.in; break; case "out": nVal = AscCommon.ST_TLAnimateEffectTransition.out; break; case "none": nVal = AscCommon.ST_TLAnimateEffectTransition.none; break; } return nVal; } //----------------------------------------------------------export---------------------------------------------------- window['AscCommon'] = window['AscCommon'] || {}; window['AscFormat'] = window['AscFormat'] || {}; })(window);