Seite 1 von 1

beim Kopieren aus Word werden Formatierungen übernommen

Verfasst: Mi 7. Jul 2004, 11:28
von kiyoku
hallo leute,

ein Kunde hat da ein kleines Problem. Und zwar hat er seine Texte alle als Word-Vorlage. Nun möchte er die Texte in den WYSIWYG-Editor reinkopieren. Durch dieses Kopieren werden meine Style-Sheets nicht mehr beachtet, auch wenn der Kunde aus dem Pulldown-Menü "Style" das passende CSS wählt.
Im HTML-Code sehe ich, dass er die span class immer um den font, color, size etc. (die von Word kommen) drumherum schreibt. Gibt es eine Möglichkeit, dass die Formatierungen von Word nicht übernommen werden sollen?

Verfasst: Mi 7. Jul 2004, 11:52
von timo
Nein, die Formatierung wird leider immer mit übernommen.

Im SPAW gibt es aber einen Button "HTML aufräumen" (zumindest in der 4.5, ob der in der 4.4 da war weiß ich nicht) - aber das könnte deine Lösung sein.

Verfasst: Mi 7. Jul 2004, 11:57
von kiyoku
leider benutze ich nicht spaw, sondern htmlarea3
und da gibt es sowas nicht?

wobei ich mir denken kann, dass es da auch grenzen gibt, denn wenn ich was im nachhinein einfüge und dann auf "html aufräumen" gehen, dann werden meine alten formatierung gelöscht, oder?

Verfasst: Mi 7. Jul 2004, 12:01
von Halchteranerin
kiyoku hat geschrieben:leider benutze ich nicht spaw, sondern htmlarea3
und da gibt es sowas nicht?
Theoretisch wird da tidy benutzt, nur praktisch habe ich es nicht zum Laufen bekommen. :( Aber wenn Dein Kunde die Texte ueber Notepad oder einen anderen normalen Texteditor als Zwischenspeicher kopiert, dann verliert er die Formatierungen, bevor die Texte in Contenido eingefuegt werden. Etwas umstaendlich, aber immerhin eine Loesung. Oder Du versuchst eben, tidy zum Laufen zu bringen.

Verfasst: Mi 7. Jul 2004, 12:39
von kummer
aus meiner sicht hast du folgende möglichkeit:

(1) eine kopie des html-text-moduls erstellen,

(2) wenn $edit == true im output-script prüfen, ob font-tags drin sind (ich gehe mal davon aus, dass diese nicht erlaubt sein dürften, wenn mit css gearbeitet wird),

(3) falls welche vorhanden sind, alle tags mit strip_tags() entfernen und erst anschliessend ausgeben.

EDIT: nicht ausgeben, sondern in die db schreiben. dann ganz normal CMS_HTML[x] mit echo ausgeben (dann wird es ja aus der db gelesen).

das führt dann dazu, dass nach der ersten speicherung bei der erneuten darstellung alle formatierungen entfernt sind. dann müsste einfach neu formatiert und gespeichert werden.

beim nochmaligen aufrufen passiert gleiches nicht, sofern keine font-tags im text sind. wie angetönt, gehe ich davon aus, dass font-tags nicht erlaubt sein sollten, wenn konsequent mit css gearbeitet wird. falls font-tags doch erlaubt sein sollten, verwendest du einfach das auftreten irgendeines anderen strings, der beim kopieren von word-dokumenten immer auftritt.

gruss,
andreas

Verfasst: Mi 7. Jul 2004, 13:11
von kiyoku
@Halchteranerin:
leider habe ich nicht die richtige php-version, damit das funktioniert. er stolpert schon bei der funktion proc_open

@kummer:
leider funktioniert dies auch nicht so richtig. da mir der editor keine font-tag daraus macht, sonderne in span-tag mit style="font .. " und span muss ich leider zulassen, damit im laufenden text auch mal das style-sheet geändert werden kann
aber danke für die idee

Verfasst: Mi 7. Jul 2004, 14:04
von kummer
nun dann wirds schwierig. word ist im übrigen eh scheisse. dann würde ich es so machen, wie christa vorgeschlagen hat: via notepad die stile entfernen oder ein word-makro schreiben, dass den ganzen inhalt ausliest, die stile entfernt und das resultat in die zwischenablage speichert.