Avatar billede and_ Nybegynder
31. august 2003 - 12:57 Der er 28 kommentarer og
3 løsninger

WYSIWYG og Word

Hej :)

Jeg har lavet en wysiwyg-editor, men jeg har det problem at hver gang jeg paster noget ind fra word går det totalt i kage....

I den kode som der kommer kommer fra word er der en masse xml og bl.a. <span>-tags... Hvordan kan jeg slippe af med det, så det bare er det almindelige tekst og billeder der kommer ind istedet for at det overskydende flæsk som alligevel bare f***er en side op....

Når jeg gemmre dokumentet bliver det lagt ind i en database....

Lad mig høre ;)

ps: Det skal lige nævnes at jeg arbejder med ASP og Javascript...
Avatar billede -42- Nybegynder
31. august 2003 - 13:19 #1
past det ind i notepad først. Kopier det fra notepad, og paste det ind, hvor du skal bruge det.

Eller gem dit word doc com .txt
Avatar billede and_ Nybegynder
31. august 2003 - 13:32 #2
Problemet er jo at det skal fungere instant...

Jeg kan jo ikke sige til folk at de skal paste det ind i notepad først... - det skal kunne pastes ind med det sammme
Avatar billede -42- Nybegynder
31. august 2003 - 14:30 #3
Så tror jeg ikke der er noget at gøre...
Avatar billede and_ Nybegynder
31. august 2003 - 14:34 #4
det er gjort.... I mange cms systemer...

Bl.a. dynamicweb og scannet har kunnet fjerne det, men hvordan de har gjort... who knows....
Avatar billede steinmann Nybegynder
31. august 2003 - 17:10 #5
De bruger, så vidt jeg ved, ikke JScript og ASP men ActiveX og ASP
Avatar billede -42- Nybegynder
31. august 2003 - 17:36 #6
Så skal du ud i og lave en parser, som kan "rense" teksten for diverse formateringer
Avatar billede vbcoder Nybegynder
31. august 2003 - 19:59 #7
jeg har et lille cms system som benytter sig af ms dhtml editor

den kan lave det lille trick med copy paste

kig på www.visualcoder.dk linket hedder test side

//vbcoder
Avatar billede vbcoder Nybegynder
31. august 2003 - 20:01 #8
jeg har en demo liggende på itrade.dk gå ind på www.itrade.dk/admin for at redigere en side

brugernavn demo
kodeord demo
Avatar billede and_ Nybegynder
02. september 2003 - 13:14 #9
-42- -> I know, men hvordan skal den laves? - det er spørgsmålet.....!

vbcoder: Pæn demo, men hvis du kigger efter i kildekoden, ser du alt "gøjl" som skal fjernes inden siden skal gemmes i databasen...!
Avatar billede -42- Nybegynder
02. september 2003 - 13:19 #10
Jeg lavede på et tidspunkt en der kunne klare et subset af sql, og det tog pænt langt tid. Nu ved jeg ikke, hvordan de formateringer ser ud, men hvis de alle står inden for f.eks. <Formatering> så er det rimeligt simpelt, så smider du bare alt der står udenfor <her> i en ny streng, og wupti...

..så meget wupti, som sådan noget nu kan være...
Avatar billede and_ Nybegynder
02. september 2003 - 13:50 #11
hmmmm, men hvordan ser alle words "ekstrakoder" ud? - godt spørgsmål :)

Der må noget der fortæller en nem måde at fjerne alle disse ting...

Jeg har fået lavet et parserscript der kan klare <p> og font-tags'ene, men det er som sagt word der er problemet. Især hvis man kopierer billeder o.l. medover...
Avatar billede vbcoder Nybegynder
02. september 2003 - 14:46 #12
and : det havde jeg ikke lige tænkt på - du vil altså et eller andet ala dreamweavers 'cleanup html' funktion

www.wordcleaner.com
Avatar billede vbcoder Nybegynder
02. september 2003 - 14:55 #13
jeg fandt den her for jeg har set 'lyset' - grin

www.w3.org/People/Raggett/tidy/

den kan køres fra perl script så mon ikke man kan via asp også ?

//vbcoder
Avatar billede -42- Nybegynder
02. september 2003 - 14:58 #14
vbcoder>> Jeg tror ikke det er det han har brug for...
Avatar billede vbcoder Nybegynder
02. september 2003 - 14:59 #15
så det vi skal er at lave et script. dette script skal indeholde et array med 'lovlige' tags - det er vel antageligvis nemmere end at lave en liste over ms-tags - fnis

dette script skal så gennemløbe teksten i en given fil eller memory og fjerne 'ulovlige' tags - dvs alle som ikke er defineret som lovlige.

det er vel en oplagt kandidat til noget activeX der skal installeres på serveren.

et script af det format ville vel tage for lang tid at køre asp-serverside

//vbcoder
Avatar billede -42- Nybegynder
02. september 2003 - 15:04 #16
Nærmere med 'ulovlige' tags, for det er jo almindelig tekst, og ikke HTML kode... Så det er de uønskede formateringer der skal laves en liste over.

Det du skal gøre er, at skaffe en komplet liste over word formateringer
Avatar billede vbcoder Nybegynder
02. september 2003 - 15:13 #17
men hvis man bruger den dhtml fætter og paster ind som jeg gjorde der som -and- gjorde mig opmærksom på jo også paster ms-tags en-masse så er det ikke alm tekst længere men word-html.

