Mam małą aplikację C#, która pobiera tekst z pliku Microsoft Publisher za pośrednictwem interfejsu API COM Interop. To działa dobrze, ale walczę, jeśli mam wiele stylów w jednej sekcji. Potencjalnie każda postać w słowie może mieć inną czcionkę, format itp.
Czy naprawdę muszę porównywać postać po znaku? Czy jest coś, co zwraca mi różne sekcje stylu? Trochę jak mogę dostać różne akapity?Pobierz różne sekcje stylu w Microsoft Publisher przez Interop
foreach (Microsoft.Office.Interop.Publisher.Shape shp in pg.Shapes)
{
if (shp.HasTextFrame == MsoTriState.msoTrue)
{
text.Append(shp.TextFrame.TextRange.Text);
for(int i = 0; i< shp.TextFrame.TextRange.WordsCount; i++)
{
TextRange range = shp.TextFrame.TextRange.Words(i+1, 1);
string test = range.Text;
}
}
}
A może ogólnie lepszy sposób wyodrębnienia tekstu z pliku wydawcy? Ale muszę być w stanie go zapisać z tym samym formatowaniem. To do tłumaczenia.
Dzięki za wejście. Ale przy konwersji RTF mogę utracić pewne opcje formatowania, których chciałbym uniknąć. Obecnie po prostu porównuję każdą postać z kolejną ... – Remy