├── .gitattributes ├── .gitignore ├── LICENSE ├── README.md ├── Source ├── Deps │ ├── README.md │ └── x_autogen2 │ │ ├── PixelFarm.Android.One │ │ ├── PixelFarm.Android.One.csproj │ │ ├── PixelFarm │ │ │ └── Typography │ │ │ │ └── Typography.OpenFont │ │ │ │ └── ExtensionAttribute.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── Resources │ │ │ ├── AboutResources.txt │ │ │ ├── Resource.Designer.cs │ │ │ └── Values │ │ │ └── Strings.xml │ │ ├── PixelFarm.Drawing.One │ │ └── PixelFarm.Drawing.One.csproj │ │ ├── PixelFarm.HtmlRender.Windows.One │ │ └── PixelFarm.HtmlRender.Windows.One.csproj │ │ ├── PixelFarm.MiniAgg.One │ │ └── PixelFarm.MiniAgg.One.csproj │ │ ├── PixelFarm.One.HtmlRenderer │ │ └── PixelFarm.One.HtmlRenderer.csproj │ │ └── PixelFarm.iOS.One │ │ ├── PixelFarm.iOS.One.csproj │ │ ├── PixelFarm │ │ └── Typography │ │ │ └── Typography.OpenFont │ │ │ └── ExtensionAttribute.cs │ │ └── Properties │ │ └── AssemblyInfo.cs ├── Deps_HtmlKit │ ├── .gitattributes │ ├── .gitignore │ ├── CodeGenerator │ │ ├── CodeGenerator.csproj │ │ ├── HtmlEntities.json │ │ ├── Program.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── packages.config │ ├── HtmlBuilder │ │ ├── HtmlBuilder.csproj │ │ └── Properties │ │ │ └── AssemblyInfo.cs │ ├── HtmlKit.nuspec │ ├── HtmlKit.sln │ ├── HtmlKit │ │ ├── HtmlAttribute.cs │ │ ├── HtmlAttributeCollection.cs │ │ ├── HtmlAttributeId.cs │ │ ├── HtmlEntityDecoder.cs │ │ ├── HtmlEntityDecoder.g.cs │ │ ├── HtmlKit.csproj │ │ ├── HtmlNamespace.cs │ │ ├── HtmlTagId.cs │ │ ├── HtmlToken.cs │ │ ├── HtmlTokenKind.cs │ │ ├── HtmlTokenizer.cs │ │ ├── HtmlTokenizerState.cs │ │ ├── HtmlUtils.cs │ │ ├── HtmlWriter.cs │ │ ├── HtmlWriterState.cs │ │ ├── ICharArray.cs │ │ └── Properties │ │ │ └── AssemblyInfo.cs │ ├── HtmlKit_Net20 │ │ ├── ForNet20.cs │ │ ├── HtmlKit_Net20.csproj │ │ └── Properties │ │ │ └── AssemblyInfo.cs │ ├── License.md │ ├── NUnit-2.6.4 │ │ ├── Logo.ico │ │ ├── license.txt │ │ └── nunit_bin │ │ │ ├── NUnitFitTests.html │ │ │ ├── NUnitTests.config │ │ │ ├── NUnitTests.nunit │ │ │ ├── agent.conf │ │ │ ├── agent.log.conf │ │ │ ├── framework │ │ │ ├── nunit.framework.dll │ │ │ ├── nunit.framework.xml │ │ │ ├── nunit.mocks.dll │ │ │ └── pnunit.framework.dll │ │ │ ├── launcher.log.conf │ │ │ ├── lib │ │ │ ├── NSubstitute.dll │ │ │ ├── NSubstitute.xml │ │ │ ├── Rhino.Mocks.dll │ │ │ ├── Rhino.Mocks.xml │ │ │ ├── log4net.dll │ │ │ ├── nunit-console-runner.dll │ │ │ ├── nunit-gui-runner.dll │ │ │ ├── nunit.core.dll │ │ │ ├── nunit.core.interfaces.dll │ │ │ ├── nunit.uiexception.dll │ │ │ ├── nunit.uikit.dll │ │ │ └── nunit.util.dll │ │ │ ├── nunit-agent-x86.exe │ │ │ ├── nunit-agent-x86.exe.config │ │ │ ├── nunit-agent.exe │ │ │ ├── nunit-agent.exe.config │ │ │ ├── nunit-console-x86.exe │ │ │ ├── nunit-console-x86.exe.config │ │ │ ├── nunit-console.exe │ │ │ ├── nunit-console.exe.config │ │ │ ├── nunit-editor.exe │ │ │ ├── nunit-x86.exe │ │ │ ├── nunit-x86.exe.config │ │ │ ├── nunit.exe │ │ │ ├── nunit.exe.config │ │ │ ├── nunit.framework.dll │ │ │ ├── pnunit-agent.exe │ │ │ ├── pnunit-agent.exe.config │ │ │ ├── pnunit-launcher.exe │ │ │ ├── pnunit-launcher.exe.config │ │ │ ├── pnunit.framework.dll │ │ │ ├── pnunit.tests.dll │ │ │ ├── runpnunit.bat │ │ │ ├── test.conf │ │ │ └── tests │ │ │ ├── mock-assembly.dll │ │ │ ├── nonamespace-assembly.dll │ │ │ ├── nunit-console.tests.dll │ │ │ ├── nunit-editor.tests.dll │ │ │ ├── nunit-gui.tests.dll │ │ │ ├── nunit.core.tests.dll │ │ │ ├── nunit.core.tests.net45.dll │ │ │ ├── nunit.framework.dll │ │ │ ├── nunit.framework.tests.dll │ │ │ ├── nunit.framework.tests.net45.dll │ │ │ ├── nunit.mocks.tests.dll │ │ │ ├── nunit.uiexception.tests.dll │ │ │ ├── nunit.uikit.tests.dll │ │ │ ├── nunit.util.tests.dll │ │ │ ├── test-assembly-net45.dll │ │ │ ├── test-assembly.dll │ │ │ └── test-utilities.dll │ ├── README.md │ ├── TestWithWinForms │ │ ├── Form1.Designer.cs │ │ ├── Form1.cs │ │ ├── Form1.resx │ │ ├── Program.cs │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ ├── Resources.Designer.cs │ │ │ ├── Resources.resx │ │ │ ├── Settings.Designer.cs │ │ │ └── Settings.settings │ │ ├── TestData │ │ │ └── html │ │ │ │ ├── blocked.html │ │ │ │ ├── blocked.tokens │ │ │ │ ├── test.html │ │ │ │ ├── test.tokens │ │ │ │ ├── xamarin3.html │ │ │ │ ├── xamarin3.tokens │ │ │ │ └── xamarin3.xhtml │ │ ├── TestWithWinForms.csproj │ │ └── packages.config │ ├── UnitTests │ │ ├── HtmlAttributeTests.cs │ │ ├── HtmlEntityDecoderTests.cs │ │ ├── HtmlTokenizerTests.cs │ │ ├── HtmlUtilsTests.cs │ │ ├── HtmlWriterTests.cs │ │ ├── TestData │ │ │ └── html │ │ │ │ ├── HtmlEntities.json │ │ │ │ ├── blocked.html │ │ │ │ ├── blocked.out.html │ │ │ │ ├── blocked.tokens │ │ │ │ ├── cdata.html │ │ │ │ ├── cdata.out.html │ │ │ │ ├── cdata.tokens │ │ │ │ ├── papercut-4.4.html │ │ │ │ ├── papercut-4.4.out.html │ │ │ │ ├── papercut-4.4.tokens │ │ │ │ ├── papercut.html │ │ │ │ ├── papercut.out.html │ │ │ │ ├── papercut.tokens │ │ │ │ ├── plaintext.html │ │ │ │ ├── plaintext.out.html │ │ │ │ ├── plaintext.tokens │ │ │ │ ├── script-data.html │ │ │ │ ├── script-data.out.html │ │ │ │ ├── script-data.tokens │ │ │ │ ├── test.html │ │ │ │ ├── test.out.html │ │ │ │ ├── test.tokens │ │ │ │ ├── xamarin3.html │ │ │ │ ├── xamarin3.out.html │ │ │ │ ├── xamarin3.tokens │ │ │ │ └── xamarin3.xhtml │ │ ├── UnitTests.csproj │ │ ├── packages.config │ │ ├── submit.ps1 │ │ └── test.ps1 │ ├── UnitTests_Net20 │ │ ├── HtmlTokenizerTests.cs │ │ ├── TestData │ │ │ └── html │ │ │ │ ├── blocked.html │ │ │ │ ├── blocked.tokens │ │ │ │ ├── test.html │ │ │ │ ├── test.tokens │ │ │ │ ├── xamarin3.html │ │ │ │ ├── xamarin3.tokens │ │ │ │ └── xamarin3.xhtml │ │ ├── UnitTests_Net20.csproj │ │ └── packages.config │ ├── appveyor.yml │ └── cov-build.bat ├── Deps_JsEngine │ └── README.md ├── HtmlRenderer.One.csproj ├── HtmlRenderer.sln ├── LayoutFarm.CssBase │ ├── CssColor.cs │ ├── CssConstants.cs │ ├── CssKnownColor.cs │ ├── CssLength.cs │ ├── CssProps.cs │ ├── CssUnitOrNames.cs │ ├── LayoutFarm.CssBase.csproj │ ├── MapAttribute.cs │ └── Properties │ │ └── AssemblyInfo.cs ├── LayoutFarm.HtmlComposer │ ├── 0_Start │ │ └── ComposerConfig.cs │ ├── 1_Composers │ │ ├── 1_Builder │ │ │ ├── BulletNumberFormatter.cs │ │ │ ├── CustomCssBoxGenerator.cs │ │ │ ├── HtmlContentTextSplitter.cs │ │ │ ├── HtmlHost.cs │ │ │ ├── RenderTreeBuilder.cs │ │ │ ├── RunListHelper.cs │ │ │ ├── SpecialBoxCreator.cs │ │ │ ├── TopDownActiveCssTemplate.cs │ │ │ └── WebDocumentParser.cs │ │ ├── 2_Css │ │ │ ├── CssColorConv.cs │ │ │ ├── CssDefaults.cs │ │ │ └── SpecSetter.cs │ │ ├── 3_Scriptable │ │ │ └── EaseScriptElement.cs │ │ ├── 4_Diagnostic │ │ │ ├── ArgCheckNotNullAttribute.cs │ │ │ ├── HtmlGenerationStyle.cs │ │ │ └── HtmlRenderErrorType.cs │ │ ├── 5_RenderBoxes │ │ │ ├── HtmlRenderBox.cs │ │ │ ├── MyHtmlContainer.cs │ │ │ ├── RenderElementWrapperCssBox.cs │ │ │ └── TopWindowRenderBox.cs │ │ └── 6_SpecialCssBoxes │ │ │ ├── CssBoxScrollView.cs │ │ │ └── CssIsolateBox.cs │ ├── 4_WebDom │ │ ├── CustomCssBoxGen.cs │ │ ├── HtmlDocument.cs │ │ ├── HtmlDocumentFragment.cs │ │ ├── HtmlElements.cs │ │ ├── HtmlShadowDocument.cs │ │ ├── HtmlSharedDocument.cs │ │ ├── HtmlTextNode.cs │ │ └── SpecialHtmlElements.cs │ ├── 5_RenderBasedUI │ │ ├── CustomRenderElements.cs │ │ └── RenderElementExtension.cs │ ├── 6_Svg │ │ ├── SvgCreator.cs │ │ ├── SvgRootEventPortal.cs │ │ └── SvgRootEventPortal_IEventPortal.cs │ ├── 7_Events │ │ ├── HtmlInputEventAdapter.cs │ │ └── RenderElementEventPortal.cs │ ├── LayoutFarm.HtmlComposer.csproj │ └── Properties │ │ └── AssemblyInfo.cs ├── LayoutFarm.HtmlRenderer │ ├── 1_Css │ │ ├── BoxSpec.cs │ │ ├── BoxSpecNode.cs │ │ ├── BoxSpec_CopyAndVersioning.cs │ │ └── CssFeatures.cs │ ├── 2_Boxes │ │ ├── 0_Root │ │ │ ├── CssBoxConstConfig.cs │ │ │ ├── HtmlContainer.cs │ │ │ └── IRootGraphics.cs │ │ ├── 1_CoreBox │ │ │ ├── BoxVisitor.cs │ │ │ ├── CssBox.cs │ │ │ ├── CssBoxCollection.cs │ │ │ ├── CssBox_BoxFlags.cs │ │ │ ├── CssBox_Fields.cs │ │ │ ├── CssBox_Flex.cs │ │ │ ├── CssBox_OtherActualValues.cs │ │ │ ├── CssBox_Paint.cs │ │ │ ├── CssBox_Positions.cs │ │ │ ├── CssBox_Spec_ReadOnly.cs │ │ │ ├── CssBox_Spec_Snap.cs │ │ │ ├── CssBox_Unsafe.cs │ │ │ ├── CssLineBox.cs │ │ │ ├── CssSideAndOrientation.cs │ │ │ ├── CssValueParser.cs │ │ │ └── SelectionSegment.cs │ │ ├── 2_Runs │ │ │ ├── CssBlockRun.cs │ │ │ ├── CssImageRun.cs │ │ │ ├── CssRun.cs │ │ │ └── CssTextRun.cs │ │ ├── 3_Render │ │ │ ├── BackgroundImagePaintHelper.cs │ │ │ ├── BorderPaintHelper.cs │ │ │ ├── CssBoxDecorator.cs │ │ │ ├── MultiLayerStack.cs │ │ │ └── PaintVisitor.cs │ │ └── 4_HitAndSelections │ │ │ ├── BoxHitChain.cs │ │ │ └── SelectionRange.cs │ ├── 3_Boxes_Layout │ │ ├── 0_General │ │ │ ├── BoxHitUtils.cs │ │ │ ├── CssBoxLayoutExtension.cs │ │ │ ├── CssLayoutEngine.FloatFormattingContext.cs │ │ │ ├── CssLayoutEngine.cs │ │ │ ├── CssTableLayoutEngine.CssVerticalCellSpacingBox.cs │ │ │ ├── CssTableLayoutEngine.TableColumns.cs │ │ │ ├── CssTableLayoutEngine.cs │ │ │ └── LayoutVisitor.cs │ │ └── 1_Flex │ │ │ └── FlexContainer.cs │ ├── 4_Svg │ │ ├── 05_SvgDoms │ │ │ ├── CssBoxSvgRoot.cs │ │ │ └── SvgElements.cs │ │ ├── 07_Coords_Transforms │ │ │ ├── SvgMatrix.cs │ │ │ ├── SvgRotate.cs │ │ │ ├── SvgScale.cs │ │ │ ├── SvgShear.cs │ │ │ ├── SvgSkew.cs │ │ │ ├── SvgTransform.cs │ │ │ └── SvgTranslate.cs │ │ ├── 08_Paths │ │ │ ├── SvgPath.cs │ │ │ ├── SvgPathDataParser.cs │ │ │ └── SvgPathSegments.cs │ │ ├── 09_BasicShapes │ │ │ ├── SvgImage.cs │ │ │ ├── SvgImageBinder.cs │ │ │ ├── SvgSpec.cs │ │ │ └── SvgVisualElements.cs │ │ ├── 16_Interactivity │ │ │ └── SvgHitChain.cs │ │ └── license.txt │ ├── 5_Boxes_SpecialBoxes │ │ ├── CssBoxFrame.cs │ │ ├── CssBoxHr.cs │ │ ├── CssBoxImage.cs │ │ ├── CssBoxListItem.cs │ │ └── CssFloatContainerBox.cs │ ├── 6_Diagnostics │ │ └── dbug.cs │ ├── LayoutFarm.HtmlRenderer.csproj │ ├── Platform │ │ ├── FontDefaultConfig.cs │ │ └── RenderUtils.cs │ └── Properties │ │ └── AssemblyInfo.cs ├── LayoutFarm.WebDom │ ├── 0_WebDom.Parser │ │ ├── CssParser.cs │ │ ├── CssParserHelper.cs │ │ ├── CssValueParser.cs │ │ ├── DeprecatedAttribute.cs │ │ ├── HtmlKitParser.cs │ │ ├── HtmlParser.cs │ │ ├── HtmlUtils.cs │ │ ├── MyHtmlParser.cs │ │ └── TextSource.cs │ ├── 1_Css │ │ ├── CssActiveSheet.cs │ │ ├── CssAttributeSelector.cs │ │ ├── CssCodeValueExpressions.cs │ │ ├── CssDocMembers.cs │ │ ├── CssDocument.cs │ │ ├── CssElementSelectors.cs │ │ ├── CssPropertyDeclaration.cs │ │ ├── UserMapUtil.cs │ │ ├── ValueMaps.cs │ │ └── WellknownCssPropertyName.cs │ ├── 2_WebDom │ │ ├── DomElement.cs │ │ ├── DomElement_EventListener.cs │ │ ├── DomElement_OnEvents.cs │ │ ├── DomNodes.cs │ │ ├── ElementChangeKind.cs │ │ ├── StringTable.cs │ │ ├── WebDocument.cs │ │ └── WellknownElementName.cs │ ├── 3_WebDom_Interfaces │ │ └── HtmlInterfaces.cs │ ├── 4_WebDom.Impl │ │ ├── DomTextWriter.cs │ │ ├── HtmlDocument.cs │ │ ├── HtmlDocumentFragment.cs │ │ ├── HtmlDocument_Scripting.cs │ │ ├── HtmlElements.Scripting.cs │ │ ├── HtmlElements.cs │ │ ├── HtmlPredefinedNames.cs │ │ ├── HtmlShadowDocument.cs │ │ ├── HtmlTextNode.cs │ │ └── SpecialHtmlElements.cs │ ├── 5_HtmlKit │ │ ├── HtmlAttributeId.cs │ │ └── HtmlTagId.cs │ ├── IScriptable │ │ └── JsScriptAttributes.cs │ ├── LayoutFarm.WebDom.csproj │ └── Properties │ │ └── AssemblyInfo.cs ├── LayoutFarm.WebLexer │ ├── LayoutFarm.WebLexer.csproj │ ├── MyLexer │ │ ├── CssLexer.cs │ │ ├── HtmlLexer.cs │ │ ├── MyHtmlLexer.cs │ │ ├── MyHtmlLexer_dbug.cs │ │ ├── TextSnapshot.cs │ │ └── dbugLexerReport.cs │ └── Properties │ │ └── AssemblyInfo.cs ├── LayoutFarm.YourHtmlWidget │ ├── 5.1_HtmlWidgetBase │ │ ├── 0_WidgetBase.cs │ │ ├── Button.cs │ │ ├── CheckBox.cs │ │ ├── ComboBox.cs │ │ ├── HingeBox.cs │ │ ├── HtmlDomExtension.cs │ │ ├── ListView.cs │ │ ├── Menu.cs │ │ ├── ScrollBar.cs │ │ ├── TabPageBox.cs │ │ └── TreeView.cs │ ├── 5_HtmlBox │ │ ├── HtmlBox.cs │ │ ├── HtmlContainerHelper.cs │ │ ├── HtmlHostContentManager.cs │ │ └── MyCustomCssBoxGenerator.cs │ ├── LayoutFarm.YourHtmlWidget.csproj │ └── Properties │ │ └── AssemblyInfo.cs ├── MainDev_Merge.sln ├── Test0_PresentationDevHelper_New │ ├── Dev │ │ ├── DemoBase.cs │ │ ├── FormCanvasHelper.cs │ │ ├── FormDemoList.Designer.cs │ │ ├── FormDemoList.cs │ │ ├── FormDemoList.resx │ │ ├── FormLayoutInspector.Designer.cs │ │ ├── FormLayoutInspector.cs │ │ ├── FormLayoutInspector.resx │ │ ├── FormPrint.Designer.cs │ │ ├── FormPrint.cs │ │ ├── FormPrint.resx │ │ └── SampleViewport.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Test0_PresentationDevHelper_New.csproj │ └── app.config ├── Test1_CoreVisual_New │ ├── Form1.Designer.cs │ ├── Form1.cs │ ├── Form1.resx │ ├── Program.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Test1_CoreVisual_New.csproj │ └── app.config ├── Test2_WebDomParsers │ ├── Form1.Designer.cs │ ├── Form1.cs │ ├── Form1.resx │ ├── Program.cs │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ ├── SampleData │ │ ├── 0_basic │ │ │ └── test01.html │ │ └── 1_large_and_errs │ │ │ ├── syntax.html │ │ │ └── test01.html │ └── Test2_WebDomParsers.csproj ├── Test3_MixHtml.One │ ├── Demo │ │ ├── arrow_blank.png │ │ ├── arrow_close.png │ │ ├── arrow_open.png │ │ └── favorites32.png │ ├── ExampleFolderConfig.cs │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ ├── Test3_MixHtml.One.csproj │ ├── app.config │ └── images │ │ ├── 01.jpg │ │ ├── 02.jpg │ │ ├── 03.jpg │ │ ├── 04.jpg │ │ ├── 05.jpg │ │ ├── images.txt │ │ └── sample01.png ├── Test3_MixHtml │ ├── Demo │ │ ├── arrow_blank.png │ │ ├── arrow_close.png │ │ ├── arrow_open.png │ │ └── favorites32.png │ ├── Demo4 │ │ ├── 4.1_UIHtmlBox.cs │ │ ├── 4.2_MixHtml.cs │ │ ├── 4.3.1_UIHtmlBoxWithResReq.cs │ │ ├── 4.3.2_UIHtmlBox_ContentMx.cs │ │ ├── 4.4_CssLeanBox.cs │ │ ├── 4.5_LightHtmlBox.cs │ │ └── 4.6_DynamicDom1.cs │ ├── Demo5 │ │ ├── 5.0_HtmlDemoBase.cs │ │ ├── 5.1_Demo_Hinges.cs │ │ ├── 5.2_Demo_MultipleBoxes2.cs │ │ ├── 5.3_Demo_TabPage.cs │ │ ├── 5.7_Demo_ListView.cs │ │ ├── 5.8_Demo_Hinge.cs │ │ └── 5.9_Demo_TreeView.cs │ ├── Demo7 │ │ ├── 7.1_DemoDzBoard.cs │ │ ├── AppModule.cs │ │ ├── CompoModule.cs │ │ ├── DesignBoardActions.cs │ │ ├── DesignBoardController.cs │ │ ├── DesignBoardModule.cs │ │ ├── DzBoxSerializer.cs │ │ ├── GraphicShapeElements.cs │ │ └── MenuBoardModule.cs │ ├── ExampleFolderConfig.cs │ ├── HtmlHostCreatorHelper.cs │ ├── ManagedTextBreaker.cs │ ├── NativeTextBreaker.cs │ ├── Program.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── SampleViewportExtension.cs │ ├── Test3_MixHtml.csproj │ ├── app.config │ └── images │ │ ├── 01.jpg │ │ ├── 02.jpg │ │ ├── 03.jpg │ │ ├── 04.jpg │ │ ├── 05.jpg │ │ ├── images.txt │ │ └── sample01.png ├── Test5_Ease │ ├── AppModule │ │ └── SampleAppModule.cs │ ├── EaseComponents │ │ ├── MyJsTypeDefBuilder.cs │ │ └── MyWebConsole.cs │ ├── Form1.Designer.cs │ ├── Form1.cs │ ├── Form1.resx │ ├── Program.cs │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ └── Test5_Ease.csproj ├── Test6_WinNeutral │ ├── GLFWProgram.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Test6_WinNeutral.csproj ├── Test7_Win │ ├── GLFWProgram.cs │ ├── Helper │ │ ├── EaseDomElement.cs │ │ ├── EaseHost.cs │ │ ├── EaseViewport.cs │ │ ├── FormCanvasHelper.cs │ │ ├── HtmlHostCreatorHelper.cs │ │ ├── SampleViewport.cs │ │ ├── SampleViewportExtension.cs │ │ └── UserHtmlWorkspace.cs │ ├── Helper2 │ │ ├── EaseDomElement.cs │ │ ├── EaseHost.cs │ │ ├── EaseViewport.cs │ │ └── UserHtmlWorkspace.cs │ ├── LionDataStore.cs │ ├── MyNativeRGBA32BitsImage.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── SampleBase.cs │ ├── SpriteShape.cs │ ├── T108_LionFill.cs │ └── Test7_Win.csproj ├── Test8_HtmlRenderer.Demo │ ├── DemoForm.Designer.cs │ ├── DemoForm.cs │ ├── DemoForm.resx │ ├── DemoList │ │ ├── Demo01_CreateHtmlDomStyle1.cs │ │ ├── Demo02_CreateHtmlDomStyle2.cs │ │ ├── Demo03_DynamicContent1.cs │ │ ├── Demo04_DynamicContent2.cs │ │ ├── Demo05_Dynamic_BoxSpec.cs │ │ └── DemoBase.cs │ ├── DevForm.Designer.cs │ ├── DevForm.cs │ ├── DevForm.resx │ ├── HtmlDomExtension │ │ └── HtmlDomExtension.cs │ ├── HtmlRenderer.WinFormControls │ │ ├── HtmlPanel.cs │ │ └── HtmlScrollEventArgs.cs │ ├── Program.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resource.Designer.cs │ ├── Resource.resx │ ├── Resources │ │ ├── CustomFont.ttf │ │ ├── Event16.png │ │ ├── Window.gif │ │ ├── comment16.gif │ │ ├── delete16.gif │ │ ├── delete32.gif │ │ ├── exclamation32.png │ │ ├── favorites32.png │ │ ├── font32.png │ │ ├── formula32.png │ │ ├── html.ico │ │ ├── html32.png │ │ ├── image32.png │ │ ├── method16.gif │ │ ├── paly32.png │ │ ├── property16.gif │ │ ├── property32.png │ │ ├── refreshdocument32.png │ │ └── web_pallete.gif │ ├── Samples │ │ ├── 0_acid1_dev │ │ │ ├── 00.htm │ │ │ ├── 000.1.html │ │ │ ├── 000.2.html │ │ │ ├── 001.html │ │ │ ├── 002.1.html │ │ │ ├── 002.html │ │ │ ├── 003.1.html │ │ │ ├── 003.10.html │ │ │ ├── 003.11.html │ │ │ ├── 003.12.html │ │ │ ├── 003.13.1.html │ │ │ ├── 003.13.html │ │ │ ├── 003.2.html │ │ │ ├── 003.3.html │ │ │ ├── 003.4.html │ │ │ ├── 003.5.1.html │ │ │ ├── 003.5.2.html │ │ │ ├── 003.5.html │ │ │ ├── 003.6.html │ │ │ ├── 003.7.html │ │ │ ├── 003.8.html │ │ │ ├── 003.9.html │ │ │ ├── 003.html │ │ │ └── x00.ACID 1.htm │ │ ├── 1_acid2_dev │ │ │ └── acid2.html │ │ ├── Basic │ │ │ ├── 01_table1.htm │ │ │ ├── 02_text.htm │ │ │ ├── 03_text2.htm │ │ │ ├── 04_text3.htm │ │ │ ├── 05_add.htm │ │ │ ├── 06_txt.htm │ │ │ ├── 07_1_ab2.htm │ │ │ ├── 07_ab.htm │ │ │ ├── 08_link1.htm │ │ │ ├── 08_link2.htm │ │ │ ├── 09_text.htm │ │ │ ├── 10_td.htm │ │ │ ├── 11_lines.htm │ │ │ ├── 12_table_image.htm │ │ │ ├── 13_text.htm │ │ │ ├── 14_table2.htm │ │ │ ├── 15_table3.htm │ │ │ ├── 16_div.htm │ │ │ ├── 17_inlineblock.htm │ │ │ ├── 18_inlineblock2.htm │ │ │ ├── 19_inlineblock3.htm │ │ │ ├── 20_inlineblock4.htm │ │ │ ├── 21_canvas.htm │ │ │ ├── 22_abs_pos.htm │ │ │ ├── 23_relative_pos.htm │ │ │ ├── 24_fixed_pos.htm │ │ │ ├── 25_center_pos.htm │ │ │ ├── 26_abs_pos2.htm │ │ │ ├── 30_padding.htm │ │ │ ├── 32_overflow_content.htm │ │ │ ├── 33_box_shadow1.htm │ │ │ ├── 40_div.htm │ │ │ ├── 50_input.htm │ │ │ ├── 51_htmlAttr.html │ │ │ ├── 52_box2.html │ │ │ ├── 53_box_sizing.html │ │ │ ├── 54_float1.htm │ │ │ ├── 55_float2.htm │ │ │ ├── 56_float3.htm │ │ │ ├── 57_float4.htm │ │ │ ├── 58_box_sizing2.html │ │ │ ├── html32.png │ │ │ └── stylesheet1.css │ │ ├── ClassicSamples │ │ │ ├── 00.Intro.htm │ │ │ ├── 00.Intro2.htm │ │ │ ├── 01.History.htm │ │ │ ├── 02.Text.htm │ │ │ ├── 03.Tables.htm │ │ │ ├── 04.Links.htm │ │ │ ├── 05.Images.htm │ │ │ ├── 06.Embeded video.htm │ │ │ ├── 07.Additional features.htm │ │ │ ├── 08.Tooltip.htm │ │ │ ├── 09.Using the library.htm │ │ │ ├── 10.HtmlPanel.htm │ │ │ ├── 11.HtmlLabel.htm │ │ │ ├── 12.HtmlToolTip.htm │ │ │ ├── 13.HtmlRender.htm │ │ │ ├── 14.HtmlContainer.htm │ │ │ ├── 20.About.htm │ │ │ ├── 21.IntroOld.htm │ │ │ ├── 22TextOld.htm │ │ │ ├── html32.png │ │ │ ├── stylesheet1.css │ │ │ ├── x00.Intro.htm │ │ │ ├── x00.Intro2.htm │ │ │ ├── x00.Intro5.htm │ │ │ ├── x02.Text3.htm │ │ │ ├── x02.Text4.htm │ │ │ ├── x03.Tables.htm │ │ │ ├── x03.Tables2.htm │ │ │ └── x03.Tables3.htm │ │ ├── Experiment │ │ │ ├── 1_simple_flex.htm │ │ │ ├── 2_flex2.htm │ │ │ ├── 3_ext_flex.htm │ │ │ ├── 4_custom_element.htm │ │ │ └── 5_template.html │ │ ├── PerfSamples │ │ │ └── 1.Big table.htm │ │ ├── SvgSamples │ │ │ ├── svg01.htm │ │ │ ├── svg02.htm │ │ │ ├── svg03_rounds.htm │ │ │ ├── svg04_lines.htm │ │ │ ├── svg05_gradient.htm │ │ │ ├── svg06_path.htm │ │ │ ├── svg07_path2.htm │ │ │ ├── svg08_image.htm │ │ │ ├── svg09_path3.htm │ │ │ ├── svg10_arc.htm │ │ │ ├── svg11_arc.htm │ │ │ ├── svg12_arc.htm │ │ │ ├── svg13_curve.htm │ │ │ ├── svg14_.svg │ │ │ └── svg15_curve.htm │ │ ├── TestSamples │ │ │ ├── 01.Header.htm │ │ │ ├── 02.Line break.htm │ │ │ ├── 03.Paragraphs.htm │ │ │ ├── 04.Blockquotes.htm │ │ │ ├── 05.Images.htm │ │ │ ├── 06.External Image.htm │ │ │ ├── 07.Background Image.htm │ │ │ ├── 08.White-space.htm │ │ │ ├── 09.Inline.htm │ │ │ ├── 10.BlockInInline.htm │ │ │ ├── 11.LineHeight.htm │ │ │ ├── 12.Text.htm │ │ │ ├── 13.Tables.htm │ │ │ ├── 14.Iframes.htm │ │ │ ├── 15.MaxWidth.htm │ │ │ ├── 16.Borders.htm │ │ │ ├── 17.Languages.htm │ │ │ ├── 18.Anchors.htm │ │ │ ├── 19.Many images.htm │ │ │ ├── 20.Fonts decorations.htm │ │ │ ├── 21.Bullets.htm │ │ │ ├── 22.RTL.htm │ │ │ └── 30.Misc.htm │ │ └── WordSplit │ │ │ ├── 1.th_TH.htm │ │ │ ├── 2.Symbols.htm │ │ │ └── 3.Symbols.htm │ ├── Test.cs │ └── Test8_HtmlRenderer.Demo.csproj ├── Tools │ ├── BuildMergeProject │ │ ├── BuildMergeProject.csproj │ │ ├── Form1.Designer.cs │ │ ├── Form1.cs │ │ ├── Form1.resx │ │ ├── MergeProjects.cs │ │ ├── Program.cs │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ ├── Resources.Designer.cs │ │ │ ├── Resources.resx │ │ │ ├── Settings.Designer.cs │ │ │ └── Settings.settings │ │ ├── SolutionListViewController.cs │ │ └── app.config │ └── MergeProjectTool │ │ ├── FormBuildMergeProject.Designer.cs │ │ ├── FormBuildMergeProject.cs │ │ ├── FormBuildMergeProject.resx │ │ ├── MergeProjectTool.csproj │ │ ├── MergeProjects.cs │ │ ├── MergeProjectsToolBox.Designer.cs │ │ ├── MergeProjectsToolBox.cs │ │ ├── MergeProjectsToolBox.resx │ │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ │ └── SolutionListViewController.cs ├── YourImplementation │ ├── Bootstrap │ │ ├── BootStrapOpenGLES2.cs │ │ └── BootStrapWinGdi.cs │ ├── DrawingGLFontPrinter.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Windows │ │ ├── InstallFontsProviderWin32.cs │ │ └── WindowFontLoader.cs │ └── YourImplementation.csproj ├── x_autogen │ └── HtmlRenderer.One │ │ └── HtmlRenderer.One.csproj └── x_merge_projects │ └── HtmlRenderer.One │ └── HtmlRenderer.One.csproj └── html.ico /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | *.sln merge=union 7 | *.csproj merge=union 8 | *.vbproj merge=union 9 | *.fsproj merge=union 10 | *.dbproj merge=union 11 | 12 | # Standard to msysgit 13 | *.doc diff=astextplain 14 | *.DOC diff=astextplain 15 | *.docx diff=astextplain 16 | *.DOCX diff=astextplain 17 | *.dot diff=astextplain 18 | *.DOT diff=astextplain 19 | *.pdf diff=astextplain 20 | *.PDF diff=astextplain 21 | *.rtf diff=astextplain 22 | *.RTF diff=astextplain 23 | -------------------------------------------------------------------------------- /Source/Deps/README.md: -------------------------------------------------------------------------------- 1 | This folder should contains a PixelFarm source. 2 | 3 | That is auto-generated lib. 4 | 5 | like these pictures... 6 | 7 | ![autogen_1](https://user-images.githubusercontent.com/7447159/33240916-233a956e-d2f1-11e7-9a2a-dbad64485f4a.png) 8 | 9 | _pic 1: auto gen source from PixelFarm project_ 10 | 11 | --- 12 | 13 | ![autogen_2](https://user-images.githubusercontent.com/7447159/33240915-22fc039e-d2f1-11e7-8965-af227c18fed8.png) 14 | 15 | _pic 2: detail_ 16 | 17 | 18 | 19 | You can build the PixelFarm by your own. 20 | 21 | 22 | (from https://github.com/PaintLab/PixelFarm/commit/718fa24bc6cf575560ccf68b7e34c768dde7c007) 23 | 24 | 25 | or build from src snap shot at https://github.com/prepare/kneadium_release_tmp 26 | 27 | (download ... PixelFarm_for_HtmlRenderer.7z and extract to the folder as the pictures above) 28 | -------------------------------------------------------------------------------- /Source/Deps/x_autogen2/PixelFarm.Android.One/PixelFarm/Typography/Typography.OpenFont/ExtensionAttribute.cs: -------------------------------------------------------------------------------- 1 | namespace System.Runtime.CompilerServices 2 | { 3 | public partial class ExtensionAttribute : Attribute 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Source/Deps/x_autogen2/PixelFarm.Android.One/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("PixelFarm.Android.One")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("Microsoft")] 13 | [assembly: AssemblyProduct("PixelFarm.Android.One")] 14 | [assembly: AssemblyCopyright("Copyright © Microsoft 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /Source/Deps/x_autogen2/PixelFarm.Android.One/Resources/Values/Strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello World, Click Me! 4 | $projectname$ 5 | 6 | -------------------------------------------------------------------------------- /Source/Deps/x_autogen2/PixelFarm.iOS.One/PixelFarm/Typography/Typography.OpenFont/ExtensionAttribute.cs: -------------------------------------------------------------------------------- 1 | namespace System.Runtime.CompilerServices 2 | { 3 | public partial class ExtensionAttribute : Attribute 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/.gitattributes: -------------------------------------------------------------------------------- 1 | *.csproj text 2 | *.nuspec text 3 | *.sln eol=crlf 4 | *.html text 5 | *.txt text 6 | *.yml text 7 | *.cs text 8 | *.md text 9 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/CodeGenerator/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/HtmlBuilder/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("HtmlBuilder")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("HtmlBuilder")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("3d561b6c-c738-4a33-a392-5630ca9a0aa7")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/HtmlKit.nuspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HtmlKit 5 | 1.0.0 6 | HtmlKit 7 | Jeffrey Stedfast 8 | Jeffrey Stedfast 9 | http://opensource.org/licenses/MIT 10 | http://github.com/jstedfast/HtmlKit 11 | false 12 | HtmlKit is a cross-platform .NET framework for parsing HTML. 13 | HtmlKit is a cross-platform .NET framework for parsing HTML. 14 | 15 | 16 | Xamarin Inc. 17 | en-US 18 | html parser 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/HtmlKit_Net20/ForNet20.cs: -------------------------------------------------------------------------------- 1 |  2 | #if NET20 3 | namespace System.Runtime.CompilerServices 4 | { 5 | public partial class ExtensionAttribute : Attribute { } 6 | } 7 | #endif -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/License.md: -------------------------------------------------------------------------------- 1 | ## License Information 2 | 3 | HtmlKit is Copyright (C) 2015 Xamarin Inc. and is licensed under the MIT license: 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/Logo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/Logo.ico -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/license.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/license.txt -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/NUnitTests.nunit: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/agent.conf: -------------------------------------------------------------------------------- 1 | 2 | 8080 3 | . 4 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/agent.log.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/framework/nunit.framework.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/framework/nunit.framework.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/framework/nunit.mocks.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/framework/nunit.mocks.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/framework/pnunit.framework.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/framework/pnunit.framework.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/launcher.log.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/NSubstitute.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/NSubstitute.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/Rhino.Mocks.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/Rhino.Mocks.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/log4net.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/log4net.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit-console-runner.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit-console-runner.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit-gui-runner.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit-gui-runner.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.core.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.core.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.core.interfaces.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.core.interfaces.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.uiexception.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.uiexception.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.uikit.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.uikit.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.util.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/lib/nunit.util.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-agent-x86.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-agent-x86.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-agent-x86.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-agent.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-agent.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-agent.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-console-x86.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-console-x86.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-console-x86.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-console.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-console.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-console.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-editor.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-editor.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-x86.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-x86.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit-x86.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit.framework.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/nunit.framework.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit-agent.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit-agent.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit-launcher.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit-launcher.exe -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit.framework.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit.framework.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/pnunit.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/runpnunit.bat: -------------------------------------------------------------------------------- 1 | start pnunit-agent 8080 . 2 | start pnunit-agent 8081 . 3 | pnunit-launcher test.conf 4 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/mock-assembly.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/mock-assembly.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nonamespace-assembly.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nonamespace-assembly.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit-console.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit-console.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit-editor.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit-editor.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit-gui.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit-gui.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.core.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.core.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.core.tests.net45.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.core.tests.net45.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.framework.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.framework.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.framework.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.framework.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.framework.tests.net45.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.framework.tests.net45.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.mocks.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.mocks.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.uiexception.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.uiexception.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.uikit.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.uikit.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.util.tests.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/nunit.util.tests.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/test-assembly-net45.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/test-assembly-net45.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/test-assembly.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/test-assembly.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/test-utilities.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/NUnit-2.6.4/nunit_bin/tests/test-utilities.dll -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/TestWithWinForms/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Windows.Forms; 4 | namespace TestWithWinForms 5 | { 6 | static class Program 7 | { 8 | /// 9 | /// The main entry point for the application. 10 | /// 11 | [STAThread] 12 | static void Main() 13 | { 14 | Application.EnableVisualStyles(); 15 | Application.SetCompatibleTextRenderingDefault(false); 16 | Application.Run(new Form1()); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/TestWithWinForms/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace TestWithWinForms.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/TestWithWinForms/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/TestWithWinForms/TestData/html/test.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/TestWithWinForms/TestData/html/test.html -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/TestWithWinForms/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/cdata.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CDATA Test Cases 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/cdata.out.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CDATA Test Cases 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/cdata.tokens: -------------------------------------------------------------------------------- 1 | Comment: ?xml version="1.0" encoding="utf-8"? 2 | Data: \n 3 | DocType: 4 | Data: \n 5 | Tag: 6 | Data: \n 7 | Tag: 8 | Data: \n 9 | Tag: 10 | Data: CDATA Test Cases 11 | Tag: 12 | Data: \n 13 | Tag: 14 | Data: \n 15 | Tag: 16 | Data: \n 17 | Comment: - 18 | Data: \n 19 | Comment: 20 | Data: \n 21 | CData: this is some CDATA text 22 | Data: \n 23 | Tag: 24 | Data: \n 25 | Tag: 26 | Data: \n 27 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/plaintext.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | This is some plain text and should not need to have <'s and >'s encoded as entities within. 4 | 5 | Tags and end tags such as <b>BOLD!</b> </body> should have no effect in here. 6 | 7 | The <plaintext> tag is very much like the Hotel California. 8 | 9 | "Relax", said the nightman. "We are programmed to receive. You can checkout anytime you like, but you can never leave." 10 | 11 | Once you enter a </plaintext> tag, you can never leave. 12 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/plaintext.out.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <plaintext>This is some plain text and should not need to have <'s and >'s encoded as entities within. 4 | 5 | Tags and end tags such as <b>BOLD!</b> </body> should have no effect in here. 6 | 7 | The <plaintext> tag is very much like the Hotel California. 8 | 9 | "Relax", said the nightman. "We are programmed to receive. You can checkout anytime you like, but you can never leave." 10 | 11 | Once you enter a </plaintext> tag, you can never leave. 12 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/plaintext.tokens: -------------------------------------------------------------------------------- 1 | Tag: <html> 2 | Data: \n 3 | Tag: <body> 4 | Data: \n 5 | Tag: <plaintext> 6 | Data: This is some plain text and should not need to have <'s and >'s encoded as entities within.\n\n Tags and end tags such as <b>BOLD!</b> </body> should have no effect in here.\n\n The <plaintext> tag is very much like the Hotel California.\n\n "Relax", said the nightman. "We are programmed to receive. You can checkout anytime you like, but you can never leave."\n\n Once you enter a </plaintext> tag, you can never leave.\n 7 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/script-data.html: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | <title>Script Data Samples</title> 5 | <script></head></script> 6 | <script><!----</head>--></script/> 7 | <script><!--<!--escaped!-->--></script > 8 | <script><!--<--escaped!</script/> 9 | <script><!--<--<script>double escaped!</script></script> 10 | <script><!--<--<script>double escaped!-</script></script> 11 | <script><!--<--<script>double escaped!--<</script></script> 12 | </head> 13 | <body> 14 | <br/> 15 | </body> 16 | </html> 17 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/script-data.out.html: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | <title>Script Data Samples</title> 5 | <script></head></script> 6 | <script><!----</head>--></script/> 7 | <script><!--<!--escaped!-->--></script> 8 | <script><!--<--escaped!</script/> 9 | <script><!--<--<script>double escaped!</script></script> 10 | <script><!--<--<script>double escaped!-</script></script> 11 | <script><!--<--<script>double escaped!--<</script></script> 12 | </head> 13 | <body> 14 | <br/> 15 | </body> 16 | </html> 17 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/script-data.tokens: -------------------------------------------------------------------------------- 1 | DocType: <!DOCTYPE HTML> 2 | Data: \n 3 | Tag: <html> 4 | Data: \n 5 | Tag: <head> 6 | Data: \n 7 | Tag: <title> 8 | Data: Script Data Samples 9 | Tag: </title> 10 | Data: \n 11 | Tag: <script> 12 | ScriptData: </head> 13 | Tag: </script> 14 | Data: \n 15 | Tag: <script> 16 | ScriptData: <!---- 17 | ScriptData: </head>--> 18 | Tag: </script/> 19 | Data: \n 20 | Tag: <script> 21 | ScriptData: <!-- 22 | ScriptData: <!--escaped!-->--> 23 | Tag: </script> 24 | Data: \n 25 | Tag: <script> 26 | ScriptData: <!-- 27 | ScriptData: <--escaped! 28 | Tag: </script/> 29 | Data: \n 30 | Tag: <script> 31 | ScriptData: <!-- 32 | ScriptData: <-- 33 | ScriptData: <script>double escaped!</script> 34 | Tag: </script> 35 | Data: \n 36 | Tag: <script> 37 | ScriptData: <!-- 38 | ScriptData: <-- 39 | ScriptData: <script>double escaped!-</script> 40 | Tag: </script> 41 | Data: \n 42 | Tag: <script> 43 | ScriptData: <!-- 44 | ScriptData: <-- 45 | ScriptData: <script>double escaped!--<</script> 46 | Tag: </script> 47 | Data: \n 48 | Tag: </head> 49 | Data: \n 50 | Tag: <body> 51 | Data: \n 52 | Tag: <br/> 53 | Data: \n 54 | Tag: </body> 55 | Data: \n 56 | Tag: </html> 57 | Data: \n 58 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/TestData/html/test.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/UnitTests/TestData/html/test.html -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/packages.config: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="utf-8"?> 2 | <packages> 3 | <package id="Newtonsoft.Json" version="7.0.1" targetFramework="net45" /> 4 | <package id="NUnit" version="2.6.4" targetFramework="net45" /> 5 | </packages> -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/submit.ps1: -------------------------------------------------------------------------------- 1 | $revision = git rev-parse HEAD 2 | $branch = git rev-parse --abbrev-ref HEAD 3 | $commitAuthor = git show --quiet --format="%aN" $revision 4 | $commitEmail = git show --quiet --format="%aE" $revision 5 | $commitMessage = git show --quiet --format="%s" $revision 6 | 7 | #nuget install coveralls.net 8 | 9 | Set-PSDebug -Trace 2 10 | ..\packages\coveralls.net.0.5.0\csmacnz.Coveralls.exe ` 11 | --opencover -i opencover.xml ` 12 | --repoToken $Env:COVERALLS_REPO_TOKEN ` 13 | --commitId $revision ` 14 | --commitBranch $branch ` 15 | --commitAuthor $commitAuthor ` 16 | --commitEmail $commitEmail ` 17 | --commitMessage $commitMessage ` 18 | --useRelativePaths ` 19 | --basePath .\bin\Debug 20 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests/test.ps1: -------------------------------------------------------------------------------- 1 | $testDir = ".\bin\Debug\" 2 | $tests = @("$testdir\UnitTests.dll") 3 | 4 | # nuget install OpenCover 5 | # nuget install NUnit.Runners 6 | 7 | foreach ($elem in $tests) { 8 | ..\packages\OpenCover.4.5.3723\OpenCover.Console.exe ` 9 | -register:user ` 10 | -target:..\packages\NUnit.Runners.2.6.4\tools\nunit-console.exe ` 11 | "-targetargs: ""$elem"" /framework:net-4.5 /noshadow" ` 12 | "-filter:+[HtmlKit]* -[UnitTests]* -[CodeGenerator]*" ` 13 | -output:opencover.xml ` 14 | } 15 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests_Net20/TestData/html/test.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Deps_HtmlKit/UnitTests_Net20/TestData/html/test.html -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/UnitTests_Net20/packages.config: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="utf-8"?> 2 | <packages> 3 | <package id="NUnit" version="2.6.3" targetFramework="net45" /> 4 | </packages> -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/appveyor.yml: -------------------------------------------------------------------------------- 1 | version: 1.0.0.{build} 2 | 3 | configuration: Debug 4 | platform: Any CPU 5 | 6 | install: 7 | - cmd: nuget restore 8 | 9 | environment: 10 | COVERALLS_REPO_TOKEN: 11 | secure: CtNjB3/AUTKeFrXmEpR71u6zUBqp2z1/bESLf1LRoZvIQhRnuJEqc5GXELWVHKMI 12 | 13 | build: 14 | project: HtmlKit.sln 15 | verbosity: minimal 16 | 17 | test_script: 18 | - ps: >- 19 | $testDir = ".\UnitTests\bin\Debug\" 20 | 21 | $tests = @("$testdir\UnitTests.dll") 22 | 23 | foreach ($elem in $tests) { 24 | .\packages\OpenCover.4.5.3723\OpenCover.Console.exe ` 25 | -register:user ` 26 | -target:.\packages\NUnit.Runners.2.6.4\tools\nunit-console.exe ` 27 | "-targetargs: ""$elem"" /framework:net-4.5 /noshadow" ` 28 | "-filter:+[HtmlKit]* -[UnitTests]* -[CodeGenerator]*" ` 29 | -output:opencover.xml ` 30 | } 31 | 32 | $revision = git rev-parse HEAD 33 | 34 | $branch = git rev-parse --abbrev-ref HEAD 35 | 36 | $commitAuthor = git show --quiet --format="%aN" $revision 37 | 38 | $commitEmail = git show --quiet --format="%aE" $revision 39 | 40 | $commitMessage = git show --quiet --format="%s" $revision 41 | 42 | .\packages\coveralls.net.0.5.0\csmacnz.Coveralls.exe ` 43 | --opencover -i opencover.xml ` 44 | --repoToken $Env:COVERALLS_REPO_TOKEN ` 45 | --commitId $revision ` 46 | --commitBranch $branch ` 47 | --commitAuthor $commitAuthor ` 48 | --commitEmail $commitEmail ` 49 | --commitMessage $commitMessage ` 50 | --useRelativePaths ` 51 | --basePath .\UnitTests\bin\Debug 52 | -------------------------------------------------------------------------------- /Source/Deps_HtmlKit/cov-build.bat: -------------------------------------------------------------------------------- 1 | ..\cov-analysis\bin\cov-build.exe --dir cov-int "%WinDir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" /t:Rebuild HtmlKit.sln 2 | -------------------------------------------------------------------------------- /Source/Deps_JsEngine/README.md: -------------------------------------------------------------------------------- 1 | This folder should contains an Espresso lib. 2 | 3 | -------------------------------------------------------------------------------- /Source/LayoutFarm.CssBase/MapAttribute.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System; 4 | namespace LayoutFarm 5 | { 6 | public class MapAttribute : Attribute 7 | { 8 | public MapAttribute(string name) 9 | { 10 | this.Name = name; 11 | } 12 | 13 | public string Name 14 | { 15 | get; 16 | private set; 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/0_Start/ComposerConfig.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using PixelFarm.Drawing; 4 | using PixelFarm.Drawing.Fonts; 5 | namespace LayoutFarm.Composers 6 | { 7 | 8 | //temp 9 | static class MyFontServices 10 | { 11 | 12 | static ITextService s_textService; 13 | public static PixelFarm.Drawing.ITextService GetTextService() 14 | { 15 | if (s_textService == null) 16 | { 17 | s_textService = PixelFarm.Drawing.WinGdi.WinGdiPlusPlatform.GetIFonts(); 18 | } 19 | return s_textService; 20 | } 21 | 22 | } 23 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/1_Composers/1_Builder/CustomCssBoxGenerator.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using LayoutFarm.Css; 4 | using LayoutFarm.HtmlBoxes; 5 | using LayoutFarm.UI; 6 | namespace LayoutFarm.Composers 7 | { 8 | public abstract class CustomCssBoxGenerator 9 | { 10 | public abstract CssBox CreateCssBox(LayoutFarm.WebDom.DomElement tag, 11 | CssBox parentBox, BoxSpec spec, HtmlHost host); 12 | public static CssBox CreateWrapper(object owner, RenderElement renderElement, BoxSpec spec, bool isInline) 13 | { 14 | var portalEvent = owner as IEventPortal; 15 | if (portalEvent == null) 16 | { 17 | portalEvent = new RenderElementEventPortal(renderElement); 18 | } 19 | 20 | if (isInline) 21 | { 22 | return new LayoutFarm.HtmlBoxes.InternalWrappers.WrapperInlineCssBox(portalEvent, spec, renderElement.Root, renderElement); 23 | } 24 | else 25 | { 26 | return new LayoutFarm.HtmlBoxes.InternalWrappers.WrapperBlockCssBox(portalEvent, spec, renderElement); 27 | } 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/1_Composers/1_Builder/RunListHelper.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System.Collections.Generic; 4 | using LayoutFarm.Css; 5 | using LayoutFarm.Composers; 6 | namespace LayoutFarm.HtmlBoxes 7 | { 8 | static class RunListHelper 9 | { 10 | public static void AddRunList(CssBox toBox, BoxSpec spec, HtmlTextNode textnode) 11 | { 12 | AddRunList(toBox, spec, textnode.InternalGetRuns(), textnode.GetOriginalBuffer(), textnode.IsWhiteSpace); 13 | } 14 | //--------------------------------------------------------------------------------------- 15 | public static void AddRunList(CssBox toBox, 16 | BoxSpec spec, 17 | List<CssRun> runlist, 18 | char[] buffer, 19 | bool isAllWhitespace) 20 | { 21 | CssBox.UnsafeSetTextBuffer(toBox, buffer); 22 | if (runlist != null) 23 | { 24 | for (int i = runlist.Count - 1; i >= 0; --i) 25 | { 26 | runlist[i].SetOwner(toBox); 27 | } 28 | } 29 | CssBox.UnsafeSetContentRuns(toBox, runlist, isAllWhitespace); 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/1_Composers/2_Css/CssColorConv.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm 4 | { 5 | public static class CssColorConv 6 | { 7 | public static PixelFarm.Drawing.Color ConvertToActualColor(LayoutFarm.WebDom.CssColor color) 8 | { 9 | return new PixelFarm.Drawing.Color( 10 | color.A, 11 | color.R, 12 | color.G, 13 | color.B); 14 | } 15 | public static LayoutFarm.WebDom.CssColor ConvertToCssColor(PixelFarm.Drawing.Color color) 16 | { 17 | return new LayoutFarm.WebDom.CssColor( 18 | color.A, 19 | color.R, 20 | color.G, 21 | color.B); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/1_Composers/4_Diagnostic/ArgCheckNotNullAttribute.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System; 4 | namespace LayoutFarm.HtmlDiagnostics 5 | { 6 | [AttributeUsage(AttributeTargets.Parameter)] 7 | public class ArgNotNullAttribute : Attribute 8 | { 9 | public ArgNotNullAttribute() 10 | { 11 | } 12 | public ArgNotNullAttribute(string desc) 13 | { 14 | this.Description = desc; 15 | } 16 | public string Description { get; private set; } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/1_Composers/4_Diagnostic/HtmlGenerationStyle.cs: -------------------------------------------------------------------------------- 1 | //BSD 2014, 2 | //ArthurHub , Jose Manuel Menendez Poo 3 | 4 | // "Therefore those skilled at the unorthodox 5 | // are infinite as heaven and earth, 6 | // inexhaustible as the great rivers. 7 | // When they come to an end, 8 | // they begin again, 9 | // like the days and months; 10 | // they die and are reborn, 11 | // like the four seasons." 12 | // 13 | // - Sun Tsu, 14 | // "The Art of War" 15 | 16 | namespace LayoutFarm.HtmlDiagnostics 17 | { 18 | /// <summary> 19 | /// Controls the way styles are generated when html is generated. 20 | /// </summary> 21 | public enum HtmlGenerationStyle 22 | { 23 | /// <summary> 24 | /// styles are not generated at all 25 | /// </summary> 26 | None = 0, 27 | /// <summary> 28 | /// style are inserted in style attribute for each html tag 29 | /// </summary> 30 | Inline = 1, 31 | /// <summary> 32 | /// style section is generated in the head of the html 33 | /// </summary> 34 | InHeader = 2 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/1_Composers/4_Diagnostic/HtmlRenderErrorType.cs: -------------------------------------------------------------------------------- 1 | //BSD 2014, 2 | //ArthurHub , Jose Manuel Menendez Poo 3 | 4 | // "Therefore those skilled at the unorthodox 5 | // are infinite as heaven and earth, 6 | // inexhaustible as the great rivers. 7 | // When they come to an end, 8 | // they begin again, 9 | // like the days and months; 10 | // they die and are reborn, 11 | // like the four seasons." 12 | // 13 | // - Sun Tsu, 14 | // "The Art of War" 15 | 16 | namespace LayoutFarm.HtmlDiagnostics 17 | { 18 | /// <summary> 19 | /// Enum of possible error types that can be repported. 20 | /// </summary> 21 | public enum HtmlRenderErrorType 22 | { 23 | General = 0, 24 | CssParsing = 1, 25 | HtmlParsing = 2, 26 | Image = 3, 27 | Paint = 4, 28 | Layout = 5, 29 | KeyboardMouse = 6, 30 | Iframe = 7, 31 | ContextMenu = 8, 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/1_Composers/5_RenderBoxes/TopWindowRenderBox.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using PixelFarm.Drawing; 4 | namespace LayoutFarm 5 | { 6 | public class TopWindowRenderBox : RenderBoxBase 7 | { 8 | public TopWindowRenderBox(RootGraphic rootGfx, int width, int height) 9 | : base(rootGfx, width, height) 10 | { 11 | this.IsTopWindow = true; 12 | this.HasSpecificSize = true; 13 | } 14 | protected override void DrawBoxContent(DrawBoard canvas, Rectangle updateArea) 15 | { 16 | canvas.FillRectangle(Color.White, 0, 0, this.Width, this.Height); 17 | this.DrawDefaultLayer(canvas, ref updateArea); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/4_WebDom/HtmlDocumentFragment.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.Composers 4 | { 5 | class HtmlDocumentFragment : HtmlDocument 6 | { 7 | HtmlDocument primaryHtmlDoc; 8 | internal HtmlDocumentFragment(HtmlDocument primaryHtmlDoc) 9 | : base(primaryHtmlDoc.UniqueStringTable) 10 | { 11 | //share string table with primary html doc 12 | this.primaryHtmlDoc = primaryHtmlDoc; 13 | } 14 | public override bool IsDocFragment 15 | { 16 | get 17 | { 18 | return true; 19 | } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/4_WebDom/HtmlShadowDocument.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.Composers 4 | { 5 | class HtmlShadowDocument : HtmlDocument 6 | { 7 | //this is not document fragment *** 8 | HtmlDocument primaryHtmlDoc; 9 | internal HtmlShadowDocument(HtmlDocument primaryHtmlDoc) 10 | : base(primaryHtmlDoc.UniqueStringTable) 11 | { 12 | //share string table with primary html doc 13 | this.primaryHtmlDoc = primaryHtmlDoc; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/4_WebDom/HtmlSharedDocument.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.Composers 4 | { 5 | class HtmlSharedDocument : HtmlDocument 6 | { 7 | //this is not document fragment *** 8 | HtmlDocument primaryHtmlDoc; 9 | internal HtmlSharedDocument(HtmlDocument primaryHtmlDoc) 10 | : base(primaryHtmlDoc.UniqueStringTable) 11 | { 12 | //share string table with primary html doc 13 | this.primaryHtmlDoc = primaryHtmlDoc; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlComposer/5_RenderBasedUI/RenderElementExtension.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | using LayoutFarm.UI; 3 | namespace LayoutFarm.InternalUI 4 | { 5 | static class RenderElementExtension 6 | { 7 | public static void AddChild(this RenderElement renderBox, UIElement ui) 8 | { 9 | renderBox.AddChild(ui.GetPrimaryRenderElement(renderBox.Root)); 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/1_Css/BoxSpecNode.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | namespace LayoutFarm.Css 3 | { 4 | public class BoxSpecNode 5 | { 6 | BoxSpecNode parentNode; 7 | public BoxSpecNode ParentNode 8 | { 9 | get { return this.parentNode; } 10 | set { this.parentNode = value; } 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/2_Boxes/0_Root/CssBoxConstConfig.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using PixelFarm.Drawing; 4 | namespace LayoutFarm.HtmlBoxes 5 | { 6 | static class CssBoxConstConfig 7 | { 8 | internal const int BOX_MAX_RIGHT = 90999; 9 | internal const int BOX_MAX_BOTTOM = 90999; 10 | internal const float TABLE_MAX_WIDTH = 9999f; 11 | internal const float TABLE_VERT_OFFSET_THESHOLD = 0.01f; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/2_Boxes/0_Root/IRootGraphics.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace PixelFarm.Drawing 4 | { 5 | public interface IRootGraphics { } 6 | } 7 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/2_Boxes/1_CoreBox/CssBox_Flex.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2015-2017, WinterDev 2 | 3 | namespace LayoutFarm.HtmlBoxes 4 | { 5 | partial class CssBox 6 | { 7 | bool hasFlexContext; 8 | internal bool HasFlexContext 9 | { 10 | get { return this.hasFlexContext; } 11 | set { this.hasFlexContext = value; } 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/2_Boxes/1_CoreBox/CssSideAndOrientation.cs: -------------------------------------------------------------------------------- 1 | //BSD 2014, 2 | //ArthurHub , Jose Manuel Menendez Poo 3 | 4 | // "Therefore those skilled at the unorthodox 5 | // are infinite as heaven and earth, 6 | // inexhaustible as the great rivers. 7 | // When they come to an end, 8 | // they begin again, 9 | // like the days and months; 10 | // they die and are reborn, 11 | // like the four seasons." 12 | // 13 | // - Sun Tsu, 14 | // "The Art of War" 15 | 16 | namespace LayoutFarm.HtmlBoxes 17 | { 18 | enum CssSide 19 | { 20 | Top, 21 | Right, 22 | Bottom, 23 | Left 24 | } 25 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/2_Boxes/2_Runs/CssBlockRun.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.HtmlBoxes 4 | { 5 | public class CssBlockRun : CssRun 6 | { 7 | CssBox contentBlockBox; 8 | public CssBlockRun(CssBox contentBlockBox) 9 | : base(CssRunKind.BlockRun) 10 | { 11 | this.contentBlockBox = contentBlockBox; 12 | } 13 | public CssBox ContentBox 14 | { 15 | get { return this.contentBlockBox; } 16 | } 17 | public override void WriteContent(System.Text.StringBuilder stbuilder, int start, int length) 18 | { 19 | throw new System.NotImplementedException(); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/2_Boxes/3_Render/CssBoxDecorator.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using PixelFarm.Drawing; 4 | namespace LayoutFarm.HtmlBoxes 5 | { 6 | class CssBoxDecorator 7 | { 8 | #if DEBUG 9 | static int totaldbugId = 0; 10 | public readonly int dbugId = totaldbugId++; 11 | #endif 12 | public CssBoxDecorator() 13 | { 14 | } 15 | public Color Color { get; set; } 16 | public int HBoxShadowOffset { get; set; } 17 | public int VBoxShadowOffset { get; set; } 18 | public int BlurRadius { get; set; } 19 | public int SpreadDistance { get; set; } 20 | public void Paint(CssBox box, PaintVisitor p) 21 | { 22 | p.FillRectangle(this.Color, 23 | box.LocalX + this.HBoxShadowOffset, 24 | box.LocalY + this.VBoxShadowOffset, 25 | box.VisualWidth, 26 | box.VisualHeight); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/4_Svg/07_Coords_Transforms/SvgScale.cs: -------------------------------------------------------------------------------- 1 | //from github.com/vvvv/svg 2 | //license : Microsoft Public License (MS-PL) 3 | 4 | namespace LayoutFarm.Svg.Transforms 5 | { 6 | public sealed class SvgScale : SvgTransform 7 | { 8 | public float X 9 | { 10 | get; 11 | set; 12 | } 13 | 14 | public float Y 15 | { 16 | get; 17 | set; 18 | } 19 | 20 | //public override Matrix Matrix 21 | //{ 22 | // get 23 | // { 24 | // Matrix matrix = CurrentGraphicsPlatform.CreateMatrix(); 25 | // matrix.Scale(this.X, this.Y); 26 | // return matrix; 27 | // } 28 | //} 29 | 30 | //public override string WriteToString() 31 | //{ 32 | // return string.Format(CultureInfo.InvariantCulture, "scale({0}, {1})", this.X, this.Y); 33 | //} 34 | 35 | public SvgScale(float x) : this(x, x) { } 36 | 37 | public SvgScale(float x, float y) 38 | { 39 | this.X = x; 40 | this.Y = y; 41 | } 42 | 43 | //public override object Clone() 44 | //{ 45 | // return new SvgScale(this.X, this.Y); 46 | //} 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/4_Svg/07_Coords_Transforms/SvgShear.cs: -------------------------------------------------------------------------------- 1 | //from github.com/vvvv/svg 2 | //license : Microsoft Public License (MS-PL) 3 | 4 | namespace LayoutFarm.Svg.Transforms 5 | { 6 | /// <summary> 7 | /// The class which applies the specified shear vector to this Matrix. 8 | /// </summary> 9 | public sealed class SvgShear : SvgTransform 10 | { 11 | public float X 12 | { 13 | get; 14 | set; 15 | } 16 | 17 | public float Y 18 | { 19 | get; 20 | set; 21 | } 22 | 23 | //public override Matrix Matrix 24 | //{ 25 | // get 26 | // { 27 | // Matrix matrix = CurrentGraphicsPlatform.CreateMatrix(); 28 | // matrix.Shear(this.X, this.Y); 29 | // return matrix; 30 | // } 31 | //} 32 | 33 | //public override string WriteToString() 34 | //{ 35 | // return string.Format(CultureInfo.InvariantCulture, "shear({0}, {1})", this.X, this.Y); 36 | //} 37 | 38 | public SvgShear(float x) : this(x, x) { } 39 | 40 | public SvgShear(float x, float y) 41 | { 42 | this.X = x; 43 | this.Y = y; 44 | } 45 | 46 | //public override object Clone() 47 | //{ 48 | // return new SvgShear(this.X, this.Y); 49 | //} 50 | } 51 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/4_Svg/07_Coords_Transforms/SvgSkew.cs: -------------------------------------------------------------------------------- 1 | //from github.com/vvvv/svg 2 | //license : Microsoft Public License (MS-PL) 3 | 4 | 5 | namespace LayoutFarm.Svg.Transforms 6 | { 7 | /// <summary> 8 | /// The class which applies the specified skew vector to this Matrix. 9 | /// </summary> 10 | public sealed class SvgSkew : SvgTransform 11 | { 12 | public float AngleX { get; set; } 13 | public float AngleY { get; set; } 14 | //public override Matrix Matrix 15 | //{ 16 | // get 17 | // { 18 | // var matrix = CurrentGraphicsPlatform.CreateMatrix(); 19 | // matrix.Shear( 20 | // (float)Math.Tan(AngleX/180*Math.PI), 21 | // (float)Math.Tan(AngleY/180*Math.PI)); 22 | // return matrix; 23 | // } 24 | //} 25 | 26 | //public override string WriteToString() 27 | //{ 28 | // return string.Format(CultureInfo.InvariantCulture, "skew({0}, {1})", this.AngleX, this.AngleY); 29 | //} 30 | 31 | public SvgSkew(float x, float y) 32 | { 33 | AngleX = x; 34 | AngleY = y; 35 | } 36 | 37 | //public override object Clone() 38 | //{ 39 | // return new SvgSkew(this.AngleX, this.AngleY); 40 | //} 41 | } 42 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/4_Svg/07_Coords_Transforms/SvgTranslate.cs: -------------------------------------------------------------------------------- 1 | //from github.com/vvvv/svg 2 | //license : Microsoft Public License (MS-PL) 3 | 4 | namespace LayoutFarm.Svg.Transforms 5 | { 6 | public sealed class SvgTranslate : SvgTransform 7 | { 8 | public float X 9 | { 10 | get; 11 | set; 12 | } 13 | 14 | public float Y 15 | { 16 | get; 17 | set; 18 | } 19 | 20 | //public override Matrix Matrix 21 | //{ 22 | // get 23 | // { 24 | // Matrix matrix = CurrentGraphicsPlatform.CreateMatrix(); 25 | // matrix.Translate(this.X, this.Y); 26 | // return matrix; 27 | // } 28 | //} 29 | 30 | //public override string WriteToString() 31 | //{ 32 | // return string.Format(CultureInfo.InvariantCulture, "translate({0}, {1})", this.X, this.Y); 33 | //} 34 | 35 | public SvgTranslate(float x, float y) 36 | { 37 | this.X = x; 38 | this.Y = y; 39 | } 40 | 41 | public SvgTranslate(float x) 42 | : this(x, 0.0f) 43 | { 44 | } 45 | 46 | //public override object Clone() 47 | //{ 48 | // return new SvgTranslate(this.x, this.y); 49 | //} 50 | } 51 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/4_Svg/09_BasicShapes/SvgImageBinder.cs: -------------------------------------------------------------------------------- 1 | //MS-PL, 2 | //Apache2, 2014-2017, WinterDev 3 | 4 | namespace LayoutFarm.Svg 5 | { 6 | class SvgImageBinder : ImageBinder 7 | { 8 | public SvgImageBinder(string imgsrc) 9 | : base(imgsrc) 10 | { 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/4_Svg/license.txt: -------------------------------------------------------------------------------- 1 | //WinterDev 2014 2 | //some parts derived from github.com/vvvv/svg 3 | //license : Microsoft Public License (MS-PL) 4 | 5 | 6 | -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/5_Boxes_SpecialBoxes/CssBoxListItem.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | 4 | using PixelFarm.Drawing; 5 | namespace LayoutFarm.HtmlBoxes 6 | { 7 | public class CssBoxListItem : CssBox 8 | { 9 | CssBox _listItemBulletBox; 10 | public CssBoxListItem(Css.BoxSpec spec, IRootGraphics rootgfx) 11 | : base(spec, rootgfx) 12 | { 13 | } 14 | public CssBox BulletBox 15 | { 16 | get 17 | { 18 | return this._listItemBulletBox; 19 | } 20 | set 21 | { 22 | this._listItemBulletBox = value; 23 | } 24 | } 25 | protected override void PerformContentLayout(LayoutVisitor lay) 26 | { 27 | base.PerformContentLayout(lay); 28 | if (_listItemBulletBox != null) 29 | { 30 | //layout list item 31 | var prevSibling = lay.LatestSiblingBox; 32 | lay.LatestSiblingBox = null;//reset 33 | _listItemBulletBox.PerformLayout(lay); 34 | lay.LatestSiblingBox = prevSibling; 35 | var fRun = _listItemBulletBox.FirstRun; 36 | _listItemBulletBox.FirstRun.SetSize(fRun.Width, fRun.Height); 37 | _listItemBulletBox.FirstRun.SetLocation(_listItemBulletBox.VisualWidth - 5, this.ActualPaddingTop); 38 | } 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/5_Boxes_SpecialBoxes/CssFloatContainerBox.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | 4 | using PixelFarm.Drawing; 5 | namespace LayoutFarm.HtmlBoxes 6 | { 7 | class CssFloatContainerBox : CssBox 8 | { 9 | public CssFloatContainerBox(Css.BoxSpec boxSpec, IRootGraphics rootgfx, Css.CssDisplay display) 10 | : base(boxSpec, rootgfx, display) 11 | { 12 | } 13 | internal override bool JustTempContainer 14 | { 15 | get 16 | { 17 | return true; 18 | } 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/Platform/FontDefaultConfig.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm 4 | { 5 | static class FontDefaultConfig 6 | { 7 | /// <summary> 8 | /// serif 9 | /// </summary> 10 | internal static string DEFAULT_FONT_NAME = "Times New Roman"; 11 | /// <summary> 12 | /// Default font size in points. Change this value to modify the default font size. 13 | /// </summary> 14 | public const float DEFAULT_FONT_SIZE = 10f; 15 | } 16 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.HtmlRenderer/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.InteropServices; 3 | 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | [assembly: AssemblyTitle("HtmlRenderer")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("HtmlRenderer")] 12 | [assembly: AssemblyCopyright("Copyright © 2008-2015")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // Setting ComVisible to false makes the types in this assembly not visible 17 | // to COM components. If you need to access a type in this assembly from 18 | // COM, set the ComVisible attribute to true on that type. 19 | [assembly: ComVisible(false)] 20 | 21 | // The following GUID is for the ID of the typelib if this project is exposed to COM 22 | [assembly: Guid("ec8a9e7e-9a9d-43c3-aa97-f6f505b1d3ed")] 23 | 24 | // Version information for an assembly consists of the following four values: 25 | // 26 | // Major Version 27 | // Minor Version 28 | // Build Number 29 | // Revision 30 | // 31 | [assembly: AssemblyVersion("2.0.0.10")] 32 | [assembly: AssemblyFileVersion("2.0.0.10")] 33 | 34 | -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/0_WebDom.Parser/DeprecatedAttribute.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System; 4 | namespace LayoutFarm 5 | { 6 | public class FeatureDeprecatedAttribute : Attribute 7 | { 8 | public FeatureDeprecatedAttribute() 9 | { 10 | } 11 | public FeatureDeprecatedAttribute(string note) 12 | { 13 | this.Note = note; 14 | } 15 | public string Note { get; set; } 16 | } 17 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/0_WebDom.Parser/TextSource.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System; 4 | using LayoutFarm.WebLexer; 5 | namespace LayoutFarm.WebDom.Parser 6 | { 7 | public class TextSource 8 | { 9 | TextSnapshot actualSnapshot; 10 | public TextSource(char[] textBuffer) 11 | { 12 | this.actualSnapshot = new TextSnapshot(textBuffer); 13 | } 14 | internal TextSnapshot ActualSnapshot 15 | { 16 | get { return this.actualSnapshot; } 17 | } 18 | 19 | public static string GetInternalText(TextSource textsource) 20 | { 21 | return new string(TextSnapshot.UnsafeGetInternalBuffer(textsource.actualSnapshot)); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/1_Css/CssDocument.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Text; 6 | namespace LayoutFarm.WebDom 7 | { 8 | public class CssDocument 9 | { 10 | List<CssDocMember> cssItemCollection = new List<CssDocMember>(); 11 | public CssDocument() 12 | { 13 | } 14 | public void Add(CssDocMember cssitem) 15 | { 16 | cssItemCollection.Add(cssitem); 17 | } 18 | public IEnumerable<CssDocMember> GetCssDocMemberIter() 19 | { 20 | int j = cssItemCollection.Count; 21 | for (int i = 0; i < j; ++i) 22 | { 23 | yield return cssItemCollection[i]; 24 | } 25 | } 26 | #if DEBUG 27 | public override string ToString() 28 | { 29 | StringBuilder stBuilder = new StringBuilder(); 30 | int j = cssItemCollection.Count; 31 | for (int i = 0; i < j; ++i) 32 | { 33 | stBuilder.Append(cssItemCollection[i].ToString()); 34 | } 35 | 36 | return stBuilder.ToString(); 37 | } 38 | #endif 39 | 40 | } 41 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/2_WebDom/ElementChangeKind.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.WebDom 4 | { 5 | public enum ElementChangeKind 6 | { 7 | ClearAllChildren, 8 | AddChild, 9 | AddAttribute, 10 | RemoveChild, 11 | Spec, 12 | ContentUpdate, 13 | AttributeChanged 14 | } 15 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/3_WebDom_Interfaces/HtmlInterfaces.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2015-2017, WinterDev 2 | using LayoutFarm.Scripting; 3 | 4 | namespace LayoutFarm.WebDom 5 | { 6 | public interface INode 7 | { 8 | } 9 | 10 | [JsType] 11 | public interface IHtmlDocument 12 | { 13 | //TODO: 14 | //current version we not support overload 15 | //resolve this 16 | IHtmlElement rootNode { get; } 17 | IHtmlElement getElementById(string id); 18 | ITextNode createTextNode(string nodeContent); 19 | IHtmlElement createElement(string nodeName); 20 | IHtmlDocument createDocumentFragment(); 21 | IHtmlElement createShadowRootElement(); 22 | } 23 | [JsType] 24 | public interface IHtmlElement : INode 25 | { 26 | void setAttribute(string attrName, string value); 27 | void appendChild(INode childNode); 28 | void attachEventListener(string eventName, HtmlEventHandler handler); 29 | void detachEventListener(string eventName, HtmlEventHandler handler); 30 | string innerHTML { get; set; } 31 | string id { get; } 32 | void clear(); 33 | //---------------------- 34 | void removeChild(DomNode childNode); 35 | void getGlobalLocation(out int x, out int y); 36 | } 37 | [JsType] 38 | public interface ITextNode : INode 39 | { 40 | } 41 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/4_WebDom.Impl/DomTextWriter.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2015-2017, WinterDev 2 | //ArthurHub , Jose Manuel Menendez Poo 3 | 4 | using System; 5 | using System.Text; 6 | namespace LayoutFarm.WebDom 7 | { 8 | public class DomTextWriter 9 | { 10 | StringBuilder stbuilder; 11 | public DomTextWriter(StringBuilder stbuilder) 12 | { 13 | this.stbuilder = stbuilder; 14 | } 15 | public StringBuilder InnerStringBuilder 16 | { 17 | get { return this.stbuilder; } 18 | } 19 | public void Write(string s1) 20 | { 21 | stbuilder.Append(s1); 22 | } 23 | public void Write(char c1) 24 | { 25 | stbuilder.Append(c1); 26 | } 27 | public void Write(string s1, string s2) 28 | { 29 | stbuilder.Append(s1); 30 | stbuilder.Append(s2); 31 | } 32 | public void Write(string s1, string s2, string s3) 33 | { 34 | stbuilder.Append(s1); 35 | stbuilder.Append(s2); 36 | stbuilder.Append(s3); 37 | } 38 | public void NewLine() 39 | { 40 | stbuilder.AppendLine(); 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/4_WebDom.Impl/HtmlDocumentFragment.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.WebDom.Impl 4 | { 5 | public class HtmlDocumentFragment : HtmlDocument 6 | { 7 | HtmlDocument primaryHtmlDoc; 8 | internal HtmlDocumentFragment(HtmlDocument primaryHtmlDoc) 9 | : base(primaryHtmlDoc.UniqueStringTable) 10 | { 11 | //share string table with primary html doc 12 | this.primaryHtmlDoc = primaryHtmlDoc; 13 | } 14 | public override bool IsDocFragment 15 | { 16 | get 17 | { 18 | return true; 19 | } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/4_WebDom.Impl/HtmlDocument_Scripting.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2015-2017, WinterDev 2 | 3 | using LayoutFarm.Scripting; 4 | namespace LayoutFarm.WebDom.Impl 5 | { 6 | partial class HtmlDocument : IHtmlDocument 7 | { 8 | 9 | IHtmlElement IHtmlDocument.getElementById(string id) 10 | { 11 | return this.GetElementById(id) as HtmlElement; 12 | } 13 | 14 | 15 | ITextNode IHtmlDocument.createTextNode(string nodeContent) 16 | { 17 | return this.CreateTextNode(nodeContent.ToCharArray()); 18 | } 19 | 20 | IHtmlElement IHtmlDocument.createElement(string nodeName) 21 | { 22 | return (HtmlElement)this.CreateElement(nodeName); 23 | } 24 | 25 | 26 | IHtmlElement IHtmlDocument.rootNode 27 | { 28 | get { return (IHtmlElement)this.RootNode; } 29 | } 30 | 31 | IHtmlDocument IHtmlDocument.createDocumentFragment() 32 | { 33 | return (IHtmlDocument)this.CreateDocumentFragment(); 34 | } 35 | 36 | IHtmlElement IHtmlDocument.createShadowRootElement() 37 | { 38 | return (IHtmlElement)this.CreateShadowRootElement(); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/4_WebDom.Impl/HtmlPredefinedNames.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.WebDom.Impl 4 | { 5 | public static class HtmlPredefineNames 6 | { 7 | static readonly ValueMap<WellknownName> _wellKnownHtmlNameMap = 8 | new ValueMap<WellknownName>(); 9 | static UniqueStringTable htmlUniqueStringTableTemplate = new UniqueStringTable(); 10 | static HtmlPredefineNames() 11 | { 12 | int j = _wellKnownHtmlNameMap.Count; 13 | for (int i = 0; i < j; ++i) 14 | { 15 | htmlUniqueStringTableTemplate.AddStringIfNotExist(_wellKnownHtmlNameMap.GetStringFromValue((WellknownName)(i + 1))); 16 | } 17 | } 18 | public static UniqueStringTable CreateUniqueStringTableClone() 19 | { 20 | return htmlUniqueStringTableTemplate.Clone(); 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/4_WebDom.Impl/HtmlShadowDocument.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.WebDom.Impl 4 | { 5 | class HtmlShadowDocument : HtmlDocument 6 | { 7 | //this is not document fragment *** 8 | HtmlDocument primaryHtmlDoc; 9 | public HtmlShadowDocument(HtmlDocument primaryHtmlDoc) 10 | : base(primaryHtmlDoc.UniqueStringTable) 11 | { 12 | //share string table with primary html doc 13 | this.primaryHtmlDoc = primaryHtmlDoc; 14 | } 15 | } 16 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/4_WebDom.Impl/HtmlTextNode.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | //ArthurHub , Jose Manuel Menendez Poo 3 | 4 | namespace LayoutFarm.WebDom.Impl 5 | { 6 | public class HtmlTextNode : DomTextNode 7 | { 8 | //--------------------------------- 9 | //this node may be simple text node 10 | bool freeze; 11 | bool hasSomeChar; 12 | public HtmlTextNode(WebDocument ownerDoc, char[] buffer) 13 | : base(ownerDoc, buffer) 14 | { 15 | } 16 | public bool IsWhiteSpace 17 | { 18 | get 19 | { 20 | return !this.hasSomeChar; 21 | } 22 | } 23 | 24 | public bool IsFreeze 25 | { 26 | get { return this.freeze; } 27 | } 28 | #if DEBUG 29 | public override string ToString() 30 | { 31 | return new string(base.GetOriginalBuffer()); 32 | } 33 | #endif 34 | public void WriteTextNode(DomTextWriter writer) 35 | { 36 | //write inner run 37 | writer.InnerStringBuilder.Append(this.GetOriginalBuffer()); 38 | } 39 | } 40 | public enum TextSplitPartKind : byte 41 | { 42 | Text = 1, 43 | Whitespace, 44 | SingleWhitespace, 45 | LineBreak, 46 | } 47 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebDom/4_WebDom.Impl/SpecialHtmlElements.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System; 4 | namespace LayoutFarm.WebDom.Impl 5 | { 6 | sealed class HtmlRootElement : HtmlElement 7 | { 8 | public HtmlRootElement(HtmlDocument ownerDoc) 9 | : base(ownerDoc, 0, 0) 10 | { 11 | } 12 | #if DEBUG 13 | public override string ToString() 14 | { 15 | return "!root"; 16 | } 17 | #endif 18 | } 19 | 20 | 21 | 22 | 23 | sealed class ShadowRootElement : HtmlElement 24 | { 25 | //note: this version is not conform with w3c 26 | HtmlShadowDocument shadowDoc; 27 | public ShadowRootElement(HtmlDocument owner, int prefix, int localNameIndex) 28 | : base(owner, prefix, localNameIndex) 29 | { 30 | shadowDoc = new HtmlShadowDocument(owner); 31 | shadowDoc.SetDomUpdateHandler(owner.DomUpdateHandler); 32 | } 33 | public override void AddChild(DomNode childNode) 34 | { 35 | //add dom node to this node 36 | if (childNode.ParentNode != null) 37 | { 38 | throw new NotSupportedException("remove from its parent first"); 39 | } 40 | shadowDoc.RootNode.AddChild(childNode); 41 | } 42 | #if DEBUG 43 | public override string ToString() 44 | { 45 | return "shadow-root"; 46 | } 47 | #endif 48 | } 49 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebLexer/MyLexer/MyHtmlLexer_dbug.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using LayoutFarm.WebLexer; 4 | namespace LayoutFarm.WebDom.Parser 5 | { 6 | #if DEBUG 7 | partial class MyHtmlLexer 8 | { 9 | dbugLexerReport dbug_LexerReport; 10 | int dbug_currentLineCharIndex = -1; 11 | int dbug_currentLineNumber = 0; 12 | void dbug_OnStartAnalyze() 13 | { 14 | } 15 | void dbug_OnFinishAnalyze() 16 | { 17 | } 18 | public void dbugStartRecord(System.IO.StreamWriter writer) 19 | { 20 | dbug_LexerReport = new dbugLexerReport(); 21 | dbug_LexerReport.Start(writer); 22 | } 23 | 24 | public void dbugEndRecord() 25 | { 26 | dbug_LexerReport.Flush(); 27 | dbug_LexerReport = null; 28 | } 29 | 30 | void dbugReportChar(char c, int currentState) 31 | { 32 | if (dbug_LexerReport != null) 33 | { 34 | dbug_LexerReport.WriteLine("[" + dbug_currentLineNumber + " ," + 35 | dbug_currentLineCharIndex + "] state=" + currentState + " char=" + c); 36 | } 37 | } 38 | } 39 | #endif 40 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.WebLexer/MyLexer/dbugLexerReport.cs: -------------------------------------------------------------------------------- 1 | //BSD, 2014-2017, WinterDev 2 | 3 | using System.IO; 4 | namespace LayoutFarm.WebLexer 5 | { 6 | #if DEBUG 7 | public class dbugLexerReport 8 | { 9 | StreamWriter strmWriter; 10 | int lineCount = 0; 11 | public void Start(StreamWriter strmWriter) 12 | { 13 | this.strmWriter = strmWriter; 14 | strmWriter.AutoFlush = true; 15 | } 16 | public void WriteLine(string info) 17 | { 18 | strmWriter.WriteLine(lineCount + " " + info); 19 | strmWriter.Flush(); 20 | lineCount++; 21 | } 22 | public void Flush() 23 | { 24 | strmWriter.Flush(); 25 | } 26 | } 27 | #endif 28 | } -------------------------------------------------------------------------------- /Source/LayoutFarm.YourHtmlWidget/5.1_HtmlWidgetBase/ComboBox.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.HtmlWidgets 4 | { 5 | public class ComboBox : HingeBox 6 | { 7 | public ComboBox(int w, int h) 8 | : base(w, h) 9 | { 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /Source/Test0_PresentationDevHelper_New/Dev/SampleViewport.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | using System; 3 | using PixelFarm.Drawing; 4 | 5 | namespace LayoutFarm 6 | { 7 | public class SampleViewport 8 | { 9 | LayoutFarm.UI.UISurfaceViewportControl vw; 10 | int primaryScreenWorkingAreaW; 11 | int primaryScreenWorkingAreaH; 12 | public SampleViewport(LayoutFarm.UI.UISurfaceViewportControl vw) 13 | { 14 | this.vw = vw; 15 | var workingArea = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea; 16 | this.primaryScreenWorkingAreaW = workingArea.Width; 17 | this.primaryScreenWorkingAreaH = workingArea.Height; 18 | } 19 | public LayoutFarm.UIPlatform Platform 20 | { 21 | get 22 | { 23 | return vw.Platform; 24 | } 25 | } 26 | public int PrimaryScreenWidth 27 | { 28 | get { return this.primaryScreenWorkingAreaW; } 29 | } 30 | public int PrimaryScreenHeight 31 | { 32 | get { return this.primaryScreenWorkingAreaH; } 33 | } 34 | public void AddContent(RenderElement renderElement) 35 | { 36 | this.vw.AddContent(renderElement); 37 | } 38 | 39 | public LayoutFarm.UI.UISurfaceViewportControl ViewportControl 40 | { 41 | get { return this.vw; } 42 | } 43 | public RootGraphic Root 44 | { 45 | get { return this.vw.RootGfx; } 46 | } 47 | } 48 | } -------------------------------------------------------------------------------- /Source/Test0_PresentationDevHelper_New/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | [assembly: AssemblyTitle("Test0_PresentationDevHelper")] 6 | [assembly: AssemblyDescription("")] 7 | [assembly: AssemblyConfiguration("")] 8 | [assembly: AssemblyCompany("")] 9 | [assembly: AssemblyProduct("Test0_PresentationDevHelper")] 10 | [assembly: AssemblyCopyright("Copyright © 2014")] 11 | [assembly: AssemblyTrademark("")] 12 | [assembly: AssemblyCulture("")] 13 | 14 | [assembly: ComVisible(false)] 15 | 16 | [assembly: Guid("74df10b3-27df-476f-b8c7-f1dfc5658db0")] 17 | 18 | // 19 | // 20 | [assembly: AssemblyVersion("1.0.0.0")] 21 | [assembly: AssemblyFileVersion("1.0.0.0")] 22 | -------------------------------------------------------------------------------- /Source/Test0_PresentationDevHelper_New/app.config: -------------------------------------------------------------------------------- 1 | <?xml version="1.0"?> 2 | <configuration> 3 | <startup/></configuration> 4 | -------------------------------------------------------------------------------- /Source/Test1_CoreVisual_New/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows.Forms; 3 | namespace TestGraphicPackage 4 | { 5 | static class Program 6 | { 7 | [STAThread] 8 | static void Main() 9 | { 10 | Application.EnableVisualStyles(); 11 | Application.SetCompatibleTextRenderingDefault(false); 12 | Application.Run(new Form1()); 13 | 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Test1_CoreVisual_New/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | [assembly: AssemblyTitle("TestGraphicPackage")] 5 | [assembly: AssemblyDescription("")] 6 | [assembly: AssemblyConfiguration("")] 7 | [assembly: AssemblyCompany("")] 8 | [assembly: AssemblyProduct("TestGraphicPackage")] 9 | [assembly: AssemblyCopyright("Copyright © 2014")] 10 | [assembly: AssemblyTrademark("")] 11 | [assembly: AssemblyCulture("")] 12 | 13 | [assembly: ComVisible(false)] 14 | 15 | [assembly: Guid("d6e8a053-50da-47b3-a817-ad9259dc376e")] 16 | 17 | // 18 | // 19 | [assembly: AssemblyVersion("1.0.0.0")] 20 | [assembly: AssemblyFileVersion("1.0.0.0")] 21 | -------------------------------------------------------------------------------- /Source/Test1_CoreVisual_New/app.config: -------------------------------------------------------------------------------- 1 | <?xml version="1.0"?> 2 | <configuration> 3 | <startup/></configuration> 4 | -------------------------------------------------------------------------------- /Source/Test2_WebDomParsers/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Windows.Forms; 4 | namespace Test2_WebDomParsers 5 | { 6 | static class Program 7 | { 8 | /// <summary> 9 | /// The main entry point for the application. 10 | /// </summary> 11 | [STAThread] 12 | static void Main() 13 | { 14 | Application.EnableVisualStyles(); 15 | Application.SetCompatibleTextRenderingDefault(false); 16 | Application.Run(new Form1()); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Source/Test2_WebDomParsers/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // <auto-generated> 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.34209 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // </auto-generated> 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace Test2_WebDomParsers.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Source/Test2_WebDomParsers/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | <?xml version='1.0' encoding='utf-8'?> 2 | <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> 3 | <Profiles> 4 | <Profile Name="(Default)" /> 5 | </Profiles> 6 | <Settings /> 7 | </SettingsFile> 8 | -------------------------------------------------------------------------------- /Source/Test2_WebDomParsers/SampleData/0_basic/test01.html: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | 4 | </html> -------------------------------------------------------------------------------- /Source/Test2_WebDomParsers/SampleData/1_large_and_errs/test01.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test2_WebDomParsers/SampleData/1_large_and_errs/test01.html -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/Demo/arrow_blank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/Demo/arrow_blank.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/Demo/arrow_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/Demo/arrow_close.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/Demo/arrow_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/Demo/arrow_open.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/Demo/favorites32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/Demo/favorites32.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/ExampleFolderConfig.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Windows.Forms; 6 | namespace TestGraphicPackage2 7 | { 8 | static class ExampleFolderConfig 9 | { 10 | public static void InitIcuData() 11 | { 12 | //string icu_dataFile = @"D:\WImageTest\icudt57l\icudt57l.dat"; 13 | //LayoutFarm.TextBreak.ICU.NativeTextBreaker.SetICUDataFile(icu_dataFile); 14 | 15 | } 16 | public static string GetCheckFolder() 17 | { 18 | #if DEBUG 19 | string checkFolder = "\\Source\\Test3_MixHtml.One\\bin\\Debug"; 20 | #else 21 | string checkFolder = "\\Source\\Test3_MixHtml.One\\bin\\Release"; 22 | #endif 23 | return checkFolder; 24 | 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // <auto-generated> 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // </auto-generated> 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace Test3_MixHtml.One.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | <?xml version='1.0' encoding='utf-8'?> 2 | <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> 3 | <Profiles> 4 | <Profile Name="(Default)" /> 5 | </Profiles> 6 | <Settings /> 7 | </SettingsFile> 8 | -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/app.config: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="utf-8"?> 2 | <configuration> 3 | <startup><supportedRuntime version="v2.0.50727"/></startup></configuration> 4 | -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/images/01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/images/01.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/images/02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/images/02.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/images/03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/images/03.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/images/04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/images/04.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/images/05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/images/05.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/images/images.txt: -------------------------------------------------------------------------------- 1 | these images are not mine. 2 | just for test only 3 | 4 | from ... 5 | 01.jpg: http://www.komkid.com/wp-content/uploads/2011/12/7-days.jpg 6 | 02.jpg: http://www.chaoprayanews.com/wp-content/uploads/2012/07/12.jpg 7 | 03-05.jpg: http://www.nanmee.com/expositionHW&NF/6th/Exhibit.php -------------------------------------------------------------------------------- /Source/Test3_MixHtml.One/images/sample01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml.One/images/sample01.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo/arrow_blank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/Demo/arrow_blank.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo/arrow_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/Demo/arrow_close.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo/arrow_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/Demo/arrow_open.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo/favorites32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/Demo/favorites32.png -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo4/4.2_MixHtml.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using LayoutFarm.CustomWidgets; 4 | namespace LayoutFarm 5 | { 6 | [DemoNote("4.2 MixHtml and Text")] 7 | class Demo_MixHtml : DemoBase 8 | { 9 | protected override void OnStartDemo(SampleViewport viewport) 10 | { 11 | var htmlhost = HtmlHostCreatorHelper.CreateHtmlHost(viewport, null, null); 12 | ////================================================== 13 | //html box 14 | var htmlBox = new HtmlBox(htmlhost, 800, 400); 15 | htmlBox.SetLocation(30, 30); 16 | viewport.AddContent(htmlBox); 17 | string html = @"<html><head></head><body><div>OK1</div><div>OK2</div></body></html>"; 18 | htmlBox.LoadHtmlString(html); 19 | //================================================== 20 | 21 | //textbox 22 | var textbox = new LayoutFarm.CustomWidgets.TextBox(400, 100, true); 23 | textbox.SetLocation(0, 200); 24 | viewport.AddContent(textbox); 25 | textbox.Focus(); 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo4/4.4_CssLeanBox.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using System.Text; 4 | using LayoutFarm.CustomWidgets; 5 | namespace LayoutFarm 6 | { 7 | [DemoNote("4.4 CssLeanBox")] 8 | class Demo_CssLeanBox : DemoBase 9 | { 10 | protected override void OnStartDemo(SampleViewport viewport) 11 | { 12 | ////================================================== 13 | //html box 14 | var htmlHost = HtmlHostCreatorHelper.CreateHtmlHost(viewport, null, null); 15 | var htmlBox = new HtmlBox(htmlHost, 800, 400); 16 | StringBuilder stbuilder = new StringBuilder(); 17 | stbuilder.Append("<html><head></head><body>"); 18 | stbuilder.Append("<div>custom box1</div>"); 19 | stbuilder.Append("<x id=\"my_custombox1\"></x>"); 20 | stbuilder.Append("<div>custom box2</div>"); 21 | stbuilder.Append("<x type=\"textbox\" id=\"my_custombox1\"></x>"); 22 | stbuilder.Append("</body></html>"); 23 | htmlBox.LoadHtmlString(stbuilder.ToString()); 24 | viewport.AddContent(htmlBox); 25 | //================================================== 26 | 27 | //textbox 28 | var textbox = new LayoutFarm.CustomWidgets.TextBox(400, 100, true); 29 | textbox.SetLocation(0, 200); 30 | viewport.AddContent(textbox); 31 | textbox.Focus(); 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo5/5.7_Demo_ListView.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.WebWidgets 4 | { 5 | [DemoNote("5.7 ListView")] 6 | class Demo_ListView : HtmlDemoBase 7 | { 8 | protected override void OnHtmlHostCreated() 9 | { 10 | var listview = new LayoutFarm.HtmlWidgets.ListView(100, 100); 11 | listview.SetLocation(30, 20); 12 | //add listview item 13 | for (int i = 0; i < 100; ++i) 14 | { 15 | var listItem = new HtmlWidgets.ListItem(100, 20); 16 | listItem.Text = "item" + i; 17 | listview.AddItem(listItem); 18 | } 19 | AddToViewport(listview); 20 | ////------------------------------------------------------------------- 21 | ////add vertical scrollbar 22 | //{ 23 | // //vertical scrollbar 24 | // var vscbar = new LayoutFarm.HtmlWidgets.ScrollBar(15, 100); 25 | // vscbar.SetLocation(10, 20); 26 | // vscbar.MinValue = 0; 27 | // vscbar.MaxValue = 100; 28 | // vscbar.SmallChange = 20; 29 | 30 | // this.sampleViewport.AddContent(vscbar); 31 | 32 | // //add relation between viewpanel and scroll bar 33 | // //var scRelation = new LayoutFarm.HtmlWidgets.ScrollingRelation(vscbar, listview); 34 | //} 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo5/5.8_Demo_Hinge.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.WebWidgets 4 | { 5 | [DemoNote("5.3 Hinge")] 6 | class Demo_Hinge : HtmlDemoBase 7 | { 8 | protected override void OnHtmlHostCreated() 9 | { 10 | //------------------------------- 11 | int boxX = 0; 12 | for (int i = 0; i < 1; ++i) 13 | { 14 | var hingeBox = CreateHingeBox(100, 30); 15 | hingeBox.SetLocation(boxX, 20); 16 | boxX += 100 + 2; 17 | AddToViewport(hingeBox); 18 | } 19 | } 20 | LayoutFarm.HtmlWidgets.HingeBox CreateHingeBox(int w, int h) 21 | { 22 | var hingeBox = new LayoutFarm.HtmlWidgets.HingeBox(w, h); 23 | //1. set land part detail 24 | //2. set float part detail 25 | return hingeBox; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo7/7.1_DemoDzBoard.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.DzBoardSample 4 | { 5 | [DemoNote("7.1 Demo DesignBoard")] 6 | class Demo_DzBoard : DemoBase 7 | { 8 | AppModule appModule = new AppModule(); 9 | protected override void OnStartDemo(SampleViewport viewport) 10 | { 11 | appModule.StartModule(viewport); 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Demo7/CompoModule.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | namespace LayoutFarm.DzBoardSample 4 | { 5 | public abstract class CompoModule 6 | { 7 | protected HtmlBoxes.HtmlHost htmlHost; 8 | protected SampleViewport viewport; 9 | public void StartModule(HtmlBoxes.HtmlHost htmlHost, SampleViewport viewport) 10 | { 11 | this.htmlHost = htmlHost; 12 | this.viewport = viewport; 13 | OnStartModule(); 14 | } 15 | protected virtual void OnStartModule() 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/ExampleFolderConfig.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using Typography.TextBreak; 4 | namespace TestGraphicPackage2 5 | { 6 | static class ExampleFolderConfig 7 | { 8 | static string execFromFolder; 9 | static ExampleFolderConfig() 10 | { 11 | //string execLocation = System.Reflection.Assembly.GetExecutingAssembly().Location; 12 | //execFromFolder = System.IO.Path.GetDirectoryName(execLocation); 13 | //Typography.TextBreak.CustomBreakerBuilder.DataDir = execFromFolder + "\\dictionaries"; 14 | ////@"Deps_I18N\LayoutFarm.TextBreak\icu58\brkitr_src\dictionaries"; 15 | } 16 | public static void InitData() 17 | { 18 | //string icu_dataFile = @"icudt57l.dat"; 19 | //Typography.TextBreak.ICU.NativeTextBreaker.SetICUDataFile(execFromFolder + "\\" + icu_dataFile); 20 | } 21 | 22 | } 23 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/ManagedTextBreaker.cs: -------------------------------------------------------------------------------- 1 | ////Apache2, 2014-2017, WinterDev 2 | 3 | //using System; 4 | //using System.Collections.Generic; 5 | //using System.Windows.Forms; 6 | //using Typography.TextBreak; 7 | //namespace LayoutFarm.Composers 8 | //{ 9 | // class MyManagedTextBreaker : ITextBreaker 10 | // { 11 | // CustomBreaker myTextBreaker; 12 | // public MyManagedTextBreaker() 13 | // { 14 | // //TODO: review config folder here 15 | // myTextBreaker = CustomBreakerBuilder.NewCustomBreaker(); 16 | // } 17 | // public void DoBreak(char[] inputBuffer, int startIndex, int len, List<int> breakAtList) 18 | // { 19 | // myTextBreaker.BreakWords(inputBuffer, startIndex); 20 | // myTextBreaker.LoadBreakAtList(breakAtList); 21 | 22 | // } 23 | // } 24 | 25 | //} -------------------------------------------------------------------------------- /Source/Test3_MixHtml/NativeTextBreaker.cs: -------------------------------------------------------------------------------- 1 | ////Apache2, 2014-2017, WinterDev 2 | 3 | //using System; 4 | //using System.Collections.Generic; 5 | //using System.Windows.Forms; 6 | //using LayoutFarm.TextBreak.ICU; 7 | 8 | 9 | //namespace LayoutFarm.Composers 10 | //{ 11 | // class MyNativeTextBreaker : ITextBreaker 12 | // { 13 | // NativeTextBreaker myTextBreaker; 14 | // public MyNativeTextBreaker() 15 | // { 16 | // myTextBreaker = new NativeTextBreaker(LayoutFarm.TextBreak.ICU.TextBreakKind.Word, "en-US"); 17 | // } 18 | // public void DoBreak(char[] inputBuffer, int startIndex, int len, List<int> breakAtList) 19 | // { 20 | // myTextBreaker.DoBreak(inputBuffer, startIndex, len, splitBound => 21 | // { 22 | // breakAtList.Add(splitBound.startIndex + splitBound.length); 23 | // }); 24 | // } 25 | // } 26 | //} -------------------------------------------------------------------------------- /Source/Test3_MixHtml/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | [assembly: AssemblyTitle("Test3_MixHtml")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("Test3_MixHtml")] 12 | [assembly: AssemblyCopyright("Copyright © 2014")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // Setting ComVisible to false makes the types in this assembly not visible 17 | // to COM components. If you need to access a type in this assembly from 18 | // COM, set the ComVisible attribute to true on that type. 19 | [assembly: ComVisible(false)] 20 | 21 | // The following GUID is for the ID of the typelib if this project is exposed to COM 22 | [assembly: Guid("7c50e0bc-6b6e-4cb0-b1ac-40416961b240")] 23 | 24 | // Version information for an assembly consists of the following four values: 25 | // 26 | // Major Version 27 | // Minor Version 28 | // Build Number 29 | // Revision 30 | // 31 | // You can specify all the values or you can default the Build and Revision Numbers 32 | // by using the '*' as shown below: 33 | // [assembly: AssemblyVersion("1.0.*")] 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /Source/Test3_MixHtml/SampleViewportExtension.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using LayoutFarm.UI; 4 | namespace LayoutFarm 5 | { 6 | public static class SampleViewportExtension 7 | { 8 | public static void AddContent(this SampleViewport viewport, UIElement ui) 9 | { 10 | viewport.ViewportControl.AddContent( 11 | ui.GetPrimaryRenderElement(viewport.ViewportControl.RootGfx), 12 | ui); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Source/Test3_MixHtml/app.config: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="utf-8"?> 2 | <configuration> 3 | <startup><supportedRuntime version="v2.0.50727"/></startup></configuration> 4 | -------------------------------------------------------------------------------- /Source/Test3_MixHtml/images/01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/images/01.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml/images/02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/images/02.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml/images/03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/images/03.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml/images/04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/images/04.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml/images/05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/images/05.jpg -------------------------------------------------------------------------------- /Source/Test3_MixHtml/images/images.txt: -------------------------------------------------------------------------------- 1 | these images are not mine. 2 | just for test only 3 | 4 | from ... 5 | 01.jpg: http://www.komkid.com/wp-content/uploads/2011/12/7-days.jpg 6 | 02.jpg: http://www.chaoprayanews.com/wp-content/uploads/2012/07/12.jpg 7 | 03-05.jpg: http://www.nanmee.com/expositionHW&NF/6th/Exhibit.php -------------------------------------------------------------------------------- /Source/Test3_MixHtml/images/sample01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test3_MixHtml/images/sample01.png -------------------------------------------------------------------------------- /Source/Test5_Ease/EaseComponents/MyWebConsole.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2015-2017, WinterDev 2 | 3 | using System.Windows.Forms; 4 | namespace LayoutFarm.Scripting 5 | { 6 | /// <summary> 7 | /// simple 8 | /// </summary> 9 | class MyWebConsole 10 | { 11 | TextBox outputTextBox; 12 | public MyWebConsole(TextBox outputTextBox) 13 | { 14 | this.outputTextBox = outputTextBox; 15 | } 16 | [JsMethod] 17 | public void log(object obj) 18 | { 19 | outputTextBox.Text += obj.ToString(); 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Source/Test5_Ease/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Windows.Forms; 4 | using LayoutFarm.Ease; 5 | namespace Test5_Ease 6 | { 7 | static class Program 8 | { 9 | /// <summary> 10 | /// The main entry point for the application. 11 | /// </summary> 12 | [STAThread] 13 | static void Main() 14 | { 15 | EaseHost.LibEspr = @"D:\projects\HTML-Renderer\Source\Deps\ess_natives\libespr.dll"; 16 | EaseHost.LoadLibEspr = true; 17 | EaseHost.IcuDataFile = @"D:\WImageTest\icudt57l\icudt57l.dat"; 18 | EaseHostInitReport report = EaseHost.Check(); 19 | if (report.HasSomeError) 20 | { 21 | throw new NotSupportedException(); 22 | } 23 | EaseHost.Init(); 24 | 25 | //---------------------------------------------------------------------------- 26 | 27 | Application.EnableVisualStyles(); 28 | Application.SetCompatibleTextRenderingDefault(false); 29 | 30 | Application.Run(new Form1()); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Source/Test5_Ease/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | [assembly: AssemblyTitle("Test5_Ease")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("Test5_Ease")] 12 | [assembly: AssemblyCopyright("Copyright © 2015")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // Setting ComVisible to false makes the types in this assembly not visible 17 | // to COM components. If you need to access a type in this assembly from 18 | // COM, set the ComVisible attribute to true on that type. 19 | [assembly: ComVisible(false)] 20 | 21 | // The following GUID is for the ID of the typelib if this project is exposed to COM 22 | [assembly: Guid("673456ab-5ff9-49b8-b041-773228f0e868")] 23 | 24 | // Version information for an assembly consists of the following four values: 25 | // 26 | // Major Version 27 | // Minor Version 28 | // Build Number 29 | // Revision 30 | // 31 | // You can specify all the values or you can default the Build and Revision Numbers 32 | // by using the '*' as shown below: 33 | // [assembly: AssemblyVersion("1.0.*")] 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /Source/Test5_Ease/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // <auto-generated> 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.18444 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // </auto-generated> 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace Test5_Ease.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Source/Test5_Ease/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | <?xml version='1.0' encoding='utf-8'?> 2 | <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> 3 | <Profiles> 4 | <Profile Name="(Default)" /> 5 | </Profiles> 6 | <Settings /> 7 | </SettingsFile> 8 | -------------------------------------------------------------------------------- /Source/Test6_WinNeutral/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Test6_WinNeutral")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Test6_WinNeutral")] 13 | [assembly: AssemblyCopyright("Copyright © 2017")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("461d6ec9-6cb3-4beb-88e2-679df8016229")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /Source/Test7_Win/Helper/EaseDomElement.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2014-2017, WinterDev 2 | 3 | using PixelFarm.Drawing; 4 | using LayoutFarm.Composers; 5 | namespace LayoutFarm.Ease 6 | { 7 | public struct EaseDomElement 8 | { 9 | EaseScriptElement easeScriptElement; 10 | public EaseDomElement(WebDom.DomElement domElement) 11 | { 12 | this.easeScriptElement = new EaseScriptElement(domElement); 13 | } 14 | public void SetBackgroundColor(System.Drawing.Color c) 15 | { 16 | this.easeScriptElement.ChangeBackgroundColor(new Color(c.A, c.R, c.G, c.B)); 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Source/Test7_Win/Helper/SampleViewport.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using LayoutFarm.UI.WinNeutral; 4 | 5 | namespace LayoutFarm 6 | { 7 | public class SampleViewport 8 | { 9 | UISurfaceViewportControl vw; 10 | int primaryScreenWorkingAreaW; 11 | int primaryScreenWorkingAreaH; 12 | 13 | public SampleViewport(UISurfaceViewportControl vw) 14 | { 15 | this.vw = vw; 16 | // var workingArea = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea; 17 | this.primaryScreenWorkingAreaW = 800;// workingArea.Width; 18 | this.primaryScreenWorkingAreaH = 600;// orkingArea.Height; 19 | } 20 | public LayoutFarm.UI.UIPlatform Platform 21 | { 22 | get 23 | { 24 | return this.vw.Platform; 25 | } 26 | } 27 | public int PrimaryScreenWidth 28 | { 29 | get { return this.primaryScreenWorkingAreaW; } 30 | } 31 | public int PrimaryScreenHeight 32 | { 33 | get { return this.primaryScreenWorkingAreaH; } 34 | } 35 | public void AddContent(RenderElement renderElement) 36 | { 37 | this.vw.AddContent(renderElement); 38 | } 39 | 40 | public UISurfaceViewportControl ViewportControl 41 | { 42 | get { return this.vw; } 43 | } 44 | public RootGraphic Root 45 | { 46 | get { return this.vw.RootGfx; } 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /Source/Test7_Win/Helper/SampleViewportExtension.cs: -------------------------------------------------------------------------------- 1 | //Apache2, 2014-2017, WinterDev 2 | 3 | using LayoutFarm.UI; 4 | namespace LayoutFarm 5 | { 6 | public static class SampleViewportExtension 7 | { 8 | public static void AddContent(this SampleViewport viewport, UIElement ui) 9 | { 10 | viewport.ViewportControl.AddContent( 11 | ui.GetPrimaryRenderElement(viewport.ViewportControl.RootGfx), 12 | ui); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /Source/Test7_Win/Helper2/EaseDomElement.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2014-2017, WinterDev 2 | 3 | using LayoutFarm.Composers; 4 | namespace LayoutFarm.Ease 5 | { 6 | public struct EaseDomElement 7 | { 8 | EaseScriptElement easeScriptElement; 9 | public EaseDomElement(WebDom.DomElement domElement) 10 | { 11 | this.easeScriptElement = new EaseScriptElement(domElement); 12 | } 13 | //public void SetBackgroundColor(System.Drawing.Color c) 14 | //{ 15 | // this.easeScriptElement.ChangeBackgroundColor(new Color(c.A, c.R, c.G, c.B)); 16 | //} 17 | } 18 | } -------------------------------------------------------------------------------- /Source/Test7_Win/MyNativeRGBA32BitsImage.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2016-2017, WinterDev 2 | using System; 3 | namespace TestGlfw 4 | { 5 | //----------------- 6 | //for test/debug 7 | //sample only**** 8 | //----------------- 9 | 10 | class MyNativeRGBA32BitsImage : IDisposable 11 | { 12 | int width; 13 | int height; 14 | int bitDepth; 15 | int stride; 16 | IntPtr unmanagedMem; 17 | public MyNativeRGBA32BitsImage(int width, int height) 18 | { 19 | //width and height must >0 20 | this.width = width; 21 | this.height = height; 22 | this.bitDepth = 32; 23 | this.stride = width * (32 / 8); 24 | unmanagedMem = System.Runtime.InteropServices.Marshal.AllocHGlobal(stride * height); 25 | //this.pixelBuffer = new byte[stride * height]; 26 | } 27 | public IntPtr Scan0 28 | { 29 | get { return this.unmanagedMem; } 30 | } 31 | public int Stride 32 | { 33 | get { return this.stride; } 34 | } 35 | public void Dispose() 36 | { 37 | if (unmanagedMem != IntPtr.Zero) 38 | { 39 | System.Runtime.InteropServices.Marshal.FreeHGlobal(unmanagedMem); 40 | unmanagedMem = IntPtr.Zero; 41 | } 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /Source/Test7_Win/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Test7_Win")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Test7_Win")] 13 | [assembly: AssemblyCopyright("Copyright © 2017")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("b3047240-20cb-48fe-a6fb-2bba559c402c")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.InteropServices; 3 | // General Information about an assembly is controlled through the following 4 | // set of attributes. Change these attribute values to modify the information 5 | // associated with an assembly. 6 | [assembly: AssemblyTitle("Html Demo")] 7 | [assembly: AssemblyDescription("")] 8 | [assembly: AssemblyConfiguration("")] 9 | [assembly: AssemblyCompany("")] 10 | [assembly: AssemblyProduct("Html Demo")] 11 | [assembly: AssemblyCopyright("Copyright © 2008-2014")] 12 | [assembly: AssemblyTrademark("")] 13 | [assembly: AssemblyCulture("")] 14 | 15 | // Setting ComVisible to false makes the types in this assembly not visible 16 | // to COM components. If you need to access a type in this assembly from 17 | // COM, set the ComVisible attribute to true on that type. 18 | [assembly: ComVisible(false)] 19 | 20 | // The following GUID is for the ID of the typelib if this project is exposed to COM 21 | [assembly: Guid("3098581d-210a-4748-bcda-4b9a6b34a91a")] 22 | 23 | // Version information for an assembly consists of the following four values: 24 | // 25 | // Major Version 26 | // Minor Version 27 | // Build Number 28 | // Revision 29 | // 30 | [assembly: AssemblyVersion("1.2.0.0")] 31 | [assembly: AssemblyFileVersion("1.2.0.0")] 32 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/CustomFont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/CustomFont.ttf -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/Event16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/Event16.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/Window.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/Window.gif -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/comment16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/comment16.gif -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/delete16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/delete16.gif -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/delete32.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/delete32.gif -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/exclamation32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/exclamation32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/favorites32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/favorites32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/font32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/font32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/formula32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/formula32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/html.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/html.ico -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/html32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/html32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/image32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/image32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/method16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/method16.gif -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/paly32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/paly32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/property16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/property16.gif -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/property32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/property32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/refreshdocument32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/refreshdocument32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Resources/web_pallete.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Resources/web_pallete.gif -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/0_acid1_dev/002.1.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>display/box/float/clear test 4 | </title> 5 | <style type="text/css"> 6 | 7 | 8 | body { 9 | margin: 1.5em; 10 | border: .5em solid black; 11 | padding: 0; 12 | width: 48em; 13 | background-color: white; 14 | } 15 | 16 | dl { 17 | margin: 0; 18 | border: 0; 19 | padding: .5em; 20 | } 21 | 22 | dt { 23 | background-color: rgb(204,0,0); 24 | margin: 0; 25 | padding: 5px; 26 | width: 100px; 27 | height: 100px; 28 | border: 5px solid black; 29 | 30 | } 31 | 32 | </style> 33 | </head> 34 | <body> 35 | <dl> 36 | <dt>xyz 37 | </dt> 38 | </dl> 39 | <p> 40 | abcd 41 | </p> 42 | </body> 43 | </html> 44 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/0_acid1_dev/002.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>display/box/float/clear test 4 | </title> 5 | <style type="text/css"> 6 | 7 | 8 | body { 9 | margin: 1.5em; 10 | border: .5em solid black; 11 | padding: 0; 12 | width: 48em; 13 | background-color: white; 14 | } 15 | 16 | dl { 17 | margin: 0; 18 | border: 0; 19 | padding: .5em; 20 | } 21 | 22 | dt { 23 | background-color: rgb(204,0,0); 24 | margin: 0; 25 | padding: 1em; 26 | width: 10.638%; /* refers to parent element's width of 47em. = 5em or 50px */ 27 | height: 28em; 28 | border: .5em solid black; 29 | 30 | } 31 | 32 | </style> 33 | </head> 34 | <body> 35 | <dl> 36 | <dt>xyz 37 | </dt> 38 | </dl> 39 | <p> 40 | abcd 41 | </p> 42 | </body> 43 | </html> 44 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/0_acid1_dev/003.3.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>test 4 | </title> 5 | </head> 6 | <body> 7 | xyz 8 | <div style="display:inline;background-color:yellow;padding:5px"> 9 | 12345 10 | <div> sub1</div> 11 | <div> sub2</div> 12 | 67890 13 | </div> 14 | <div style="display:inline"> 15 | abcde 16 | </div> 17 | </body> 18 | </html> 19 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/0_acid1_dev/003.4.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>test 4 | </title> 5 | </head> 6 | <body> 7 | abcd 8 | <form style="display:inline"> 9 | <p> 10 | bang 11 | 12 | <input type="radio" name="foo" value="off"/> 13 | </p> 14 | <p> 15 | whimper 16 | 17 | <input type="radio" name="foo2" value="on"/> 18 | </p> 19 | </form> 20 | 1234 21 | </body> 22 | </html> 23 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/0_acid1_dev/003.9.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>display/box/float/clear test 4 | </title> 5 | <style type="text/css"> 6 | html { 7 | font: 10px/1 Verdana, sans-serif; 8 | background-color: blue; 9 | color: white; 10 | } 11 | 12 | body { 13 | margin: 2px; 14 | border: 5px solid black; 15 | padding: 0; 16 | width: 48px; 17 | background-color: white; 18 | } 19 | dl { 20 | margin: 0; 21 | border: 0; 22 | padding: 5px; 23 | } 24 | dt { 25 | background-color: rgb(204,0,0); 26 | margin: 0; 27 | padding: 10px; 28 | width: 10px; 29 | height: 28px; 30 | border: 5px solid black; 31 | float: left; 32 | } 33 | dd { 34 | float: right; 35 | margin: 0 0 0 5px; 36 | border: 5px solid black; 37 | padding: 5px; 38 | width: 30px; 39 | height: 27px; 40 | } 41 | 42 | </style> 43 | </head> 44 | <body> 45 | <dl> 46 | <dt>toggle 47 | </dt> 48 | <dd> 49 | 50 | 51 | </dd> 52 | </dl> 53 | 54 | </body> 55 | </html> 56 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/01_table1.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Tables</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | <style type="text/css"> 6 | table, tr, th 7 | { 8 | border-width: 1px; 9 | border-style: solid; 10 | border-style: outset; 11 | } 12 | td, th 13 | { 14 | border-style: inset; 15 | padding:10px; 16 | } 17 | .caption 18 | { 19 | font-weight: bold; 20 | } 21 | </style> 22 | </head> 23 | <body> 24 | <table class="table_me" width="100%"> 25 | <tr> 26 | <td> 27 | <p>A1</p> 28 | <p>A2</p> 29 | </td> 30 | <td valign="middle"> 31 | B1 32 | </td> 33 | <td> 34 | B2 35 | </td> 36 | </tr> 37 | <tr> 38 | <td valign="middle" style="text-align: center"> 39 | C1 40 | </td> 41 | <td> 42 | C2 43 | </td> 44 | <td style="background-color: #8e9"> 45 | C3 46 | </td> 47 | </tr> 48 | </table> 49 | </body> 50 | </html> 51 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/02_text.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | </head> 5 | <body> 6 | <h1> 7 | ABCDpqy123 8 | </h1> 9 | <blockquote> 10 | <p> 11 | For years, I <i>(Jose)</i> have been planning for a project like this. I prepared 12 | my self quite well. I went through the entire CSS Level 2 specification along with 13 | the HTML 4.01 specification. 14 | </p> 15 | </blockquote> 16 | </body> 17 | </html> 18 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/03_text2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | </head> 5 | <body> 6 | <p> 7 | 8 | A <i>X</i> B 9 | <br /> 10 | C <a href="C:\">E</a> <code>(MM)</code> 11 | </p> 12 | </body> 13 | </html> 14 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/04_text3.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | </head> 5 | <body> 6 | <p> 7 | <h3>URI href</h3> 8 | A <i>X</i> B 9 | <br /> 10 | S <a href="A">B</a> <code>href="RRR"</code> 11 | </p> 12 | </body> 13 | </html> 14 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/05_add.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | </head> 5 | <body> 6 | <pre>AAA</pre> 7 | 8 | </body> 9 | </html> 10 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/06_txt.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | </head> 5 | <body> 6 | <p> 7 | <h3>URI href</h3> 8 | A <i>X</i> B 9 | <br /> 10 | S <a href="A">B</a> <code>href="RRR"</code> 11 | </p> 12 | </body> 13 | </html> 14 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/07_1_ab2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>About</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | </head> 6 | <body> 7 | <h1> 8 | H</h1> 9 | <blockquote> 10 | A 11 | </blockquote> 12 | </body> 13 | </html> 14 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/07_ab.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>About</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | </head> 6 | <body> 7 | <h1> 8 | H</h1> 9 | <blockquote> 10 | <p> 11 | A 12 | </p> 13 | <p> 14 | B 15 | </p> 16 | <p> 17 | C 18 | </p> 19 | <hr /> 20 | <br /> 21 | <h3> D</h3> 22 | </blockquote> 23 | </body> 24 | </html> 25 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/08_link1.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Links</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | </head> 6 | <body> 7 | <h1>Links 8 | </h1> 9 | <blockquote> 10 | <p> 11 | X 12 | </p> 13 | <p> 14 | <h3>Y</h3> 15 | Z 16 | <br /> 17 | M 18 | <br /> 19 | N <a href="https://htmlrenderer.codeplex.com/">O</a> (<code>href="P"</code>) 20 | </p> 21 | <br /> 22 | <br /> 23 | <p> 24 | <h3>A</h3> 25 | B <i>C</i> D 26 | <br /> 27 | E <a href="C:\">F</a> <code>G</code> 28 | </p> 29 | 30 | <p id="anchor" style="color: gray"> 31 | L 32 | </p> 33 | </blockquote> 34 | </body> 35 | </html> 36 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/08_link2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Links</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | <style type="text/css"> 6 | a { cursor:pointer} 7 | </style> 8 | </head> 9 | <body> 10 | <h3>Y</h3> 11 | N <a href="V">O</a> (<code>href="P"</code>) 12 | 13 | </body> 14 | </html> 15 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/09_text.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Text</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | </head> 6 | <body> 7 | <p> 8 | A 9 | </p> 10 | <p> 11 | <span>C</span> 12 | <b>E</b> 13 | <span style="color: blue"> 14 | XXXX 15 | <b>L</b> 16 | </span> 17 | </p> 18 | </body> 19 | </html> 20 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/10_td.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title></title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | <style> 6 | .tag { 7 | color: rgb(128,0,0); 8 | } 9 | 10 | .att { 11 | color: rgb(240,0,0); 12 | } 13 | 14 | .prop { 15 | color: rgb(128,0,171); 16 | } 17 | 18 | td { 19 | vertical-align: middle; 20 | padding: 1em; 21 | } 22 | </style> 23 | </head> 24 | <body> 25 | 26 | <table border="1"> 27 | <tr> 28 | <td>Just an image: 29 | </td> 30 | </tr> 31 | </table> 32 | </body> 33 | </html> 34 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/11_lines.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | </head> 5 | <body> 6 | <h1> 7 | ABCD 8 | </h1> 9 | <blockquote> 10 | <p> 11 | BBB<i>MMM</i> OOO 12 | CCC 13 | DDD 14 | </p> 15 | <p> 16 | AAAA 17 | </p> 18 | </blockquote> 19 | </body> 20 | </html> 21 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/12_table_image.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Intro</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <p style="margin-top: 0px"> 8 | <table style="background-color:red" width="100%"> 9 | <tr style="vertical-align: top;"> 10 | <td style="width:32px;padding: 2px 5px 0 0"> 11 | <img src="html32.png" /> 12 | </td> 13 | <td> 14 | AAA 15 | </td> 16 | </tr> 17 | </table> 18 | </p> 19 | </body> 20 | </html> 21 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/13_text.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Text</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | <style type="text/css"> 6 | ::selection { 7 | color: #bb5555; 8 | background-color: #aaddaa; 9 | } 10 | </style> 11 | </head> 12 | <body> 13 | <pre style="background-color: white"> 14 | <span style="color: blue">public class</span> HelloWorld 15 | { 16 | <span style="color: blue">public</span> HelloWorld() 17 | { 18 | <span style="color: #099">MessageBox</span>.Show(<span color="maroon">"Hello World"</span>); 19 | } 20 | }</pre> 21 | 22 | 23 | </body> 24 | </html> 25 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/14_table2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Tables</title> 4 | <link rel="Stylesheet" href="StyleSheet" /> 5 | <style type="text/css"> 6 | table, tr, th 7 | { 8 | border-width: 1px; 9 | border-style: solid; 10 | border-style: outset; 11 | } 12 | td, th 13 | { 14 | border-style: inset; 15 | padding:10px; 16 | } 17 | .caption 18 | { 19 | font-weight: bold; 20 | } 21 | .table_me{ 22 | border-width:1px; 23 | border-spacing:3px; 24 | } 25 | </style> 26 | </head> 27 | <body> 28 | 29 | <table class="table_me"> 30 | <tr> 31 | <td> 32 | <p> 33 | AAAAAAA AAAAAAAA AAAAAAAAAAAA AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAA 34 | </p> 35 | 36 | </td> 37 | <td valign="middle"> 38 | 2 39 | </td> 40 | <td> 41 | <ul> 42 | 43 | <li>Item two 44 | <ul> 45 | <li>Sub item one</li> 46 | 47 | </ul> 48 | </li> 49 | 50 | </ul> 51 | </td> 52 | </tr> 53 | </table> 54 | 55 | </body> 56 | </html> 57 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/16_div.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>styles1</title> 4 | </head> 5 | <body> 6 | <div style="font:14pt tahoma"> 7 | <div> 8 | <span>A1</span> 9 | </div> 10 | </div> 11 | </body> 12 | </html> 13 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/17_inlineblock.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>inline-block</title> 4 | </head> 5 | <body> 6 | <div> 7 | 111<div style="display:inline-block"> 8 | 222 9 | <div>333</div> 10 | 444 11 | </div> 12 | 555 13 | </div> 14 | 15 | </body> 16 | </html> 17 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/18_inlineblock2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>inline-block</title> 4 | </head> 5 | <body> 6 | <div> 7 | 1111 8 | <div style="display:inline-block"> 9 | 2222 10 | <div>3333</div> 11 | 4444 12 | <div style="display:inline-block"> 13 | 5555 14 | <div>6666</div> 15 | </div> 16 | 7777 17 | </div> 18 | 8888 19 | </div> 20 | </body> 21 | </html> 22 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/19_inlineblock3.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>inline-block</title> 4 | </head> 5 | <body> 6 | <div> 7 | 1111a 8 | <div style="display:inline-block"> 9 | 2222a 10 | <table> 11 | <tr> 12 | <td>3333a</td> 13 | <td>4444a</td> 14 | </tr> 15 | <tr> 16 | <td>5555a</td> 17 | <td>6666a</td> 18 | </tr> 19 | </table> 20 | </div> 21 | 7777a 22 | </div> 23 | <div> 24 | 1111b 25 | <div style="display:inline-block"> 26 | 2222b 27 | <table> 28 | <tr> 29 | <td>3333b</td> 30 | <td>4444b</td> 31 | </tr> 32 | <tr> 33 | <td>5555b</td> 34 | <td>6666b</td> 35 | </tr> 36 | </table> 37 | </div> 38 | 7777b 39 | </div> 40 | </body> 41 | </html> 42 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/20_inlineblock4.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>inline</title> 4 | </head> 5 | <body> 6 | <div style="width:600px;"> 7 | <div style="display:inline-block;width:25%;height:50px;"> 8 | A0123 9 | </div> 10 | <div style="display:inline-block;width:25%;height:50px;"> 11 | B0123 12 | </div> 13 | <div style="display:inline-block;width:25%;height:50px;"> 14 | C0123 15 | </div> 16 | <div style="display:inline-block;width:25%;height:50px;"> 17 | D0123 18 | </div> 19 | </div> 20 | 21 | </body> 22 | </html> 23 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/21_canvas.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>canvas</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <canvas style="width:400px;height:400px"></canvas> 8 | </body> 9 | </html> 10 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/22_abs_pos.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>absolute</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <div> 8 | xyz 9 | <div style='position:absolute;width:30px;height:30px;left:100px;top:100px;background-color:blue'> 10 | 12345 11 | <span style='position:absolute;height:30px;left:0px;top:20px;background-color:red'>123</span> 12 | <span style='position:absolute;height:30px;left:0px;top:35px;background-color:red'>AboutMe</span> 13 | 67890 14 | </div> 15 | abc 16 | </div> 17 | </body> 18 | </html> 19 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/23_relative_pos.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>absolute</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <div style='position:relative;width:100px;height:100px;left:30px;top:50px'> 8 | one 9 | <div style='position:absolute;width:20px;height:20px;top:0px;left:0px'>two</div> 10 | <div style='position:absolute;width:20px;height:20px;top:15px;left:20px'>three</div> 11 | 123 12 | </div> 13 | </body> 14 | </html> 15 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/24_fixed_pos.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>fixed</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <div> 8 | xyz 9 | <div style='position:fixed;width:30px;height:30px;left:100px;top:100px;background-color:blue'> 10 | 12345 11 | <span style='position:fixed;height:30px;left:0px;top:20px;background-color:red'>123</span> 12 | <span style='position:fixed;height:30px;left:0px;top:35px;background-color:red'>AboutMe</span> 13 | 67890 14 | </div> 15 | abc 16 | </div> 17 | </body> 18 | </html> 19 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/25_center_pos.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>center</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <div> 8 | xyz 9 | <div style='position:center;width:120px;height:30px;left:100px;top:100px;background-color:blue'> 10 | 12345 11 | <span style='position:center;height:30px;background-color:red'>123</span> 12 | <span style='position:center;height:30px;background-color:red'>AboutMe</span> 13 | 67890 14 | </div> 15 | abc 16 | </div> 17 | </body> 18 | </html> 19 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/26_abs_pos2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>padding</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <div style="position:relative"> 8 | <div style="position:absolute;left:0px;top:0px;width:5px;height:5px;border:5px solid red;">A</div> 9 | </div> 10 | </body> 11 | </html> 12 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/30_padding.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>padding</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <span style='padding:10px'>A</span><span style='padding:10px'>B C D</span> 8 | </body> 9 | </html> 10 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/32_overflow_content.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>overflow</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <div style="width:80px;height:100px;overflow:scroll"> 8 | A0123456789abcde B0123456789abcde C0123456789abcde 9 | D0123456789abcde E0123456789abcde F0123456789abcde 10 | G0123456789abcde H0123456789abcde I0123456789abcde 11 | </div> 12 | <div> 13 | L0123456789abcde M0123456789abcde N0123456789abcde 14 | O0123456789abcde P0123456789abcde Q0123456789abcde 15 | R0123456789abcde S0123456789abcde T0123456789abcde 16 | </div> 17 | <div style="width:80px;height:100px;overflow:hidden"> 18 | L0123456789abcde M0123456789abcde N0123456789abcde 19 | O0123456789abcde P0123456789abcde Q0123456789abcde 20 | R0123456789abcde S0123456789abcde T0123456789abcde 21 | </div> 22 | </body> 23 | </html> 24 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/33_box_shadow1.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>styles1</title> 4 | </head> 5 | <body> 6 | <div style="background-color:yellow;width:100px;height:100px;font:14pt tahoma;box-shadow:5px 5px;"> 7 | <div> 8 | <span>A1</span> 9 | </div> 10 | </div> 11 | </body> 12 | </html> 13 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/40_div.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>div</title> 4 | </head> 5 | <body> 6 | <div style="width:800px;height:600px;background-color:yellow"> 7 | 8 | </div> 9 | </body> 10 | </html> 11 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/50_input.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>inline-block</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <img src="html32.png"></img> 8 | <input type="text" style="width:300px">AA</input> 9 | <input type="text" style="width:300px" placeholder="hello!">BB</input> 10 | <input type="button">click me!</input> 11 | </body> 12 | </html> 13 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/51_htmlAttr.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>attrs</title> 4 | </head> 5 | <body> 6 | <div testAttr1 testAttr2 testAttr4=12.3 testAttr3=abc style="-company1:20" > 7 | hello! 8 | </div> 9 | </body> 10 | </html> 11 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/52_box2.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>attrs</title> 4 | </head> 5 | <body> 6 | <div style="display:inline-block;width:60px;height:30px"> 7 | <div style="padding:5px;background-color:#dddddd;"> 8 | <span>button1</span> 9 | </div> 10 | </div> 11 | <div style="display:inline-block;width:60px;height:30px"> 12 | <div style="padding:5px;background-color:#dddddd;"> 13 | <span>button1</span> 14 | </div> 15 | </div> 16 | <div> 17 | simple div 18 | </div> 19 | </body> 20 | </html> 21 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/53_box_sizing.html: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | </head> 5 | <body> 6 | <div style="width:30em;border:1em solid;"> 7 | <div style="box-sizing:border-box;width:50%;border: 1em solid red;float:left">This div occupies the left half.</div> 8 | <div style="box-sizing:border-box;width:50%;border: 1em solid red;float:left">This div occupies the right half.</div> 9 | <div style="clear:both;"></div> 10 | </div> 11 | </body> 12 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/54_float1.htm: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | </head> 5 | <body> 6 | <p style='background-color:yellow;padding:2px'>a<span style="background-color:blue;float:right">b</span>c</p> 7 | </body> 8 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/55_float2.htm: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | </head> 5 | <body> 6 | 7 | <p style="background-color:yellow;float:left;">X1 yellow</p> 8 | <p style="background-color:lime;float:right;">X2 lime</p> 9 | <p style="background-color:red;">A1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 redA1 red</p> 10 | <p style="background-color:blue;float:left">A2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 blueA2 </p> 11 | </body> 12 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/56_float3.htm: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | </head> 5 | <body> 6 | <p style='background-color:yellow;padding:2px'>aaaaaaaaaaaaaaaaaaaaa 7 | <span style="background-color:blue;float:left">x1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12</span> 8 | bbbbbbbbbbbbbbbbbbbb 9 | <span style="background-color:blue;float:right">x2 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12</span> 10 | cccccccccccccccccccc 11 | <span style="background-color:blue;float:right">x3 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12</span> 12 | dddddddddddddddddddd 13 | x</p> 14 | <p style='background-color:yellow;padding:2px'>aaaaaaaaaaaaaaaaaaaaa 15 | <span style="background-color:blue;">x1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12</span> 16 | bbbbbbbbbbbbbbbbbbbb 17 | <span style="background-color:blue;">x2 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12</span> 18 | cccccccccccccccccccc 19 | <span style="background-color:blue;">x3 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12</span> 20 | dddddddddddddddddddd 21 | x</p> 22 | </body> 23 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/57_float4.htm: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | </head> 5 | <body> 6 | <p style='background-color:yellow;padding:2px'>aaaaaaaaaaaaaaaaaaaaa 7 | <span style="background-color:blue;float:left">x1 12 12 12 12 12 12 12x1 12 12 12 12 12 12 12</span>x 8 | <span style="background-color:blue;float:left">y1 10 10 10 10 10 10 10y1 10 10 10 10 10 10 10</span>y 9 | <span style="background-color:blue;float:left">z1 12 12 12 12 12 12 12z1 12 12 12 12 12 12 12</span>z 10 | </p> 11 | 12 | </body> 13 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/58_box_sizing2.html: -------------------------------------------------------------------------------- 1 | <!DOCTYPE html> 2 | <html> 3 | <head> 4 | </head> 5 | <body> 6 | <div style="background-color:yellow"> 7 | <div style="width:10px;border-style:solid;border-width:10px;border-color: black;"> 8 | <div style="box-sizing:border-box;width:150px;border-style:solid;border-width:10px;border-color: red;float:left">This div occupies the left half.</div> 9 | <div style="border-style:solid;border-width:10px;border-color: red;float:left">This div occupies the left half.</div> 10 | </div> 11 | </div> 12 | <div> 13 | NEXT 14 | </div> 15 | </body> 16 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/html32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Samples/Basic/html32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Basic/stylesheet1.css: -------------------------------------------------------------------------------- 1 | h1, h2, h3 { color: navy; font-weight:normal; } 2 | h1 { margin-bottom: .47em } 3 | h2 { margin-bottom: .3em } 4 | h3 { margin-bottom: .4em } 5 | ul { margin-top: .5em } 6 | ul li {margin: .25em} 7 | body { font:10pt Tahoma } 8 | pre { border:solid 1px gray; background-color:#eee; padding:1em } 9 | a:link { text-decoration: none; } 10 | a:hover { text-decoration: underline; } 11 | .gray { color:gray; } 12 | .example { background-color:#efefef; corner-radius:5px; padding:0.5em; } 13 | .whitehole { background-color:white; corner-radius:10px; padding:15px; } 14 | .caption { font-size: 1.1em } 15 | .comment { color: green; margin-bottom: 5px; margin-left: 3px; } 16 | .comment2 { color: green; } -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/ClassicSamples/00.Intro2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>Intro</title> 4 | <link rel="Stylesheet" href="stylesheet1.css" /> 5 | </head> 6 | <body> 7 | <table width="100%"> 8 | <tr style="vertical-align: top;"> 9 | <td style="width:80px;padding: 2px 5px 0px 0px"> 10 | OKOK 11 | </td> 12 | <td> 13 | AAA 14 | </td> 15 | </tr> 16 | </table> 17 | </body> 18 | </html> 19 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/ClassicSamples/html32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Samples/ClassicSamples/html32.png -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/ClassicSamples/stylesheet1.css: -------------------------------------------------------------------------------- 1 | h1, h2, h3 { color: navy; font-weight:normal; } 2 | h1 { margin-bottom: .47em } 3 | h2 { margin-bottom: .3em } 4 | h3 { margin-bottom: .4em } 5 | ul { margin-top: .5em } 6 | ul li {margin: .25em} 7 | body { font:10pt Tahoma } 8 | pre { border:solid 1px gray; background-color:#eee; padding:1em } 9 | a:link { text-decoration: none; } 10 | a:hover { text-decoration: underline; } 11 | .gray { color:gray; } 12 | .example { background-color:#efefef; corner-radius:5px; padding:0.5em; } 13 | .whitehole { background-color:white; corner-radius:10px; padding:15px; } 14 | .caption { font-size: 1.1em } 15 | .comment { color: green; margin-bottom: 5px; margin-left: 3px; } 16 | .comment2 { color: green; } -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Experiment/1_simple_flex.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>simple flex</title> 4 | </head> 5 | <body> 6 | <div style="display:flex;width:300px"> 7 | <div style="width:20px">1</div> 8 | <div style="width:20px">2</div> 9 | <div style="width:20px">3</div> 10 | <div style="width:20px">4</div> 11 | </div> 12 | <div style="display:flex;width:300px"> 13 | <div>1</div> 14 | <div>2</div> 15 | <div>3</div> 16 | <div>4</div> 17 | </div> 18 | <div style="display:flex;width:300px"> 19 | <div style="flex-grow:1">1</div> 20 | <div style="flex-grow:1">2</div> 21 | <div style="flex-grow:1">3</div> 22 | <div style="flex-grow:1">4</div> 23 | </div> 24 | <div style="display:flex;width:300px"> 25 | <div style="flex-grow:1">1</div> 26 | <div style="flex-grow:0">2</div> 27 | <div style="flex-grow:1">3</div> 28 | <div style="flex-grow:1">4</div> 29 | </div> 30 | </body> 31 | </html> 32 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Experiment/2_flex2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>simple flex2</title> 4 | </head> 5 | <body> 6 | <div style="display:flex;width:300px;height:60px;background-color:red;"> 7 | <div style="flex-grow:1;background-color:blue;">1</div> 8 | <div style="flex-grow:1;background-color:blue;">2</div> 9 | <div style="flex-grow:1;background-color:blue;">3</div> 10 | <div style="flex-grow:1;background-color:blue;">4</div> 11 | </div> 12 | </body> 13 | </html> 14 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Experiment/3_ext_flex.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>just my extension, no w3c standard</title> 4 | </head> 5 | <body> 6 | <div style="display:flex;width:300px;height:100px;flex-ext-num:9;"> 7 | <div style="flex-ext-part:1">A</div> 8 | <div style="flex-ext-part:3">B</div> 9 | <div style="flex-ext-part:6">C</div> 10 | <div style="flex-ext-part:8">D</div> 11 | </div> 12 | </body> 13 | </html> 14 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Experiment/4_custom_element.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>just my extension, no w3c standard</title> 4 | </head> 5 | <body> 6 | <fivespace style="width:300px;height:100px;"> 7 | <left_space expand="top bottom"> 8 | A 9 | </left_space> 10 | <right_space expand="top bottom"> 11 | B 12 | </right_space> 13 | </fivespace> 14 | </body> 15 | </html> 16 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/Experiment/5_template.html: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>just my extension, no w3c standard</title> 4 | </head> 5 | <body> 6 | <template id="test1"> 7 | Hello from template! 8 | </template> 9 | <div> 10 | hello! 11 | </div> 12 | </body> 13 | </html> 14 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/PerfSamples/1.Big table.htm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/Source/Test8_HtmlRenderer.Demo/Samples/PerfSamples/1.Big table.htm -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg01.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | <rect x="5px" y="5px" width="50px" height="50px" fill="red" stroke="black" stroke-width="1px"/> 12 | <rect x="100px" y="100px" width="50px" height="50px" fill="green" stroke="black" stroke-width="3px"/> 13 | <rect x="200px" y="200px" width="50px" height="50px" fill="blue" stroke="black" stroke-width="5px"/> 14 | 15 | OKOK 16 | </svg> 17 | </body> 18 | </html> 19 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg02.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | <rect x="5px" y="5px" width="50px" height="50px" fill="red" stroke="black" stroke-width="1px"/> 12 | <rect x="100px" y="100px" width="50px" height="50px" fill="green" stroke="black" stroke-width="3px"/> 13 | <rect x="200px" y="200px" width="50px" height="50px" fill="blue" stroke="black" stroke-width="5px" 14 | rx="20px" ry="20px" transform="rotate(-45 100 100)"/> 15 | 16 | OKOK 17 | </svg> 18 | </body> 19 | </html> 20 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg03_rounds.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | <circle cx="100px" cy="100px" r="50px" fill="orange" stroke="navy" stroke-width="10px"/> 12 | <ellipse cx="200px" cy="200px" rx="50px" ry="30px" fill="yellow" stroke="black" stroke-width="10px"/> 13 | OKOK 14 | </svg> 15 | </body> 16 | </html> 17 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg04_lines.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | <polygon points="60,0 120,0 180,60 180,120 120,180 60,180 0,120 0,60" fill="yellow" stroke="black" stroke-width="10px"/> 12 | <polyline points="200,200 250,250 250,200" fill="yellow" stroke="black" stroke-width="10px"/> 13 | OKOK 14 | </svg> 15 | </body> 16 | </html> 17 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg05_gradient.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg version="1.1"> 11 | <defs> 12 | <rect id="r1" width="350px" height="350px" stroke="black" stroke-width="1px"/> 13 | <linearGradient id="g1" x1="0%" y1="0%" x2="100%" y2="100%"> 14 | <stop stop-color="black" offset="0%"/> 15 | <stop stop-color="teal" offset="50%"/> 16 | <stop stop-color="white" offset="100%"/> 17 | </linearGradient> 18 | </defs> 19 | <use x="30px" y="25px" xlink:href="#r1" fill="url(#g1)"/> 20 | OKOK 21 | </svg> 22 | </body> 23 | </html> 24 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg06_path.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | 12 | <path fill="black" d="M150 0 L75 200 L225 200 Z"/> 13 | 14 | 15 | OKOK 16 | </svg> 17 | </body> 18 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg07_path2.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | 12 | <path id="lineAB" d="M 100 350 l 150 -300" stroke="red" 13 | stroke-width="3" fill="none" /> 14 | <path id="lineBC" d="M 250 50 l 150 300" stroke="red" 15 | stroke-width="3" fill="none" /> 16 | <path d="M 175 200 l 150 0" stroke="green" stroke-width="3" 17 | fill="none" /> 18 | <path d="M 100 350 q 150 -300 300 0" stroke="blue" 19 | stroke-width="5" fill="none" /> 20 | <g stroke="black" stroke-width="3" fill="black"> 21 | <circle id="pointA" cx="100" cy="350" r="3" /> 22 | <circle id="pointB" cx="250" cy="50" r="3" /> 23 | <circle id="pointC" cx="400" cy="350" r="3" /> 24 | </g> 25 | 26 | 27 | OKOK 28 | </svg> 29 | </body> 30 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg08_image.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | <image x="100" y="100" width="24px" height="24px" href="ImageIcon" fill="red"/> 12 | 13 | OKOK 14 | </svg> 15 | </body> 16 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg09_path3.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | <path class="SamplePath" d="M100,200 C100,100 250,100 250,200 S400,300 400,200" fill="none" stroke="red"/> 12 | OKOK 13 | </svg> 14 | </body> 15 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg10_arc.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | <path d="M300,200 h-150 a150,150 0 1,0 150,-150 z" 12 | fill="red" stroke="blue" stroke-width="5" /> 13 | <path d="M275,175 v-150 a150,150 0 0,0 -150,150 z" 14 | fill="yellow" stroke="blue" stroke-width="5" /> 15 | 16 | <path d="M100,350 l 50,-25 17 | a25,25 -30 0,1 50,-25 l 50,-25 18 | a25,50 -30 0,1 50,-25 l 50,-25 19 | a25,75 -30 0,1 50,-25 l 50,-25 20 | a25,100 -30 0,1 50,-25 l 50,-25" 21 | fill="none" stroke="green" stroke-width="5" /> 22 | 23 | OKOK 24 | </svg> 25 | </body> 26 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg11_arc.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | 12 | <path d="M50 200 a 30 50 0 1 1 250 0" stroke="black" stroke-width="3" fill="none"/> 13 | <path d="M50 200 a 200 50 0 1 1 250 0" stroke="blue" stroke-width="3" fill="none"/> 14 | <path d="M50 200 a 100 50 20 1 1 250 0" stroke="green" stroke-width="3" fill="none"/> 15 | <path d="M50 200 a 100 50 30 1 1 250 0" stroke="yellow" stroke-width="3" fill="none"/> 16 | <path d="M50 200 a 100 50 40 1 1 250 0" stroke="red" stroke-width="3" fill="none"/> 17 | <path d="M50 200 a 100 50 50 1 1 250 0" stroke="orange" stroke-width="3" fill="none"/> 18 | <path d="M50 200 a 100 50 60 1 1 250 0" stroke="black" stroke-width="3" fill="none"/> 19 | <path d="M400 300 a 100 50 45 1 1 250 50" stroke="black" stroke-width="3" fill="none"/> 20 | <path d="M750 200 a 100 50 135 1 1 250 50" stroke="black" stroke-width="3" fill="none"/> 21 | 22 | OKOK 23 | </svg> 24 | </body> 25 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg12_arc.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:500px;height:500px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | 12 | <path d="M300 50 a 150 50 0 0 0 250 50" stroke="black" stroke-width="3" fill="none"/> 13 | <path d="M300 200 a 150 50 0 0 1 250 50" stroke="black" stroke-width="3" fill="none"/> 14 | <path d="M700 50 a 150 50 0 1 0 250 50" stroke="black" stroke-width="3" fill="none"/> 15 | <path d="M700 200 a 150 50 0 1 1 250 50" stroke="black" stroke-width="3" fill="none"/> 16 | 17 | 18 | OKOK 19 | </svg> 20 | </body> 21 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg13_curve.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:800px;height:600px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | 12 | <path d="M414 20q-163 40 -245 126t-82 276z"/> 13 | 14 | 15 | OKOK 16 | </svg> 17 | </body> 18 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg14_.svg: -------------------------------------------------------------------------------- 1 | <svg xmlns="http://www.w3.org/2000/svg" viewbox="0,0,800,1600"> 2 | <path d="M414 20q-163 40 -245 126t-82 276z"/> 3 | 4 | <path d= "M 879 562 C879 695.333 858.667 796.5 818 865.5 C777.333 934.5 712 969 622 969 C570.667 969 518.833 957 466.5 933 C414.167 909 366.667 878.667 324 842 L324 202 C371.333 178.667 413.333 162.167 450 152.5 C486.667 142.833 527 138 571 138 C667 138 742.333 172 797 240 C851.667 308 879 415.333 879 562 Z"/> 5 | 6 | 7 | </svg> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/SvgSamples/svg15_curve.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <link rel="Stylesheet" href="StyleSheet" /> 4 | <style type="text/css"> 5 | svg {diplay:block;background-color:gray;width:800px;height:600px} 6 | </style> 7 | </head> 8 | <body> 9 | <h3> Hello SVG!</h3> 10 | <svg> 11 | 12 | <path d="M414 -20q-163 0 -245 86t-82 236q0 107 40.5 175.5t106 107.5t149.5 54t171 17l243 4v59q0 67 -14 114t-43 76t-72.5 42.5t-102.5 13.5q-52 0 -94 -7.5t-73 -27t-50 -53t-25 -84.5l-188 17q10 64 38 117.5t79.5 92.5t129 60.5t187.5 21.5q204 0 307 -93.5t103 -270.5 13 | v-466q0 -80 21 -120.5t80 -40.5q15 0 30 2t29 5v-112q-34 -8 -67.5 -12t-71.5 -4q-51 0 -87.5 13.5t-59.5 41t-35 68t-15 94.5h-6q-29 -52 -63.5 -94t-80.5 -71.5t-104.5 -45.5t-134.5 -16zM455 115q86 0 150.5 31.5t107 80.5t63.5 107t21 111v89l-197 -4 14 | q-66 -1 -125.5 -9.5t-104.5 -33.5t-71.5 -70t-26.5 -118q0 -88 47.5 -136t135.5 -48z"/> 15 | 16 | 17 | OKOK 18 | </svg> 19 | </body> 20 | </html> -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/01.Header.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <span style="background-color: #eee">Stub simple text</span> 4 | 5 | <h1 style="background-color: #aea">H1 Header text</h1> 6 | <span style="background-color: #eee">Stub simple text</span> 7 | 8 | <h2 style="background-color: #aea">H2 Header text</h2> 9 | <span style="background-color: #eee">Stub simple text</span> 10 | 11 | <h3 style="background-color: #aea">H3 Header text</h3> 12 | <span style="background-color: #eee">Stub simple text</span> 13 | 14 | <h4 style="background-color: #aea">H4 Header text</h4> 15 | <span style="background-color: #eee">Stub simple text</span> 16 | 17 | <h5 style="background-color: #aea">H5 Header text</h5> 18 | <span style="background-color: #eee">Stub simple text</span> 19 | 20 | <h6 style="background-color: #aea">H6 Header text</h6> 21 | <span style="background-color: #eee">Stub simple text</span> 22 | </body> 23 | </html> 24 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/03.Paragraphs.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <h1 style="background-color:#aae;">Case 1</h1> 4 | <div style="background-color:#eaa"> 5 | <p style="background-color:#aae">2009 Jose Manuel Menendez Poo</p> 6 | </div> 7 | <hr/> 8 | <h1 style="background-color:#aae;">Case 2</h1> 9 | <span style="background-color:#eaa"> 10 | <p style="background-color:#aae">2009 Jose Manuel Menendez Poo</p> 11 | </span> 12 | <hr/> 13 | <h1 style="background-color:#aae;">Case 3</h1> 14 | <blockquote style="background-color:#aae;"> 15 | <p>Text</p> 16 | </blockquote> 17 | <hr/> 18 | <h1 style="background-color:#aae;">Case 4</h1> 19 | <p style="background-color:#aea;"> 20 | <blockquote style="background-color:#aae;">Text</blockquote> 21 | </p> 22 | <hr/> 23 | <h1 style="background-color:#aae;">Case 5</h1> 24 | <div style="background-color:#aea;"> 25 | Text 26 | <h1 style="background-color:#aae;">About</h1> 27 | </div> 28 | <p>2009 Jose Manuel Menendez Poo</p> 29 | <hr/> 30 | <h1 style="background-color:#aae;">Case 6</h1> 31 | <span style="background-color:#aea;"> 32 | Text 33 | <h1 style="background-color:#aae;">About</h1> 34 | </span> 35 | <hr/> 36 | </body> 37 | </html> 38 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/04.Blockquotes.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <h1 style="background-color:#aea;">Case 1</h1> 4 | <blockquote style="background-color:#aea;">Text</blockquote> 5 | <hr/> 6 | <h1 style="background-color:#aea;">Case 2</h1> 7 | <blockquote style="background-color:#aea;"> 8 | <p>Text</p> 9 | </blockquote> 10 | <hr/> 11 | <h1 style="background-color:#aea;">Case 3</h1> 12 | <blockquote style="background-color:#aea;"> 13 | <span>Text</span> 14 | </blockquote> 15 | <hr/> 16 | <h1 style="background-color:#aea;">Case 4</h1> 17 | <blockquote style="background-color:#aea;"> 18 | <div>Text</div> 19 | </blockquote> 20 | <hr/> 21 | <h1 style="background-color:#aea;">Case 5</h1> 22 | <blockquote style="background-color:#aea;"> 23 | <h2>Text</h2> 24 | </blockquote> 25 | <hr/> 26 | </body> 27 | </html> 28 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/05.Images.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <h1 style="background-color: #aea;">Inline image</h1> 4 | <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="> 5 | <hr /> 6 | <h2>Block image</h2> 7 | <img src="ImageIcon" style="display: block" /> 8 | <hr /> 9 | <h1 style="background-color: #aea;">Case 1</h1> 10 | <img src="ImageIcon" /> 11 | Text 12 | <hr /> 13 | <h1 style="background-color: #aea;">Case 2</h1> 14 | <div style="background-color: #aea;">Text1</div> 15 | <img src="ImageIcon" /> 16 | <div style="background-color: #aea;">Text2</div> 17 | <hr /> 18 | <h1 style="background-color: #aea;">Case 3</h1> 19 | <div style="background-color: #aea;">Text1</div> 20 | <span style="background-color: #aea;">Text2</span> 21 | <img src="ImageIcon" /> 22 | <span style="background-color: #aea;">Text3</span> 23 | <div style="background-color: #aea;">Text4</div> 24 | <hr /> 25 | <h1 style="background-color: #aea;">Case 4</h1> 26 | <div style="background-color: #aea;">Text1</div> 27 | <span style="background-color: #aea;">Text2</span> 28 | <img src="PropertyIcon" /> 29 | <span style="background-color: #aea;">Text3</span> 30 | <div style="background-color: #aea;">Text4</div> 31 | <hr /> 32 | </body> 33 | </html> 34 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/06.External Image.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <div> 4 | Local File: 5 | </div> 6 | <img height="100" src="c:\test.png"/> 7 | <hr/> 8 | <div> 9 | From web: 10 | </div> 11 | <img height="100" src="http://www.canadianpetconnection.com/wp-content/uploads/2011/09/Cats1.jpg"/> 12 | <hr /> 13 | <div> 14 | GIF: 15 | </div> 16 | <img src="http://24.media.tumblr.com/7995829378e93457f5dd3c10445ec00e/tumblr_mekn6vBZkI1rf089no1_500.gif" height="100" /> 17 | <hr/> 18 | <div> 19 | By event: 20 | </div> 21 | <img height="100" byevent="1000"/> 22 | <br/> 23 | <br/> 24 | <img style="width:100%" src="http://www.canadianpetconnection.com/wp-content/uploads/2011/09/Cats1.jpg"/> 25 | </body> 26 | </html> 27 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/08.White-space.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <p> 4 | The ',' after hello need to wrap with hello and not seperatly: <span>hello</span>, world 5 | </p> 6 | <hr/> 7 | <p> 8 | <span style="white-space: nowrap; background-color: Silver;">1. image001.jpg</span>, <span style="white-space: nowrap; background-color: Silver;">2. image002.jpg</span>, <span style="white-space: nowrap; background-color: Silver;">3. image003.jpg</span> 9 | </p> 10 | <hr /> 11 | <pre style="background-color: white"> 12 | <span style="color: green">//Example of code using preformatted text</span> 13 | <span style="color: blue">public class</span> HelloWorld 14 | { 15 | <span style="color: blue">public</span> HelloWorld() 16 | { 17 | <span style="color: #099">MessageBox</span>.Show(<span color="maroon">"Hello World"</span>); 18 | } 19 | }</pre> 20 | </body> 21 | </html> 22 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/09.Inline.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <div> 4 | code<strong>Plex</strong> 5 | </div> 6 | <hr /> 7 | <div> 8 | code <i>Plex</i> 9 | </div> 10 | <hr /> 11 | <div style="font-family: arial"> 12 | <a href="">CodePlex</a> code<strong>Plex</strong> 13 | </div> 14 | <hr /> 15 | <span><a href="">CodePlex</a> code<strong>Plex</strong> code</span> 16 | <hr /> 17 | <div> 18 | <span>Hello</span> <span>World</span> 19 | </div> 20 | <div> 21 | Hello<span> <span>World</span></span> 22 | </div> 23 | <div> 24 | <span><span>Hello</span> </span>World 25 | </div> 26 | </body> 27 | </html> 28 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/10.BlockInInline.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <div> 4 | <span style="color: blue; display: ">1 <span style="color: red">a 5 | <p> 6 | b 7 | </p> 8 | c d </span>2</span> 9 | </div> 10 | <hr /> 11 | <div> 12 | <div> 13 | <span>Client Binaries</span> 14 | </div> 15 | <div> 16 | <span> 17 | <br /> 18 | </span>sdf 19 | </div> 20 | </div> 21 | <hr /> 22 | <div> 23 | <span>Text1</span><br> 24 | <span>Text2<br> 25 | </span><span>Text3</span> 26 | </div> 27 | <hr /> 28 | <div> 29 | <span>Text1</span><span><br> 30 | </span><span>Text2</span> 31 | </div> 32 | <hr /> 33 | <div> 34 | <a href="http://www.amazon.com">go to 35 | <br> 36 | amazon(fails)</a> 37 | </div> 38 | <hr /> 39 | <div> 40 | <span><span> 41 | <br /> 42 | </span><span>1<br /> 43 | 2 </span></span> 44 | </div> 45 | <hr /> 46 | <div> 47 | text text<span><br /> 48 | bla 49 | </span> 50 | </div> 51 | <hr /> 52 | 53 | <span style="color: red">1<br /> 54 | <br /> 55 | 2<br /> 56 | <br /> 57 | <br /> 58 | 3<br /> 59 | <br /> 60 | <br /> 61 | <br /> 62 | 4<br /> 63 | </span> 64 | </body> 65 | </html> 66 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/11.LineHeight.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body style="font: 10pt tahoma;"> 3 | <h2>Control line height</h2> 4 | <p style="line-height: 1.5em;"> 5 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur ornare mollis 6 | elit. Integer sagittis. Fusce elementum commodo felis. Vivamus lacinia eleifend 7 | libero. Donec lacus. Nam sit amet urna. Nullam nulla. Donec accumsan porta magna. 8 | Mauris a dolor eu elit rutrum commodo. Nam iaculis turpis non augue. Nullam lobortis 9 | egestas risus. Nulla elementum dolor ac mauris. Ut tristique. In varius volutpat 10 | metus. Integer leo dolor, tristique a, dignissim ac, iaculis eget, elit. Donec arcu. 11 | </p> 12 | <hr /> 13 | <h2>Limit block height with overflow: hidden</h2> 14 | <p> 15 | <div style="height: 25px; line-height: 20px; overflow: hidden;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur ornare mollis 16 | elit. Integer sagittis. Fusce elementum commodo felis. Vivamus lacinia eleifend 17 | libero. Donec lacus. Nam sit amet urna. Nullam nulla. Donec accumsan porta magna. 18 | Mauris a dolor eu elit rutrum commodo. Nam iaculis turpis non augue. Nullam lobortis 19 | egestas risus. Nulla elementum dolor ac mauris. Ut tristique. In varius volutpat 20 | metus. Integer leo dolor, tristique a, dignissim ac, iaculis eget, elit. Donec arcu.</div> 21 | </p> 22 | <hr /> 23 | </body> 24 | </html> 25 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/14.Iframes.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <div> 4 | <h2> 5 | Youtube</h2> 6 | <p> 7 | <iframe frameborder="0" height="350" src="https://www.youtube.com/embed/tntOCGkgt98?wmode=transparent" 8 | width="425"></iframe> 9 | </p> 10 | <hr /> 11 | <h2> 12 | Vimeo</h2> 13 | <p> 14 | <iframe frameborder="0" height="350" src="https://player.vimeo.com/video/41254501" 15 | width="480"></iframe> 16 | </p> 17 | <hr /> 18 | <h2> 19 | Not video iframe</h2> 20 | <p> 21 | <iframe frameborder="0" height="350" src="https://www.google.com" 22 | width="350"></iframe> 23 | </p> 24 | </div> 25 | </body> 26 | </html> 27 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/16.Borders.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <div> 4 | <p> 5 | <div style="padding: 5px; border: 1px solid black"> 6 | simple border 1px 7 | </div> 8 | </p> 9 | <p> 10 | <div style="padding: 5px; border: 3px solid red"> 11 | simple border 3px 12 | </div> 13 | </p> 14 | <p> 15 | <div style="padding: 5px; border: 1px solid black; corner-radius: 5px;"> 16 | border 1px with corner-radius 5px 17 | </div> 18 | </p> 19 | <p> 20 | <div style="padding: 5px; border: 2px solid black; corner-radius: 10px;"> 21 | border 2px with corner-radius 10px 22 | </div> 23 | </p> 24 | <p> 25 | <div style="padding: 5px; border: 1px dotted blue;"> 26 | dotted border 1px 27 | </div> 28 | </p> 29 | <p> 30 | <div style="padding: 5px; border: 3px dotted blue;"> 31 | dotted border 3px 32 | </div> 33 | </p> 34 | <p> 35 | <div style="padding: 5px; border: 1px dashed darkred;"> 36 | dashed border 1px 37 | </div> 38 | </p> 39 | <p> 40 | <div style="padding: 5px; border: 2px dashed darkred; corner-radius: 10px;"> 41 | dashed border 2px with corner-radius 10px 42 | </div> 43 | </p> 44 | </div> 45 | </body> 46 | </html> 47 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/17.Languages.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <div> 4 | <h2>Validate Unicode rendering</h2> 5 | <p>العربية</p> 6 | <p>Bahasa Indonesia</p> 7 | <p>Bahasa Melayu</p> 8 | <p>Български</p> 9 | <p>Català</p> 10 | <p>Česky</p> 11 | <p>Dansk</p> 12 | <p>Deutsch</p> 13 | <p>Eesti</p> 14 | <p>Ελληνικά</p> 15 | <p>Español</p> 16 | <p>Esperanto</p> 17 | <p>Euskara</p> 18 | <p>فارسی</p> 19 | <p>Français</p> 20 | <p>Galego</p> 21 | <p>한국어</p> 22 | <p>עברית</p> 23 | <p>Hrvatski</p> 24 | <p>Italiano</p> 25 | <p>Lietuvių</p> 26 | <p>Magyar</p> 27 | <p>Nederlands</p> 28 | <p>日本語</p> 29 | <p>Norsk bokmål</p> 30 | <p>Norsk nynorsk</p> 31 | <p>Polski</p> 32 | <p>Português</p> 33 | <p>Română</p> 34 | <p>Русский</p> 35 | <p>Slovenčina</p> 36 | <p>Slovenščina</p> 37 | <p>Српски / srpski</p> 38 | <p>Srpskohrvatski / српскохрватски</p> 39 | <p>Suomi</p> 40 | <p>Svenska</p> 41 | <p>ไทย</p> 42 | <p>Tiếng Việt</p> 43 | <p>Türkçe</p> 44 | <p>Українська</p> 45 | <p>中文</p> 46 | </div> 47 | </body> 48 | </html> 49 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/22.RTL.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <body> 3 | <div dir="rtl"> 4 | <div>שלום עולם, יש ברבורים בעגם הזה</div> 5 | <br /> 6 | <div>שלום עולם, יש ברבורים בעגם הזה</div> 7 | <div>שלום עולם, יש ברבורים בעגם הזה</div> 8 | </div> 9 | <hr/> 10 | <div dir="rtl"> 11 | <div>שלום עולם,<span>hello world</span> יש ברבורים בעגם הזה</div> 12 | <br /> 13 | <div>שלום עולם, יש ברבורים בעגם הזה</div> 14 | <div>שלום עולם, יש ברבורים בעגם הזה</div> 15 | </div> 16 | <hr/> 17 | </body> 18 | </html> 19 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/TestSamples/30.Misc.htm: -------------------------------------------------------------------------------- 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2 | <html> 3 | <body> 4 | <div> 5 | Single whitespace in seperate<span> </span>element 6 | </div> 7 | <div> 8 | Multiple whitespaces in seperate<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>element 9 | using &amp;nbsp; 10 | </div> 11 | <hr /> 12 | TOP 13 | <div style="background-color: yellow"> 14 | <div style="margin: 10%; background-color: gainsboro"> 15 | there are margin with percentage 16 | </div> 17 | </div> 18 | BOTTOM 19 | <hr /> 20 | <body> 21 | <div style="text-decoration: line-through"> 22 | <span>Line through : Text Text Text Text</span> 23 | </div> 24 | </body> 25 | <hr /> 26 | <div> 27 | Text <span style="display: inline-block; height: 16px; width: 26px; background-color: red;"></span>END 28 | </div> 29 | <hr /> 30 | <div> 31 | &amp;#37; 32 | <b/> 33 | <p><a href="&#109;&#97;&#x69;&#108;&#x74;&#x6f;:&#x74;&#x68;&#105;&#115;&#x2d;&#105;&#115;&#x2d;&#x61;&#x2d;&#116;&#x65;&#x73;&#x74;&#64;&#x65;&#x78;&#x61;&#x6d;&#x70;&#108;&#x65;&#46;&#x63;&#x6f;&#x6d;">&#x74;&#x68;&#105;&#115;&#x2d;&#105;&#115;&#x2d;&#x61;&#x2d;&#116;&#x65;&#x73;&#x74;&#64;&#x65;&#x78;&#x61;&#x6d;&#x70;&#108;&#x65;&#46;&#x63;&#x6f;&#x6d;</a></p> 34 | </div> 35 | </body> 36 | </html> 37 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/WordSplit/1.th_TH.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>styles1</title> 4 | </head> 5 | <body> 6 | <div style="font:12pt tahoma"> 7 | <div> 8 | <span>ผู้ใหญ่หาผ้าใหม่ ให้สะใภ้ใช้คล้องคอ</span> 9 | <span>ใฝ่ใจเอาใส่ห่อ มิหลงใหลใครขอดู</span> 10 | <span>จะใคร่ลงเรือใบ ดูน้ำใสและปลาปู</span> 11 | <span>สิ่งใดอยู่ในตู้ มิใช่อยู่ใต้ตั่งเตียง</span> 12 | <span>บ้าใบ้ถือใยบัว หูตามัวมาใกล้เคียง</span> 13 | <span>เล่าท่องอย่าละเลี่ยง ยี่สิบม้วนจำจงดี</span> 14 | </div> 15 | </div> 16 | <div style="font:12pt tahoma;width: 200px"> 17 | <div> 18 | <span>ผู้ใหญ่หาผ้าใหม่ ให้สะใภ้ใช้คล้องคอ</span> 19 | <span>ใฝ่ใจเอาใส่ห่อ มิหลงใหลใครขอดู</span> 20 | <span>จะใคร่ลงเรือใบ ดูน้ำใสและปลาปู</span> 21 | <span>สิ่งใดอยู่ในตู้ มิใช่อยู่ใต้ตั่งเตียง</span> 22 | <span>บ้าใบ้ถือใยบัว หูตามัวมาใกล้เคียง</span> 23 | <span>เล่าท่องอย่าละเลี่ยง ยี่สิบม้วนจำจงดี</span> 24 | </div> 25 | </div> 26 | <div style="font:12pt tahoma;width: 50px"> 27 | <div> 28 | <span>ผู้ใหญ่หาผ้าใหม่ ให้สะใภ้ใช้คล้องคอ</span> 29 | <span>ใฝ่ใจเอาใส่ห่อ มิหลงใหลใครขอดู</span> 30 | <span>จะใคร่ลงเรือใบ ดูน้ำใสและปลาปู</span> 31 | <span>สิ่งใดอยู่ในตู้ มิใช่อยู่ใต้ตั่งเตียง</span> 32 | <span>บ้าใบ้ถือใยบัว หูตามัวมาใกล้เคียง</span> 33 | <span>เล่าท่องอย่าละเลี่ยง ยี่สิบม้วนจำจงดี</span> 34 | </div> 35 | </div> 36 | </body> 37 | </html> 38 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/WordSplit/2.Symbols.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>styles1</title> 4 | </head> 5 | <body> 6 | <div style="font:12pt tahoma"> 7 | <div> 8 | <span>lmnopq(123+456*789/abcd)</span> 9 | </div> 10 | </div> 11 | <div style="font:12pt tahoma;width: 100px"> 12 | <div> 13 | <span>lmnopq(123+456*789/abcd)</span> 14 | </div> 15 | </div> 16 | <div style="font:12pt tahoma;width: 20px"> 17 | <div> 18 | <span>lmnopq(123+456*789/abcd)</span> 19 | </div> 20 | </div> 21 | </body> 22 | </html> 23 | -------------------------------------------------------------------------------- /Source/Test8_HtmlRenderer.Demo/Samples/WordSplit/3.Symbols.htm: -------------------------------------------------------------------------------- 1 | <html> 2 | <head> 3 | <title>styles1</title> 4 | </head> 5 | <body> 6 | <div style="font:12pt tahoma"> 7 | ABC<span> </span>DEF 8 | </div> 9 | </body> 10 | </html> 11 | -------------------------------------------------------------------------------- /Source/Tools/BuildMergeProject/Program.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2017, WinterDev 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Windows.Forms; 6 | namespace BuildMergeProject 7 | { 8 | static class Program 9 | { 10 | /// <summary> 11 | /// The main entry point for the application. 12 | /// </summary> 13 | [STAThread] 14 | static void Main() 15 | { 16 | Application.EnableVisualStyles(); 17 | Application.SetCompatibleTextRenderingDefault(false); 18 | 19 | StartupConfig.defaultSln = @"D:\projects\PixelFarm\a_mini\projects\MiniDev.sln"; 20 | 21 | Application.Run(new FormBuildMergeProject()); 22 | } 23 | } 24 | 25 | } 26 | 27 | -------------------------------------------------------------------------------- /Source/Tools/BuildMergeProject/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // <auto-generated> 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // </auto-generated> 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace BuildPixelFarmMerge.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Source/Tools/BuildMergeProject/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | <?xml version='1.0' encoding='utf-8'?> 2 | <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> 3 | <Profiles> 4 | <Profile Name="(Default)" /> 5 | </Profiles> 6 | <Settings /> 7 | </SettingsFile> 8 | -------------------------------------------------------------------------------- /Source/Tools/BuildMergeProject/app.config: -------------------------------------------------------------------------------- 1 | <?xml version="1.0"?> 2 | <configuration> 3 | <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration> 4 | -------------------------------------------------------------------------------- /Source/Tools/MergeProjectTool/FormBuildMergeProject.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2016-2017, WinterDev 2 | using System; 3 | using System.Windows.Forms; 4 | 5 | namespace BuildMergeProject 6 | { 7 | public partial class FormBuildMergeProject : Form 8 | { 9 | public FormBuildMergeProject() 10 | { 11 | InitializeComponent(); 12 | } 13 | private void FormBuildMergeProject_Load(object sender, EventArgs e) 14 | { 15 | if (StartupConfig.defaultSln != null) 16 | { 17 | mergeProjectsToolBox1.LoadSolution(StartupConfig.defaultSln); 18 | } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Source/Tools/MergeProjectTool/MergeProjectsToolBox.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2017, WinterDev 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.ComponentModel; 6 | using System.Drawing; 7 | using System.Text; 8 | using System.Windows.Forms; 9 | 10 | 11 | 12 | namespace BuildMergeProject 13 | { 14 | public partial class MergeProjectsToolBox : UserControl 15 | { 16 | SolutionMx slnMx; 17 | SolutionListViewController _slnListViewController; 18 | string slnFilename; 19 | public MergeProjectsToolBox() 20 | { 21 | InitializeComponent(); 22 | } 23 | public void LoadSolution(string slnFilename) 24 | { 25 | this.slnFilename = slnFilename; 26 | ////read sln file 27 | slnMx = new SolutionMx(); 28 | slnMx.ReadSolution(slnFilename); 29 | 30 | _slnListViewController = new SolutionListViewController(); 31 | _slnListViewController.SetSolutionListView(this.listView1); 32 | _slnListViewController.SetMergePlanListView(this.listView2); 33 | _slnListViewController.SetProjectReferenceListView(this.lstAsmReferenceList); 34 | _slnListViewController.LoadSolutionMx(slnMx); 35 | } 36 | 37 | private void cmdBuildSelectedMergePro_Click(object sender, EventArgs e) 38 | { 39 | _slnListViewController.BuildMergeProjectFromSelectedItem(); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Source/Tools/MergeProjectTool/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // <auto-generated> 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // </auto-generated> 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace MergeProjectTool.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.3.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Source/Tools/MergeProjectTool/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | <?xml version='1.0' encoding='utf-8'?> 2 | <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> 3 | <Profiles> 4 | <Profile Name="(Default)" /> 5 | </Profiles> 6 | <Settings /> 7 | </SettingsFile> 8 | -------------------------------------------------------------------------------- /Source/YourImplementation/Bootstrap/BootStrapOpenGLES2.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2017, WinterDev 2 | using System; 3 | using PixelFarm.Drawing; 4 | using PixelFarm.Drawing.Fonts; 5 | 6 | namespace YourImplementation 7 | { 8 | 9 | 10 | public static class BootStrapOpenGLES2 11 | { 12 | public static readonly IFontLoader myFontLoader = new WindowsFontLoader(); 13 | } 14 | 15 | 16 | } -------------------------------------------------------------------------------- /Source/YourImplementation/Bootstrap/BootStrapWinGdi.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2017, WinterDev 2 | using System; 3 | using PixelFarm.Drawing; 4 | using PixelFarm.Drawing.Fonts; 5 | 6 | namespace YourImplementation 7 | { 8 | public static class BootStrapWinGdi 9 | { 10 | public static readonly IFontLoader myFontLoader = new WindowsFontLoader(); 11 | } 12 | class WindowsFontLoader : IFontLoader 13 | { 14 | 15 | InstalledFontCollection installFontCollection = new InstalledFontCollection(); 16 | public WindowsFontLoader() 17 | { 18 | //iterate 19 | var installFontsWin32 = new InstallFontsProviderWin32(); 20 | installFontCollection.LoadInstalledFont(installFontsWin32.GetInstalledFontIter()); 21 | } 22 | public InstalledFont GetFont(string fontName, InstalledFontStyle style) 23 | { 24 | return installFontCollection.GetFont(fontName, style); 25 | } 26 | public void SetFontHotFoundHandler(FontNotFoundHandler fontNotFoundHandler) 27 | { 28 | installFontCollection.SetFontNotFoundHandler(fontNotFoundHandler); 29 | } 30 | } 31 | 32 | } -------------------------------------------------------------------------------- /Source/YourImplementation/Windows/WindowFontLoader.cs: -------------------------------------------------------------------------------- 1 | //MIT, 2014-2017, WinterDev 2 | 3 | using PixelFarm.Drawing.Fonts; 4 | 5 | namespace PixelFarm.Drawing 6 | { 7 | class WindowsFontLoader : IFontLoader 8 | { 9 | InstalledFontCollection installFontCollection = new InstalledFontCollection(); 10 | public WindowsFontLoader() 11 | { 12 | //iterate 13 | var installFontsWin32 = new InstallFontsProviderWin32(); 14 | installFontCollection.LoadInstalledFont(installFontsWin32.GetInstalledFontIter()); 15 | } 16 | public InstalledFont GetFont(string fontName, InstalledFontStyle style) 17 | { 18 | return installFontCollection.GetFont(fontName, style); 19 | } 20 | public void SetFontHotFoundHandler(FontNotFoundHandler fontNotFoundHandler) 21 | { 22 | installFontCollection.SetFontNotFoundHandler(fontNotFoundHandler); 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /html.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prepare/HTML-Renderer/cdaea9f9376bc6882311f07e0954be4a3a973e64/html.ico --------------------------------------------------------------------------------