← Uz sākumu

Office HTML

2003. gada 22. oktobrī, 13 komentāri

Vakar tika uzdots jautājums. Diemžēl lielākā daļa no komentāru autoriem neiespringa uztvert to faktu, ka man šis process ir jāveic automatizēti.

Tad nu minēšu vēlreiz. Man ir lietotājs. Kurš caur lapas administrāciju baro iekšā tekstus. Visbiežāk jamais tos raksta Wordā un tad ar copy/paste metodi ievieto attiecīgajā MSHTML vai MIDAS enablētā teksta laukā.

Pēc daudzstundu ņemtnes izdevās panākt vēlamo efektu. Process ir sekojošs:

  • Lietotājs iepeisto savu Worda brīnumtekstu iekš to teksta ievades lauku.
  • Ar PHP līdzekļiem es šajā tekstā veicu nepieciešamās substitūcijas - font color="..." aizvietoju ar span style="color: ...", u.t.t.
  • Ar PHP līdzekļiem (strip_tags()) es šo tekstu iztīru no liekajiem (sliktajiem) tagiem.
  • Esmu ieguvis puslīdz smuku kodu, ja neskaita to, ka tajā esošie atverošie/aizverošie tagi neprotās. Te nu es talkā ņem HTML Tidy. iebarojot šamajai programmai nepieciešamos parametrus un savu pusattīrīto failu, ļauju tai pabeigt cēlo darbu.
  • No HTML Tidy rezultāta paņemam tikai to, kas ir starp <html> un </html>.

Finālā mēs iegūstam tiešām korektu XHTML kodu. Notestēju ar dažādiem testa dokumentiem gan no Word, gan no Excel, gan ar tabulām, gan bez tām, gan ar visādiem embedotiem objektiem, u.t.t. Strādā.

Taču, pazīstot lietotājus (kā sugu), domāju, ka jamie atradīs ne vienu vien nepilnību šajā implementācijā.

Tu atbildi augstāk redzamajam komentāram. Atcelt

Gravatar Arturs

2003. gada 22. oktobrī, plkst. 12:50

Kāda vārda latviskojums ir "ņemtne"?

Gravatar Kā tu saucies:

2003. gada 22. oktobrī, plkst. 12:58

ņemšanās laikam

Gravatar ant

2003. gada 22. oktobrī, plkst. 13:55

tu pats neiespringi vakar norādīt, ka javeic automatizēti.

Gravatar laacz

2003. gada 22. oktobrī, plkst. 14:07

ant: //Tad nu lūk. Ir pierādījies fakts, ka visas šīs problēmas var atrisināt automatizēti — uzrakstot attiecīgus skriptus, funkcijas un niknus komentārus.//

ant: http://www.mozilla.org/editor/

Gravatar Qued

2003. gada 22. oktobrī, plkst. 14:16

Vai šito procesu nevarēja vienkāršot izlaižot tekstu cauri (automātiski) MS office html filter?

Gravatar laacz

2003. gada 22. oktobrī, plkst. 14:18

Qued, kā es caur tādu filtru jamo varētu izlaist?

Gravatar ant

2003. gada 22. oktobrī, plkst. 15:14

laacz: //problēmas var atrisināt// cūkas arī var lidot, bet šamās nelido vis! Cita lieta ja pateiktu //problēmas jāvar atrisināt//

Gravatar laacz

2003. gada 22. oktobrī, plkst. 15:18

ant, no konteksta nebija saprotams, ko es biju domājis? :)

Gravatar Qued

2003. gada 23. oktobrī, plkst. 10:08

laacz, ja esi skatījies, ir tāds office html filter. Jamajam līdzi nāk arī komandrindas rīks. Tad nu no php skripta mshtml komponentē ievadīto tekstu saseivojam failā, uzlaižam komandrindas filtru un lasam atkal no faila ārā. Nav, protams, eleganti, bet vajadzētu strādāt. Tiesa, tikai uz Windows.

Gravatar laacz

2003. gada 23. oktobrī, plkst. 10:11

Qued, man neder tikai Windows. Paldies dievam :)

Gravatar MS

2003. gada 23. oktobrī, plkst. 18:31

man izdevas ar openoffice MS copy paste Openofiice save as html