Обработка RTL-документов — не редкая необходимость для международных бизнесов, государственных структур, образовательных учреждений и множества других организаций. Виртуальные ассистенты, автоматизированные системы перевода, поисковые системы, системы архивного хранения — все они требуют точного извлечения данных с поддержкой языков с RTL-направлением. В этой статье разберем, как с помощью C# и .NET можно легко реализовать такую задачу, используя популярную библиотеку SautinSoft Document .NET.
Многие документы, особенно на арабском, иврите и других языках с направлением текста справа налево (RTL), требуют особого подхода при обработке. Стандарты и структуры таких документов могут отличаться от привычных для левосторонних текстов (LTR).
Задачи, связанные с извлечением текста и данных из документов RTL:
Без правильной обработки существует риск потерять важные данные или неправильно интерпретировать содержимое.
Полный код
using SautinSoft.Document;
using System;
using System.IO;
using System.Linq;
using System.Reflection.Metadata;
namespace Sample
{
class Sample
{
static void Main(string[] args)
{
// Get your free trial key here:
// https://sautinsoft.com/start-for-free/
ConvertRTLcontent();
}
/// <summary>
/// How to convert documents with Right-To-Left content to HTML.
/// </summary>
/// <remarks>
/// Details: https://sautinsoft.com/products/document/help/net/developer-guide/convert-documents-with-right-to-left-content-to-html.php
/// </remarks>
public static void ConvertRTLcontent()
{
string sourcePath = @"..\..\..\RTL.docx";
string destPath = "RTL.html";
// Load document with arabic, hindi, hebrew content.
DocumentCore dc = DocumentCore.Load(sourcePath);
// Save the document as HTML.
dc.Save(destPath, new HtmlFixedSaveOptions());
// Show the source and the dest documents.
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(sourcePath) { UseShellExecute = true });
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(destPath) { UseShellExecute = true });
}
}
}Imports SautinSoft.Document
Imports System
Imports System.IO
Imports System.Linq
Imports System.Reflection.Metadata
Namespace Sample
Friend Class Sample
Shared Sub Main(ByVal args() As String)
' Get your free trial key here:
' https://sautinsoft.com/start-for-free/
ConvertRTLcontent()
End Sub
''' <summary>
''' How to convert documents with Right-To-Left content to HTML.
''' </summary>
''' <remarks>
''' Details: https://sautinsoft.com/products/document/help/net/developer-guide/convert-documents-with-right-to-left-content-to-html.php
''' </remarks>
Public Shared Sub ConvertRTLcontent()
Dim sourcePath As String = "..\..\..\RTL.docx"
Dim destPath As String = "RTL.html"
' Load document with arabic, hindi, hebrew content.
Dim dc As DocumentCore = DocumentCore.Load(sourcePath)
' Save the document as HTML.
dc.Save(destPath, New HtmlFixedSaveOptions())
' Show the source and the dest documents.
System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(sourcePath) With {.UseShellExecute = True})
System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(destPath) With {.UseShellExecute = True})
End Sub
End Class
End Namespace
Если вам нужен пример кода или у вас есть вопрос: напишите нам по адресу support@sautinsoft.ru или спросите в онлайн-чате (правый нижний угол этой страницы) или используйте форму ниже: