-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
19. Mär 2020
Es gibt einen festen Satz.
Was für Iterationen?
Die Sache ist folgende, dadurch, dass Zeilen eine unterschiedliche Höhe haben können, dürfte das doch den Ansatz, erstmal alles in eine Spalte zu packen und dann durch die Anzahl der Spalten zu teilen, um dann die restlichen Zeilen zu befallen, schwierig sein, oder?
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
18. Mär 2020
Also in Microsoft Word werden ab vier Zeilen in der ersten Spalte dann Zeile drei und vier in die zweite spalte verschoben.
Sobald wir eine fünfte Zeile haben, wird die logische (fortlaufende) Zeile 4 (Zeile 1 aus der 2. Spalte) in die erste Spalte verschoben. Bei insgesamt sechs Zeilen, wird wieder alles einheitlich über die drei Spalten aufgeteilt (2 Zeilen pro Spalte).
Erkennst ihr eine...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Danke für Deinen Beitrag.
Wie kommst Du auf diese Werte? 30 + 30 + 60 = 120 :?
Ich habe mir eben noch einmal angesehen, wie Microsoft Word vorgeht. Dort wird erst ab der 4. Zeile in der ersten Spalte umgebrochen. Danach wird die Lage neu bewertet. Anbei ein Bildschirmvideo, wie das in MS Word aussieht. Kann man daraus eine Abfolge, einen Algorithmus ableiten?
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Haha, kein Kommentar.
Du meinst also die gesamte Breite des Absatzes?
Und an welchen Faktor oder welche Vorgehensweise denkt Du da?
So in etwa waren auch Gedankengänge von mir. Die Frage ist, wie könnten die Methoden dazu aussehen? Einiges hört sich für mich nach Iteration an. Auch wenn ich schon lange entwickle, bin kein Profi, habe ich damit nie zu tun gehabt und tue mich immer schwer...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Ganz genau :)
Korrekt.
Auch das stimmt.
Du hast es jetzt ;)
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Stahli, ich habe die zwei Absätze mit unterschiedlichen Farben gefüllt, um zu demonstrieren, wie diese Container später im Layout formatiert werden. Also nur, damit man sie auseinanderhalten kann.
Die Maße der Kästen sind wie alle Dinge in den beiden Grafiken nur abstrakt dargestellt, um die Problematik zu veranschaulichen.
Haha.
Genauso sieht es aus.
Ich habe jetzt nochmal in...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Sehr gern!
Anbei zwei Schemata.
Im Falle meines Layout Schemas sollte festgehalten werden, dass in der Realität für das im Bild gezeigte Szenario, man vermutlich in jeder der drei Spalten jeweils zwei Zeilen an Texten hätte. Dabei würden der Absatz der ersten Spalte auf die zweite aufgeteilt und der Absatz der zweiten Spalte ebenfalls nach Spalte drei aufgeteilt.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Im Constructor von TLayoutSection wird das Quellobjekt, eine TSection übergeben (danach ist TLayoutSection.Data = TSection). TLayoutSection soll eine Methode bekommen, die aus den reinen Daten des Zeigers (TLayoutSection.Data) diese grafisch umsetzt. Das bedeutet, dass TLayoutSection aus den Angaben von TSection.Columns und TSection.ColumnWidths erst einmal TLayoutSection.Columns die benötigte...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Lassen wir dies bitte erst einmal außen vor. Ich versuche mein Problem auf den kleinsten Nenner zu reduzieren, um übersichtlich zu bleiben. Wir gehen also von einem unveränderlichen Inhalt aus, der in ein Layout übersetzt werden soll.
Es gibt im Moment nicht mehr als die von mir beschriebenen Klassen.
Deine Anmerkung in Bezug auf das Box Modell ist logisch und ich hatte mir diese...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Aus meiner Datenstruktur geht doch hervor, da ich strikt auf die Trennung von Daten und Layout Wert lege, da sich TLayoutSection selbstständig um alles kümmern muss. TSection hat keine Ahnung davon, in welcher Spalte sich ein TParagraph befindet. Die Struktur ist genau die, die wir aus Word und Libre Office kennen.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Ok, also ich habe zwei Module, eines für die Daten, das andere fürs Layout.
Datenstruktur
TSection:
Columns: Integer
ColumnsWidth: Double
Paragraphs: TParagraph
Width: Double
TParagraph:
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Es ist nicht ganz die Richtung von der ich spreche. Mir geht es darum, wie man die Zeilen der Absätze der Datenstruktur (ein Absatz kann aus x Zeilen bestehen), die Teil eines Abschnitts sind, der durch z.B. drei unterschiedlich breite Spalten definiert ist), beim Layouten so günstig über die drei Spalten verteilt, dass man ein einheitliches Bild bekommt und die Spalten (die Klassen der Layout...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Ja? Was genau für Angaben benötigst Du?
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Es geht um das Rendering der Datenstruktur auf eine Canvas! Und dort muss ich ja alle Objekte für das Layout einer Seite aus dem Datenmodell generieren.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Mär 2020
Hallo,
ich beschäftige mich ja grade mit den Grundlagen von Text Prozessoren und bin auf eine Frage gestoßen.
Angenommen, ich habe einen mehrspaltigen Abschnitt der Absätze enthält, wie würdet ihr vorgehen, um die Spalten ausgeglichen, so wie man es zum Beispiel aus Microsoft Word oder Libre Office kennt, zu rendern und darzustellen?
Hier die Hierarchie:
- Abschnitt
- Spalten