diff --git a/src/GroupDocs.Editor.MVC.csproj b/src/GroupDocs.Editor.MVC.csproj index 9faaa6c..475d000 100644 --- a/src/GroupDocs.Editor.MVC.csproj +++ b/src/GroupDocs.Editor.MVC.csproj @@ -47,8 +47,8 @@ ..\packages\Castle.Core.4.3.1\lib\net45\Castle.Core.dll - - ..\packages\GroupDocs.Editor.20.8.0\lib\net20\GroupDocs.Editor.dll + + ..\packages\GroupDocs.Editor.20.10.0\lib\net40\GroupDocs.Editor.dll True diff --git a/src/Products/Common/Entity/Web/PageDescriptionEntity.cs b/src/Products/Common/Entity/Web/PageDescriptionEntity.cs index 1cd4b47..010f2e9 100644 --- a/src/Products/Common/Entity/Web/PageDescriptionEntity.cs +++ b/src/Products/Common/Entity/Web/PageDescriptionEntity.cs @@ -16,6 +16,11 @@ public class PageDescriptionEntity [JsonProperty] private string data; + /// + /// Sheet name. + /// + public string sheetName { get; set; } + public void SetData(string data) { this.data = data; diff --git a/src/Products/Editor/Controllers/EditorApiController.cs b/src/Products/Editor/Controllers/EditorApiController.cs index c279edd..c1cd0c3 100644 --- a/src/Products/Editor/Controllers/EditorApiController.cs +++ b/src/Products/Editor/Controllers/EditorApiController.cs @@ -286,6 +286,11 @@ public HttpResponseMessage SaveFile(EditDocumentRequest postedData) saveOptions.EnablePagination = true; } + if (saveOptions is SpreadsheetSaveOptions) + { + saveOptions.WorksheetNumber = postedData.getPageNumber() + 1; + } + using (FileStream outputStream = File.Create(tempPath)) { editor.Save(htmlContentDoc, outputStream, saveOptions); @@ -648,18 +653,17 @@ private LoadDocumentEntity LoadDocument(string guid, string password) for (var i = 0; i < documentInfo.PageCount; i++) { // Let's create an intermediate EditableDocument from the i tab - SpreadsheetEditOptions sheetEditOptions = new SpreadsheetEditOptions(); - sheetEditOptions.WorksheetIndex = i; // index is 0-based - EditableDocument tabBeforeEdit = editor.Edit(sheetEditOptions); + editOptions.WorksheetIndex = i; // index is 0-based + EditableDocument sheetBeforeEdit = editor.Edit(editOptions); // Get document as a single base64-encoded string, where all resources (images, fonts, etc) // are embedded inside this string along with main textual content - string allEmbeddedInsideString = tabBeforeEdit.GetEmbeddedHtml(); + string allEmbeddedInsideString = sheetBeforeEdit.GetEmbeddedHtml(); PageDescriptionEntity page = new PageDescriptionEntity(); page.SetData(allEmbeddedInsideString); page.number = i + 1; loadDocumentEntity.SetPages(page); - tabBeforeEdit.Dispose(); + sheetBeforeEdit.Dispose(); } } else if (editOptions is PresentationEditOptions) diff --git a/src/Products/Editor/Entity/Web/Request/EditDocumentRequest.cs b/src/Products/Editor/Entity/Web/Request/EditDocumentRequest.cs index 9db0b7f..e8ac7bc 100644 --- a/src/Products/Editor/Entity/Web/Request/EditDocumentRequest.cs +++ b/src/Products/Editor/Entity/Web/Request/EditDocumentRequest.cs @@ -15,6 +15,9 @@ public class EditDocumentRequest : LoadDocumentEntity [JsonProperty] private String password; + [JsonProperty] + private int pageNumber; + public String getContent() { return content; @@ -34,5 +37,15 @@ public void setPassword(String password) { this.password = password; } + + public int getPageNumber() + { + return pageNumber; + } + + public void setPageNumber(int pageNumber) + { + this.pageNumber = pageNumber; + } } } \ No newline at end of file diff --git a/src/packages.config b/src/packages.config index 8708efd..450fa7c 100644 --- a/src/packages.config +++ b/src/packages.config @@ -2,7 +2,7 @@ - +