denne html skal cleanes og så mener du at man skal lede efter ms-tags?

ville det ikke være den letteste måde at finde ms-tags ved at sammenligne tags med en 'lovlig' liste - altså en w3 liste?
Avatar billede vbcoder Nybegynder
02. september 2003 - 15:14 #18
Avatar billede -42- Nybegynder
02. september 2003 - 15:16 #19
Se det er jo interessant..... Men så er vi jo nok ude i noget der minder om midt første svar, hvilket ikke er godt nok...
Avatar billede and_ Nybegynder
02. september 2003 - 15:17 #20
det er en tricky nød at skulle knække, men det er muligt at kunne få den til at at rette det til via script uden at det skal tage for lang tid....

Jeg ved da at det skal være en form for search and replace funktion, men hvordan man skal lave, det er et spørgsmål som for mig i øjeblikket er meget uoverskueligt....
Avatar billede and_ Nybegynder
02. september 2003 - 15:20 #21
dette er jo et eksternt program - det skal jo helst være noget der kan integeres i editoren og virke herefter uden at skulle have fat i en masse andet ved siden af...
Avatar billede and_ Nybegynder
02. september 2003 - 15:27 #22
Eksempel inde fra wordcleaner:

Example of WordCleaner in Action

As an example if you create a document in Word which has the following line of text:

This is a test

If you then save this as a html document using words inbuilt save as webpage feature, this is the source html of the Word HTML file that is produced:

<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
< meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 10">
<meta name=Originator content="Microsoft Word 10">
<link rel=File-List href="This%20is%20a%20test_files/filelist.xml">
<title>This is a test</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Brian </o:Author>
<o:LastAuthor>Brian </o:LastAuthor>
<o:Revision>1</o:Revision>
<o:TotalTime>0</o:TotalTime>
<o:Created>2003-02-02T19:11:00Z</o:Created>
<o:LastSaved>2003-02-02T19:11:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>2</o:Words>
<o:Characters>13</o:Characters>
<o:Company>mambosoft</o:Company>
<o:Lines>1</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>14</o:CharactersWithSpaces>
<o:Version>10.3131</o:Version>
</o:DocumentProperties>
<o:OfficeDocumentSettings>
<o:DoNotRelyOnCSS/>
</o:OfficeDocumentSettings>
< /xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:GrammarState>Clean</w:GrammarState>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]-->
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:595.3pt 841.9pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;
mso-header-margin:35.4pt;
mso-footer-margin:35.4pt;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
< !--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";



--------- eksempel slut ---------------


Dette er jo på ingen måde normalt når man koder.
Microsoft skriver da også at det er for at gøre teksten lettere og hurtigere at redigere igen med word.

Men sagens kerne er jo at man gerne vil have fjernet alt dette fra koden når man paster fra word og ind editoren, så det bliver til almindelig html.... 

Hvis man skal lave en liste/array over alle microsoft's "funky-codes" skal man da smide en 250 GB disk i sin maskine for at kunne rumme alle dem.

Bare se i eksempelet alt det *censored* som ms putter ind.....
Avatar billede and_ Nybegynder
02. september 2003 - 15:34 #23
Fandt denne:

http://www.stas.uvic.ca/athletics-recreation/Dreamweaver%203/Configuration/Commands/Clean%20Up%20Word%20HTML.js

Nogen der vil hjælpe med at rette det til, så det er overskueligt.
Det er ikke at hugge et script. Der står at man gerne må editere det og bruge det...
Avatar billede vbcoder Nybegynder
02. september 2003 - 15:38 #24
vi skal nok starte med at lave en liste over 'lovlige' tags ellers kommer vi ikke videre i den her

nedenstående kunne være starten

<html
<head
<title
<meta
<body
<table
<tr
<td
<a
<div
<span

dvs hvis vi finder et < med noget andet end det 'lovlige' fx. <o skal der findes et tilsvarende </o og vi kan så fjerne al tekst inklusive
Avatar billede vbcoder Nybegynder
02. september 2003 - 15:38 #25
jeg har revet det til mig ;-)
Avatar billede vbcoder Nybegynder
02. september 2003 - 15:45 #26
så vi jo se om det kan omdannes ;-)
Avatar billede vbcoder Nybegynder
08. september 2003 - 16:19 #27
jeg fandt den her -

http://www.interactivetools.com/products/htmlarea/

en editor med indbygget script til at rense word html
Avatar billede -42- Nybegynder
08. september 2003 - 16:21 #28
Dreamweaver MX kan også rense word HTML
Avatar billede vbcoder Nybegynder
08. september 2003 - 16:31 #29
det ved jeg - men den her komme med fuld kildekode - den er bygget op over mis dhtml editor med en del ekstra features så det burde være muligt at 'rippe' den funktionalitet man skal bruge ;-)
Avatar billede and_ Nybegynder
26. september 2003 - 12:46 #30
Hej Rødder :)

Sorry det har taget noget tid.... Ved ikke lige præcis hvad der er gået galt for mig :)

I denne tråd ligger der besvarelse for overstående problem:
http://www.eksperten.dk/spm/405057

Men i får jo selvfølgelig også lidt point for jeres besvær....

mvh

and_
Avatar billede and_ Nybegynder
26. september 2003 - 12:47 #31
...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester