2017-02-10 17 views
13

Tôi có đoạn code sau đây để chuyển đổi văn bản rtf để html:RTF để Html loại bỏ các bảng html

private string RtfToHtml(string rtf) 
{ 
    IRtfDocument rtfDocument = RtfInterpreterTool.BuildDoc(rtf); 
    RtfHtmlConverter htmlConverter = new RtfHtmlConverter(rtfDocument); 
    return htmlConverter.Convert(); 
} 

này được lấy từ this library on code project.

Nếu văn bản rtf của tôi chứa bảng Html như:

{\*\htmltag96 <table cellspacing="0" border="0" width="600">}\htmlrtf {\pard\plain \f0\fs24 \htmlrtf0 

Chúng được xóa trong văn bản html kết quả. Làm thế nào tôi có thể bảo tồn chúng?

Tuy nhiên, mọi văn bản hoặc chi tiết trong bảng vẫn còn, kết quả này trong văn bản html không được định dạng chính xác do thiếu bảng.

+0

https://code.msdn.microsoft.com/windowsapps/Convert-RTF-file-to-HTML-4d3b70e6 thử cách này –

+0

@AshishBahl Không có bất kỳ bảng HTML nào bị xóa – TheLethalCoder

+0

bạn có thể chia sẻ đoạn mã của mình không? –

Trả lời

2

Gần cuối Giới thiệu về các bài báo từ mà quý vị lấy thư viện:

Không có hỗ trợ đặc biệt cho các yếu tố bố trí RTF sau:

  • Bàn
  • Lists
  • Tự động đánh số
  • Tất cả các tính năng yêu cầu lại kiến ​​thức về cách Microsoft Word có thể có nghĩa là nó ...

Dự án này có thể hữu ích: rtf2html

Nó tuyên bố để xử lý bảng tốt hơn so với bất kỳ chuyển đổi khác hiện có. Tuy nhiên nó được viết bằng C++ và từ những gì tôi có thể nói với bạn đang làm việc với C#.

Đó là trường hợp, bạn có thể muốn xem xét một số mã nguồn trong dự án để giúp bạn viết lại điều tương tự trong C#.

Theo như các thư viện C# hiện có có thể xử lý các bảng đúng cách, tôi không nghĩ rằng bảng này hiện đang tồn tại.

+0

Lưu ý rằng trình chuyển đổi này cực kỳ cũ và cũng không hỗ trợ các tính năng như hình ảnh và siêu liên kết. Ngoài ra điều này là ít hơn một liên kết chỉ trả lời và sẽ có được đăng tốt hơn như một bình luận như bình luận trước đó về câu hỏi đã làm. – TheLethalCoder

+0

Cũng lưu ý rằng điều này dường như không hoạt động, xin vui lòng không gửi một đề xuất nhưng một câu trả lời thực tế. – TheLethalCoder

Các vấn đề liên quan