Конвертация таблиц в MSWord
От: _mask_  
Дата: 05.04.05 15:13
Оценка:
Здравствуйте!

Есть такая задача:
В ворде содержится таблица, которую нужно красиво конвертануть в HTML (красиво — это в том смысле, что Файл\Сохранить как Веб-страницу не подходит). Основная проблема состоит в том, что таблица содержит объединенные ячейки. Вроде — бы можно было-бы обращатся к каждой ячейке отдельно, но как-то не получается узнать кол-во захваченных даной ячейкой строк(столбцов) и в итоге структура таблицы полностью искажается.
Например:
|________|____________|________|
|________|____________|________|
|________|______|_____|________|

Превращается в
|_____|_____|_____|
|_____|_____|_____|_____
|_____|_____|_____|_____|

Заранее спасибо.
Re: Конвертация таблиц в MSWord
От: Disa Россия  
Дата: 06.04.05 03:31
Оценка:
Здравствуйте, _mask_, Вы писали:

А почему не подойдет способ сохранить как хтмл?
(просто интересно)

Можно конвертировать в хтмл и другим способом не "сохранить как".
Надо сохранить doc файл. Потом открыть заранее сохранееную пустую хтмл страницу.
И затем в нее вставить сохраненый doc файл.
Вроде все!!!
Re[2]: Конвертация таблиц в MSWord
От: _mask_  
Дата: 06.04.05 13:11
Оценка:
Здравствуйте, Disa, Вы писали:

D>А почему не подойдет способ сохранить как хтмл?

D>(просто интересно)
D>Можно конвертировать в хтмл и другим способом не "сохранить как".
D>Надо сохранить doc файл. Потом открыть заранее сохранееную пустую хтмл страницу.
D>И затем в нее вставить сохраненый doc файл.

Дело в том что в результате каждого из предложенных способов я получаю html в который вставлено куча разных вордовских приколов
то есть вместо чего-то типа
<table>
<tr>
<td>1</td>
<td>2</td>
</tr>
.....
</table>

я получаю
<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0
 style='border-collapse:collapse;mso-table-layout-alt:fixed;mso-padding-alt:
 0cm 0cm 0cm 0cm'>
 <tr style='mso-yfti-irow:0;page-break-inside:avoid'>
  <td width=159 rowspan=2 style='width:118.95pt;border-top:double 1.5pt;
  border-left:double 1.5pt;border-bottom:solid 1.0pt;border-right:solid 1.0pt;
  border-color:windowtext;mso-border-top-alt:double 1.5pt;mso-border-left-alt:
  double 1.5pt;mso-border-bottom-alt:solid .75pt;mso-border-right-alt:solid .75pt;
  mso-border-color-alt:windowtext;background:silver;padding:0cm 5.4pt 0cm 5.4pt'>

он еще и в начале разные стили прописывает и прочие ненужные вещи. А мне эту табличку потом еще нужно будет в другие странички вставлять. Это даже не говоря о том, что размер сохраненного вордом файла просто офигенный. Допустим одна табличка у меня заняла 300Кб, а если табличек в файле 10 — будет 3Мб, а если файлов 20 — будет 60 Мб. А это мне уже не подходит. Мне стили текста не нужны — мне нужно только сохранение структуры и сами данные.

Вот так.
Re[3]: Конвертация таблиц в MSWord
От: Whistler Россия Блог на GotDotNet.ru
Дата: 07.04.05 06:57
Оценка:
Здравствуйте, _mask_, Вы писали:

__>Здравствуйте, Disa, Вы писали:


D>>А почему не подойдет способ сохранить как хтмл?

D>>(просто интересно)
D>>Можно конвертировать в хтмл и другим способом не "сохранить как".
D>>Надо сохранить doc файл. Потом открыть заранее сохранееную пустую хтмл страницу.
D>>И затем в нее вставить сохраненый doc файл.

__>Дело в том что в результате каждого из предложенных способов я получаю html в который вставлено куча разных вордовских приколов

__>то есть вместо чего-то типа
__>
__><table>
__><tr>
__><td>1</td>
__><td>2</td>
__></tr>
__>.....
__></table>
__>

__>я получаю
__>
__><table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0
__> style='border-collapse:collapse;mso-table-layout-alt:fixed;mso-padding-alt:
__> 0cm 0cm 0cm 0cm'>
__> <tr style='mso-yfti-irow:0;page-break-inside:avoid'>
__>  <td width=159 rowspan=2 style='width:118.95pt;border-top:double 1.5pt;
__>  border-left:double 1.5pt;border-bottom:solid 1.0pt;border-right:solid 1.0pt;
__>  border-color:windowtext;mso-border-top-alt:double 1.5pt;mso-border-left-alt:
__>  double 1.5pt;mso-border-bottom-alt:solid .75pt;mso-border-right-alt:solid .75pt;
__>  mso-border-color-alt:windowtext;background:silver;padding:0cm 5.4pt 0cm 5.4pt'>
__>

__>он еще и в начале разные стили прописывает и прочие ненужные вещи. А мне эту табличку потом еще нужно будет в другие странички вставлять. Это даже не говоря о том, что размер сохраненного вордом файла просто офигенный. Допустим одна табличка у меня заняла 300Кб, а если табличек в файле 10 — будет 3Мб, а если файлов 20 — будет 60 Мб. А это мне уже не подходит. Мне стили текста не нужны — мне нужно только сохранение структуры и сами данные.

__>Вот так.



В Word в настройках есть флажок, типа "Сохранять только в голом HTML" поройся в окне настроек Wordа и посмотри его,
его реализация в VBA чтобы программно через COM заставлять Word его включать или выключать должна быть.
Re[4]: Конвертация таблиц в MSWord
От: _mask_  
Дата: 07.04.05 14:06
Оценка:
Здравствуйте, Whistler, Вы писали:

W>В Word в настройках есть флажок, типа "Сохранять только в голом HTML" поройся в окне настроек Wordа и посмотри его,

W>его реализация в VBA чтобы программно через COM заставлять Word его включать или выключать должна быть.

Спасибо, это уже лучше, кода стало в два раза меньше. Я еще попробую разные варианты.
Конвертация таблиц в MSWord
От: Аноним  
Дата: 06.04.05 10:48
Оценка:
Обычно, если хочется узнать что то по обьектной модели ворда, достаточно записать макрос и посмотреть, что получиться...
shura


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.