2009-05-08 6 views
4

Chaque fois que je vois un problème qui serait partagé par d'autres, avec une solution qui serait amusante à implémenter, il s'avère généralement avoir déjà été résolu. Je pense qu'il est préférable de m'arrêter et de faire une recherche avant de plonger dans le codage.Outil de simplification HTML automatique?

Voici la situation: Vous pouvez copier et coller des sections d'un document Office dans l'éditeur HTML de Visual Studio. Le problème est, il crée un texte HTML qui ressemble à ceci:

<tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes"> 
       <td style="border:solid windowtext 1.0pt;mso-border-alt:solid windowtext .5pt; 
    padding:0cm 5.4pt 0cm 5.4pt" valign="top"> 
        <p align="left" class="MsoNormal" 
         style="text-align:left;tab-stops:center 216.0pt right 432.0pt"> 
         <b style="mso-bidi-font-weight:normal"><span lang="EN-US">ID<o:p></o:p></span></b></p> 
       </td> 
       <td style="border:solid windowtext 1.0pt;border-left:none; 
    mso-border-left-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt; 
    padding:0cm 5.4pt 0cm 5.4pt" valign="top"> 

fine pour une machine, mais ce n'est pas vraiment lisible par l'homme. Je parie que cela pourrait être nettoyé en trouvant les styles répétés et en créant des classes CSS sur eux. Un programme informatique pourrait le faire très facilement.

Je pourrais exécuter ce programme, et puis j'aurais un HTML agréable et facile à entretenir qui ressemble à mon document Word.

(Oui, je sais que je peux simplement modifier mon document Word, puis le copier et le coller en HTML, ou simplement l'enregistrer sous forme de fichier HTML. Mais ce ne serait pas la même chose que l'édition manuelle après coup).

De toute façon, est-ce que quelqu'un sait d'un programme qui fait cela?


(modification ultérieure) J'ai découvert la question que j'ai posée est une copie de this one.

Répondre

6

HTML Tidy fait cela! Il s'intègre également aux éditeurs de texte courants (tels que Notepad ++ ou UltraEdit) et offre la possibilité de nettoyer le balisage Web Office. Vous aurez besoin de définir le word-2000 boolean flag to true

En outre, Jeff Atwood a blogué sur ce problème et présenté sa propre solution C# 2.0 in this article.

3

Je voudrais essayer d'utiliser HTML Tidy: http://tidy.sourceforge.net/, une autre option est de coller votre document Word dans TinyMCE, puis enregistrez votre code HTML.

2

Vous pouvez envisager sérieusement de coller en tant que texte brut en tant qu'outil de simplification. Pesez combien de temps cela vous prendra pour réappliquer le balisage ... vous pourriez trouver que c'est moins douloureux que vous ne le pensez.

Questions connexes