> mein Layouter würde gerne die Texte in Spalten aufteilen. Bei zwei > Spalten kann ich mir das ja noch vorstellen. Aber wie mache > ich, dass er > mir nicht mitten in einem Wort trennt sondern dort in der ungefähren > Mitte des Textes wo ein Leerzeichen ist? Gibts da schon etwas > Bestehendes? Eine Hilfe bezüglich Arbeiten mit Spalten oder so? > > Ich bin mal soweit gekommen: > string strContent = reader.GetString(1); > int strLength = strContent.Length; > strLength = strLength / 2; > TR_Left.Text += strContent.Substring(0,strLength - 1); > TR_Right.Text += strContent.Substring(strLength + 1); > > (und wenn auf einmal noch ein Bild kommt? muss ich dann > ausrechnen wie > viele Zeichen die entsprechende Bildgrösse schluckt und das noch > miteinbeziehen?)
Also... Mit CSS2 würde es ja gehen... http://saftsack.fs.uni-bayreuth.de/html/selfhtml/tdci.htm Blöd nur, dass das kein Browser anzeigt... Wenn Du es unbedingt automatisch berechnen willst, dann berechne die genaue Mitte wie oben und suche ab da da nächste Leerzeichen und dort trennst Du. Blöd ist nur, dass es vielleicht trotzdem vorkommen kann, dass die rechte Spalte länger wird... Um dem zu entgehen könnte man je nach Textlänge vielleicht zur genauen Mitte noch zehn oder 20 Zeichen hinzuaddieren bevor man das Leerzeichen sucht. Ansonsten könnte ich mir auch vorstellen, dass das dahinterliegende CMS bei der 2spaltigen Vorschau es ermöglicht den genauen Umbruch zu verändern. Dann würde man ein sonderzeichen im Text an dieser Stelle speichern und der Server wüsste nächstes mal Bescheid. > Zweite Frage: > hat jemand schon mal was mit einer automatischen > Silbentrennung gemacht? Kurz angedacht... > meine Idee wäre dass man die meistgebrauchten Wörter in eine > Datenbank > eingibt und dann jeweils das Wort mit dem ­ bei den Silben auch. > Wenn nun jemand im Content Management den Text eingibt, dass > es den Text > mit Replace durchläuft und alle bekannten Wörter aus der > Datenbank mit > den Wörtern mit den ­'s ersetzt. > Gibts da was einfacheres, bestehendes oder so? Bestehendes kenn ich nicht, aber es gibt bestimmt irgendwo Beschreibungen von Trennungsalgorithmen(was ein Wörterbuch unnötig machen würde) oder elektronische Wörterbücher aus denen man den Umbruch extrahieren kann - Selbst ein Wörterbuch anlegen fände ich zu mühselig... Das Teil updatet Dir keiner mehr... Das Ersetzen der Worte kann kein einfaches Suchen und ersetzen sein. Um keine Überraschungen zu erleben würde ich die Worte im Wörterbuch nach Länge rückwärts sortieren vor dem ersetzen, oder noch besser den Text Wort für Wort durchgehen, ersetzen und dann wieder zusammensetzen (Ist bei grösseren Wörterbüchern eh effizienter, weil der Text weniger Worte enthält). Andererseits hat man beim Ersetzen den Vorteil, dass man auch zusammengesetzte Worte(Deutsche Spezialität) erschlägt auch wenn man die nicht nochmal im Wörterbuch hat, allerdings entfällt dann der Trenner zwischen den Worten, es sei denn Dein Algorithmus erkennt explizit zusammengesetze Worte. Btw.: Trennungen bei ck => k-k bekommt man damit nicht hin... Hab grad nachgeschaut... Ist nach der neuen Rechtschreibung eh nicht mehr nötig. Auf jeden Fall würde ich aber das Ersetzen - egal wie Du es letztendlich machst - nicht beim Ausliefern der Seite machen, sondern vorher oder das Ergebnis irgendwo cachen, so dass man es nur einmal machen muss, sonst ist das der Tod für Deinen Server. Ich würde auch das Wörterbuch komplett im Speicher halten, wenn Du den Text Wort für Wort durchgehst am besten in einer Hashtable, damit Du schnell den passenden Eintrag findest... Irgendjemand noch Ideen? Claudius _______________________________________________ Asp.net Mailingliste, Postings senden an: Asp.net@glengamoi.com An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/asp.net