Skip to content

Commit 7d93a34

Browse files
authored
Enabled translation of Symbol and Windings font
Symbol and Wingdings font causes issues on rendering the resulting html without these fonts available. These release implements a translation of chars that would be rendered using Symbol or Wingdings to unicode.
2 parents 96bd624 + 02838fc commit 7d93a34

21 files changed

+580
-39
lines changed

.vscode/extensions.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"recommendations": [
3+
"ms-dotnettools.csharp"
4+
]
5+
}

.vscode/settings.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@
88
"Rgba",
99
"nupkg",
1010
"snupkg"
11-
]
11+
],
12+
"editor.formatOnSave": true
1213
}

OpenXmlToHtml/OpenXmlToHtml.cs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public static class OpenXmlToHtml
1919
/// </summary>
2020
/// <param name="sourceOpenXmlFilePath"></param>
2121
/// <param name="destinationHtmlFilePath"></param>
22-
/// <returns></returns>
22+
/// <returns>selfContainedHtmlFilePath</returns>
2323
public static async Task ConvertToHtmlAsync(string sourceOpenXmlFilePath, string destinationHtmlFilePath)
2424
{
2525
if (!File.Exists(sourceOpenXmlFilePath))
@@ -33,11 +33,12 @@ public static async Task ConvertToHtmlAsync(string sourceOpenXmlFilePath, string
3333
await html.CopyToAsync(destinationHtmlFile).ConfigureAwait(false);
3434
}
3535

36+
3637
/// <summary>
3738
/// Converts docx to html
3839
/// </summary>
3940
/// <param name="sourceOpenXml"></param>
40-
/// <returns></returns>
41+
/// <returns>selfContainedHtml</returns>
4142
public static Task<Stream> ConvertToHtmlAsync(Stream sourceOpenXml)
4243
{
4344
return ConvertToHtmlAsync(sourceOpenXml, string.Empty);
@@ -48,7 +49,7 @@ public static Task<Stream> ConvertToHtmlAsync(Stream sourceOpenXml)
4849
/// </summary>
4950
/// <param name="sourceOpenXml"></param>
5051
/// <param name="fallbackPageTitle"></param>
51-
/// <returns></returns>
52+
/// <returns>selfContainedHtml</returns>
5253
public static Task<Stream> ConvertToHtmlAsync(Stream sourceOpenXml, string fallbackPageTitle)
5354
{
5455
if (sourceOpenXml == null)
@@ -72,7 +73,7 @@ private static async Task<Stream> ConvertToHtmlInternalAsync(Stream sourceOpenXm
7273

7374
var htmlElement = WmlToHtmlConverter.ConvertToHtml(wordProcessingDocument, CreateHtmlConverterSettings(pageTitle));
7475

75-
var html = new XDocument(new XDocumentType("html", null, null, null), htmlElement);
76+
var html = new XDocument(new XDocumentType("html", String.Empty, String.Empty, String.Empty), htmlElement);
7677

7778
var memoryStreamHtml = new MemoryStream();
7879
html.Save(memoryStreamHtml);
@@ -82,8 +83,9 @@ private static async Task<Stream> ConvertToHtmlInternalAsync(Stream sourceOpenXm
8283

8384
private static WmlToHtmlConverterSettings CreateHtmlConverterSettings(string pageTitle)
8485
{
85-
var settings = new WmlToHtmlConverterSettings(new DefaultImageHandler(), new WordprocessingTextSymbolToUnicodeHandler())
86+
var settings = new WmlToHtmlConverterSettings(new DefaultImageHandler(), new WordprocessingTextSymbolToUnicodeHandler(), new SymbolHandler())
8687
{
88+
GeneralCss = string.Empty,
8789
AdditionalCss = "@page { size: A4 } body { margin: 1cm auto; max-width: 20cm; padding: 0; }",
8890
PageTitle = pageTitle,
8991
FabricateCssClasses = true,

OpenXmlToHtml/OpenXmlToHtml.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@
3535

3636
<ItemGroup>
3737
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="all" />
38-
<PackageReference Include="OpenXmlPowerToolsStandard" Version="5.0.51-prerelease" />
39-
<PackageReference Include="SonarAnalyzer.CSharp" Version="8.16.0.25740">
38+
<PackageReference Include="OpenXmlPowerToolsStandard" Version="5.0.57-prerelease" />
39+
<PackageReference Include="SonarAnalyzer.CSharp" Version="8.17.0.26580">
4040
<PrivateAssets>all</PrivateAssets>
4141
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
4242
</PackageReference>

0 commit comments

Comments
 (0)