public static string GetHash(IEmbeddedPage page, bool bIsSetTarget = false) { if (page.IsOpened == false) { page.Open(); } SerialPage target = new SerialPage(page); string md5 = CreaetMD5Hash(target, bIsSetTarget); if (bIsSetTarget == true) { page.MD5 = md5; } return(md5); }
public async void GenerateHTMLEventHandler(object data) { PreviewParameter para = data as PreviewParameter; string filePath = para.SavePath; // Make textbox update source data. ISelectionService _selectionService = ServiceLocator.Current.GetInstance <SelectionServiceProvider>(); IPagePropertyData page = _selectionService.GetCurrentPage(); if (para.IsPreviewCurrentPage == true && page == null) { return; } if (page != null && page.EditorCanvas != null) { page.EditorCanvas.Focus(); } if ((_currentPageGID != Guid.Empty)) { return; } IDocumentService doc = ServiceLocator.Current.GetInstance <IDocumentService>(); if (string.IsNullOrEmpty(filePath)) { return; } if (doc == null || doc.Document == null) { return; } //Get Image save path; //doc.Document.GeneratorConfigurationSet.DefaultHtmlConfiguration.OutputFolder = @"D:\pic"; _outputFolder = filePath; string imgPath = filePath + @"\images\"; try { if (Directory.Exists(imgPath) == false) { Directory.CreateDirectory(imgPath); } _htmlService.ImagesStreamManager.WorkingDirectory = imgPath; } catch (Exception ex) { MessageBox.Show(GlobalData.FindResource("Error_Generate_Html") + ex.Message); return; } if (para.IsPreviewCurrentPage) { Guid currentPageGuid = page.PageGID; if (page.ActivePage is IEmbeddedPage) { IEmbeddedPage embeddedPage = page.ActivePage as IEmbeddedPage; currentPageGuid = embeddedPage.ParentWidget.ParentPage.Guid; } doc.Document.GeneratorConfigurationSet.DefaultHtmlConfiguration.CurrentPage = currentPageGuid; } else { doc.Document.GeneratorConfigurationSet.DefaultHtmlConfiguration.CurrentPage = Guid.Empty; } Debug.WriteLine("----->HtmlGen----->Start All Convert"); //Async operation to Generate Html and open it await AsyncGenerateHtml(para.IsBrowerOpen); // Reset image working directory. _htmlService.ImagesStreamManager.WorkingDirectory = string.Empty; }
protected override void RunInternal() { // Create a new document. Program.Service.NewDocument(DocumentType.Standard); IDocument document = Program.Service.Document; // Create a new page. IDocumentPage page1 = document.CreatePage("Page 1"); ITreeNode node1 = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); node1.AttachedObject = page1; page1.Open(); // Get the page view for base adaptive view. IPageView baseView1 = page1.PageViews[document.AdaptiveViewSet.Base.Guid]; IDynamicPanel dynamicPanel = baseView1.CreateWidget(WidgetType.DynamicPanel) as IDynamicPanel; dynamicPanel.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); dynamicPanel.WidgetStyle.Height = 198; dynamicPanel.WidgetStyle.Width = 152; dynamicPanel.IsAutomatic = true; // Set start panel page as the first created page. dynamicPanel.StartPanelStatePage = dynamicPanel.CreatePanelStatePage("Panel 1"); IEmbeddedPage embeddedPage2 = dynamicPanel.CreatePanelStatePage("Panel 2"); dynamicPanel.CreatePanelStatePage("Panel 3"); int imageFileName = 1; foreach (IPage statePage in dynamicPanel.PanelStatePages) { statePage.Open(); // Open page to edit. // Get the base view of state page. IPageView stateBaseView = statePage.PageViews[document.AdaptiveViewSet.Base.Guid]; IImage statePageImage = stateBaseView.CreateWidget(WidgetType.Image) as IImage; statePageImage.Annotation.SetTextValue("CreatedTime", DateTime.Now.ToString()); statePageImage.WidgetStyle.Height = 198; statePageImage.WidgetStyle.Width = 152; string statePageImageFile = Path.Combine(Program.WORKING_IMAGES_DIRECTORY, "HangGame", imageFileName + ".png"); if (File.Exists(statePageImageFile)) { using (FileStream fileStream = new FileStream(statePageImageFile, FileMode.Open, FileAccess.Read)) { MemoryStream imageStream = new MemoryStream(); fileStream.CopyTo(imageStream); statePageImage.ImageStream = imageStream; } } statePage.Close(); // Close Page to release resources. imageFileName++; } // Duplicate the page1. IDocumentPage page2 = document.DuplicatePage(page1.Guid); ITreeNode node2 = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); node2.AttachedObject = page2; dynamicPanel.DeletePanelStatePage(embeddedPage2.Guid); page1.Close(); // Duplicate the page2. IDocumentPage page3 = document.DuplicatePage(page1.Guid); ITreeNode node3 = document.DocumentSettings.LayoutSetting.PageTree.AddChild(TreeNodeType.Page); node3.AttachedObject = page3; // Save document to pn file. string fileName = Path.Combine(Program.WORKING_DIRECTORY, _caseName + ".pn"); Program.Service.Save(fileName); // CLose document. Program.Service.Close(); }