Как понять начертание текста на c#?
Мне нужно определить как написан текст:
Курсивом
Жирным
Подчеркнутым
Надчёркнутым
Перечеркнутым
Как собственно распознать начертание на c#, если текст берется из файла word?
StreamReader readLorem = new StreamReader(@"lorem.docx");
StreamWriter writeEncrypt = new StreamWriter(@"encrypt.docx");
StreamWriter writeDecrypt = new StreamWriter(@"decrypt.docx");
public Bacon()
{
InitializeComponent();
}
private void Bacon_Load(object sender, EventArgs e)
{
string lorem = readLorem.ReadToEnd();
}
Такой код не сохраняет начертание.
Ответ
Как ранее отмечали, можно воспользоваться библиотекой OpenXML от Microsoft, которую можно скачать тут. Итак после установки в Ваш проект нужно подключить следующие сборки:
DocumentFormat.OpenXml
WindowsBase
Для работы с текстом нужно подключить пространства имён:
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
Я создал для демонстрации небольшое консольное приложение для примера, ниже расположена функция, которая разбирает форматирование текста, который содержится в файле по пути path. Эта функция отображает текст из документа и параметры форматирования каждого участка текста:
static void ReadDocx(string path)
{
try
{
using (var doc = WordprocessingDocument.Open(path, false))
{
foreach (var p in doc.MainDocumentPart.Document.Body.Elements
Комментариев нет:
Отправить комментарий