Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2016
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.58 KB | None | 0 0
  1. using DocumentFormat.OpenXml.Packaging;
  2. using OpenXmlPowerTools;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.IO;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Xml.Linq;
  10. using System.Drawing.Imaging;
  11.  
  12. namespace WordToHTML
  13. {
  14. class Program
  15. {
  16. static void Main(string[] args)
  17. {
  18. byte[] byteArray = File.ReadAllBytes("kk.docx");
  19.  
  20. using (MemoryStream memoryStream = new MemoryStream())
  21. {
  22. memoryStream.Write(byteArray, 0, byteArray.Length);
  23. using (WordprocessingDocument doc = WordprocessingDocument.Open(memoryStream, true))
  24. {
  25. int imageCounter = 0;
  26. HtmlConverterSettings settings = new HtmlConverterSettings()
  27. {
  28. PageTitle = "My Page Title",
  29. ImageHandler = imageInfo =>
  30. {
  31. DirectoryInfo localDirInfo = new DirectoryInfo("img");
  32. if (!localDirInfo.Exists)
  33. localDirInfo.Create();
  34. ++imageCounter;
  35. string extension = imageInfo.ContentType.Split('/')[1].ToLower();
  36. ImageFormat imageFormat = null;
  37. if (extension == "png")
  38. {
  39. extension = "gif";
  40. imageFormat = ImageFormat.Gif;
  41. }
  42. else if (extension == "gif")
  43. imageFormat = ImageFormat.Gif;
  44. else if (extension == "bmp")
  45. imageFormat = ImageFormat.Bmp;
  46. else if (extension == "jpeg")
  47. imageFormat = ImageFormat.Jpeg;
  48. else if (extension == "tiff")
  49. {
  50. extension = "gif";
  51. imageFormat = ImageFormat.Gif;
  52. }
  53. else if (extension == "x-wmf")
  54. {
  55. extension = "wmf";
  56. imageFormat = ImageFormat.Wmf;
  57. }
  58. if (imageFormat == null)
  59. return null;
  60.  
  61. string imageFileName = "img/image" +
  62. imageCounter.ToString() + "." + extension;
  63. try
  64. {
  65. imageInfo.Bitmap.Save(imageFileName, imageFormat);
  66. }
  67. catch (System.Runtime.InteropServices.ExternalException)
  68. {
  69. return null;
  70. }
  71. XElement img = new XElement(Xhtml.img,
  72. new XAttribute(NoNamespace.src, imageFileName),
  73. imageInfo.ImgStyleAttribute,
  74. imageInfo.AltText != null ?
  75. new XAttribute(NoNamespace.alt, imageInfo.AltText) : null);
  76. return img;
  77. }
  78. };
  79. XElement html = HtmlConverter.ConvertToHtml(doc, settings);
  80. File.WriteAllText("kk.html", html.ToStringNewLineOnAttributes());
  81. };
  82. }
  83. }
  84. }
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement