From 2a10589189d9c6142dec87ca55bc04454926e2cb Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Sun, 2 Jun 2024 23:30:25 -0300 Subject: [PATCH 01/15] feat: Allow the use of different styles in the same text Update interface to include a method that will add subtexts --- pkg/core/components.go | 1 + pkg/core/provider.go | 1 + 2 files changed, 2 insertions(+) diff --git a/pkg/core/components.go b/pkg/core/components.go index 82e5c253..0412f92d 100644 --- a/pkg/core/components.go +++ b/pkg/core/components.go @@ -32,6 +32,7 @@ type Line interface { // Text is the abstraction which deals of how to add text inside PDF. type Text interface { Add(text string, cell *entity.Cell, textProp *props.Text) + AddCustomText(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text) GetLinesQuantity(text string, fontFamily props.Text, colWidth float64) int } diff --git a/pkg/core/provider.go b/pkg/core/provider.go index f8a6d9c9..a87153f9 100644 --- a/pkg/core/provider.go +++ b/pkg/core/provider.go @@ -14,6 +14,7 @@ type Provider interface { // Features AddLine(cell *entity.Cell, prop *props.Line) + AddCustomText(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text) AddText(text string, cell *entity.Cell, prop *props.Text) GetTextHeight(prop *props.Font) float64 AddMatrixCode(code string, cell *entity.Cell, prop *props.Rect) From 8026555779044af87cee5d7996a841b4091a7d8c Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Sun, 2 Jun 2024 23:34:24 -0300 Subject: [PATCH 02/15] feat: Create struct to store subtexts --- pkg/core/entity/subText.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 pkg/core/entity/subText.go diff --git a/pkg/core/entity/subText.go b/pkg/core/entity/subText.go new file mode 100644 index 00000000..1f277582 --- /dev/null +++ b/pkg/core/entity/subText.go @@ -0,0 +1,21 @@ +package entity + +import "github.com/johnfercher/maroto/v2/pkg/props" + +// SubText represents part of a text, this structure allows different properties in the same text +type SubText struct { + Value string + Prop props.SubText +} + +func NewSubText(value string, ps ...props.SubText) *SubText { + textProp := props.SubText{} + if len(ps) > 0 { + textProp = ps[0] + } + + return &SubText{ + Value: value, + Prop: textProp, + } +} From 1f1d7e4a1c5013a9a0ab8028fb4307d8acd240ed Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Sun, 2 Jun 2024 23:38:00 -0300 Subject: [PATCH 03/15] feat: create method to render a list of subtexts --- internal/providers/gofpdf/provider.go | 4 + internal/providers/gofpdf/text.go | 208 ++++++++++++++++---------- 2 files changed, 131 insertions(+), 81 deletions(-) diff --git a/internal/providers/gofpdf/provider.go b/internal/providers/gofpdf/provider.go index 5fd77798..02b9db32 100644 --- a/internal/providers/gofpdf/provider.go +++ b/internal/providers/gofpdf/provider.go @@ -48,6 +48,10 @@ func (g *provider) AddText(text string, cell *entity.Cell, prop *props.Text) { g.text.Add(text, cell, prop) } +func (g *provider) AddCustomText(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text) { + g.text.AddCustomText(subs, cell, textPs) +} + func (g *provider) GetTextHeight(prop *props.Font) float64 { return g.font.GetHeight(prop.Family, prop.Style, prop.Size) } diff --git a/internal/providers/gofpdf/text.go b/internal/providers/gofpdf/text.go index 01559243..4a6071b2 100644 --- a/internal/providers/gofpdf/text.go +++ b/internal/providers/gofpdf/text.go @@ -28,108 +28,156 @@ func NewText(pdf gofpdfwrapper.Fpdf, math core.Math, font core.Font) *text { } } -// Add a text inside a cell. +// This method is responsible for adding new text to the file func (s *text) Add(text string, cell *entity.Cell, textProp *props.Text) { - s.font.SetFont(textProp.Family, textProp.Style, textProp.Size) - fontHeight := s.font.GetHeight(textProp.Family, textProp.Style, textProp.Size) + entity.NewSubText(text, props.NewSubText(textProp)) + s.AddCustomText([]*entity.SubText{entity.NewSubText(text, props.NewSubText(textProp))}, cell, textProp) +} - if textProp.Top > cell.Height { - textProp.Top = cell.Height - } +// This method is responsible for allowing the union of a set of subtexts in the same text +func (s *text) AddCustomText(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text) { + originalColor := s.font.GetColor() + defer s.font.SetColor(originalColor) - if textProp.Left > cell.Width { - textProp.Left = cell.Width - } + width := s.validTextProps(textPs, cell, cell.Width-textPs.Left-textPs.Right) + lines := s.orderSubTextsInLines(subs, width, textPs.BreakLineStrategy) - if textProp.Right > cell.Width { - textProp.Right = cell.Width - } + accumulateOffsetY := 0.0 + sumFonts := 0.0 + for index, line := range lines { + x := cell.X + textPs.Left + heightLargestFont := s.findLargestFontHeight(line) + if index > 0 { + sumFonts += heightLargestFont + } - width := cell.Width - textProp.Left - textProp.Right - if width < 0 { - width = 0 + for _, subText := range line { + y := s.setTheLineProps(subText, heightLargestFont, cell.Y+textPs.Top) + s.addLine(&subText.Prop, x, width, y+sumFonts+accumulateOffsetY, subText.Value, textPs.Align) + x += s.pdf.GetStringWidth(subText.Value) + } + accumulateOffsetY += textPs.VerticalPadding } +} + +// GetLinesQuantity retrieve the quantity of lines which a text will occupy to avoid that text to extrapolate a cell. +func (s *text) GetLinesQuantity(text string, textProp props.Text, colWidth float64) int { + translator := s.pdf.UnicodeTranslatorFromDescriptor("") + s.font.SetFont(textProp.Family, textProp.Style, textProp.Size) - x := cell.X + textProp.Left - y := cell.Y + textProp.Top + // Apply Unicode. + textTranslated := translator(text) - originalColor := s.font.GetColor() - if textProp.Color != nil { - s.font.SetColor(textProp.Color) - } + words := strings.Split(textTranslated, " ") - // override style if hyperlink is set - if textProp.Hyperlink != nil { - s.font.SetColor(&props.BlueColor) + // If should add one line. + if s.pdf.GetStringWidth(textTranslated) < colWidth || len(words) == 1 { + return 1 } - y += fontHeight + lines, _ := s.getLinesBreakingLineFromSpace(textTranslated, colWidth, 0) + return len(lines) +} - // Apply Unicode before calc spaces - unicodeText := s.textToUnicode(text, textProp) - stringWidth := s.pdf.GetStringWidth(unicodeText) +// This method is responsible for checking the subtexts and adding them to the line according to the chosen strategy +func (s *text) orderSubTextsInLines(subs []*entity.SubText, widthAvailable float64, breakLineStrategy breakline.Strategy) [][]*entity.SubText { + sizeLasLine := 0.0 + newText := [][]*entity.SubText{} - // If should add one line - if stringWidth < width { - s.addLine(textProp, x, width, y, stringWidth, unicodeText) - if textProp.Color != nil { - s.font.SetColor(originalColor) - } - return + for _, sub := range subs { + sizeLasLine, newText = s.factoryLine(sub, widthAvailable, sizeLasLine, newText, s.selectStrategyBreak(breakLineStrategy)) } + return newText +} - var lines []string +// This method is responsible for making a new line with the subText sent, here it is defined whether the subText will be inserted in a new Line or in the current Line +func (s *text) factoryLine(sub *entity.SubText, widthAvailable float64, sizeLasLine float64, newText [][]*entity.SubText, getLines func(string, float64, float64) ([]string, float64)) (float64, [][]*entity.SubText) { + s.font.SetFont(sub.Prop.Family, sub.Prop.Style, sub.Prop.Size) + lineValues, currentSize := getLines(s.textToUnicode(sub.Value, &sub.Prop), widthAvailable, sizeLasLine) + return currentSize, s.mergeSubtext(newText, lineValues, s.fitsInTheCurrentLine(lineValues[0], sizeLasLine, widthAvailable), sub.Prop) +} - if textProp.BreakLineStrategy == breakline.EmptySpaceStrategy { - words := strings.Split(unicodeText, " ") - lines = s.getLinesBreakingLineFromSpace(words, width) - } else { - lines = s.getLinesBreakingLineWithDash(unicodeText, width) +// This method is responsible for defining the line props, returning the position of the text on the y axis +func (s *text) setTheLineProps(sub *entity.SubText, heightLargestFont, y float64) float64 { + s.font.SetFont(sub.Prop.Family, sub.Prop.Style, sub.Prop.Size) + s.font.SetColor(sub.Prop.Color) + + fontHeight := s.font.GetHeight(sub.Prop.Family, sub.Prop.Style, sub.Prop.Size) + if heightLargestFont > fontHeight { + y -= (heightLargestFont - fontHeight) / 2 } + return y +} - accumulateOffsetY := 0.0 +// This method is responsible for validating text properties, ensuring that they are within the standard +func (s *text) validTextProps(ps *props.Text, cell *entity.Cell, width float64) float64 { + if ps.Top > cell.Height { + ps.Top = cell.Height + } - for index, line := range lines { - lineWidth := s.pdf.GetStringWidth(line) + if ps.Left > cell.Width { + ps.Left = cell.Width + } - s.addLine(textProp, x, width, y+float64(index)*fontHeight+accumulateOffsetY, lineWidth, line) - accumulateOffsetY += textProp.VerticalPadding + if ps.Right > cell.Width { + ps.Right = cell.Width } + if width < 0 { + width = 0 + } + return width +} - if textProp.Color != nil { - s.font.SetColor(originalColor) +// This method is responsible for finding the font with the highest height in the set of subtexts. +func (s *text) findLargestFontHeight(subs []*entity.SubText) float64 { + fontSize := 0.0 + for _, sub := range subs { + size := s.font.GetHeight(sub.Prop.Family, sub.Prop.Style, sub.Prop.Size) + if size > fontSize { + fontSize = size + } } + return fontSize } -// GetLinesQuantity retrieve the quantity of lines which a text will occupy to avoid that text to extrapolate a cell. -func (s *text) GetLinesQuantity(text string, textProp props.Text, colWidth float64) int { - translator := s.pdf.UnicodeTranslatorFromDescriptor("") - s.font.SetFont(textProp.Family, textProp.Style, textProp.Size) +// This function is responsible for merging the subText, ensuring that when necessary they will occupy the same line +func (s *text) mergeSubtext(currentLines [][]*entity.SubText, newLines []string, joinOnTheSameLine bool, ps props.SubText) [][]*entity.SubText { + startInsert := 0 - // Apply Unicode. - textTranslated := translator(text) + if joinOnTheSameLine && len(currentLines) != 0 { + currentLines[len(currentLines)-1] = append(currentLines[len(currentLines)-1], entity.NewSubText(newLines[0], ps)) + startInsert = 1 + } - stringWidth := s.pdf.GetStringWidth(textTranslated) - words := strings.Split(textTranslated, " ") + for i := startInsert; i < len(newLines); i++ { + currentLines = append(currentLines, []*entity.SubText{entity.NewSubText(newLines[i], ps)}) + } + return currentLines +} - // If should add one line. - if stringWidth < colWidth || len(words) == 1 { - return 1 +// This method is responsible for selecting the correct function to break the line according to the passed strategy +func (s *text) selectStrategyBreak(strategy breakline.Strategy) func(text string, colWidth float64, currentlySize float64) ([]string, float64) { + if strategy == breakline.EmptySpaceStrategy { + return s.getLinesBreakingLineFromSpace + } else { + return s.getLinesBreakingLineWithDash } +} - lines := s.getLinesBreakingLineFromSpace(words, colWidth) - return len(lines) +// This method is responsible for checking if the word fits on the current line +func (s *text) fitsInTheCurrentLine(word string, currentSize, widthAvailable float64) bool { + return s.pdf.GetStringWidth(word)+currentSize < widthAvailable } -func (s *text) getLinesBreakingLineFromSpace(words []string, colWidth float64) []string { - currentlySize := 0.0 +func (s *text) getLinesBreakingLineFromSpace(text string, colWidth, currentlySize float64) ([]string, float64) { actualLine := 0 + words := strings.Split(text, " ") lines := []string{} lines = append(lines, "") for _, word := range words { - if s.pdf.GetStringWidth(word+" ")+currentlySize < colWidth { + if s.fitsInTheCurrentLine(word+" ", currentlySize, colWidth) { lines[actualLine] = lines[actualLine] + word + " " currentlySize += s.pdf.GetStringWidth(word + " ") } else { @@ -140,19 +188,17 @@ func (s *text) getLinesBreakingLineFromSpace(words []string, colWidth float64) [ } } - return lines + return lines, currentlySize } -func (s *text) getLinesBreakingLineWithDash(words string, colWidth float64) []string { - currentlySize := 0.0 - +func (s *text) getLinesBreakingLineWithDash(words string, colWidth, currentlySize float64) ([]string, float64) { lines := []string{} dashSize := s.pdf.GetStringWidth(" - ") var content string for _, letter := range words { - if currentlySize+dashSize > colWidth-dashSize { + if !s.fitsInTheCurrentLine(" - ", currentlySize, colWidth-dashSize) { content += "-" lines = append(lines, content) content = "" @@ -160,28 +206,28 @@ func (s *text) getLinesBreakingLineWithDash(words string, colWidth float64) []st } letterString := fmt.Sprintf("%c", letter) - width := s.pdf.GetStringWidth(letterString) content += letterString - currentlySize += width + currentlySize += s.pdf.GetStringWidth(letterString) } if content != "" { lines = append(lines, content) } - return lines + return lines, currentlySize } -func (s *text) addLine(textProp *props.Text, xColOffset, colWidth, yColOffset, textWidth float64, text string) { +func (s *text) addLine(subProp *props.SubText, xColOffset, colWidth, yColOffset float64, text string, alignText align.Type) { left, top, _, _ := s.pdf.GetMargins() + textWidth := s.pdf.GetStringWidth(text) - fontHeight := s.font.GetHeight(textProp.Family, textProp.Style, textProp.Size) + fontHeight := s.font.GetHeight(subProp.Family, subProp.Style, subProp.Size) - if textProp.Align == align.Left { + if alignText == align.Left { s.pdf.Text(xColOffset+left, yColOffset+top, text) - if textProp.Hyperlink != nil { - s.pdf.LinkString(xColOffset+left, yColOffset+top-fontHeight, textWidth, fontHeight, *textProp.Hyperlink) + if subProp.Hyperlink != nil { + s.pdf.LinkString(xColOffset+left, yColOffset+top-fontHeight, textWidth, fontHeight, *subProp.Hyperlink) } return @@ -189,20 +235,20 @@ func (s *text) addLine(textProp *props.Text, xColOffset, colWidth, yColOffset, t var modifier float64 = 2 - if textProp.Align == align.Right { + if alignText == align.Right { modifier = 1 } dx := (colWidth - textWidth) / modifier - if textProp.Hyperlink != nil { - s.pdf.LinkString(dx+xColOffset+left, yColOffset+top-fontHeight, textWidth, fontHeight, *textProp.Hyperlink) + if subProp.Hyperlink != nil { + s.pdf.LinkString(dx+xColOffset+left, yColOffset+top-fontHeight, textWidth, fontHeight, *subProp.Hyperlink) } s.pdf.Text(dx+xColOffset+left, yColOffset+top, text) } -func (s *text) textToUnicode(txt string, props *props.Text) string { +func (s *text) textToUnicode(txt string, props *props.SubText) string { if props.Family == fontfamily.Arial || props.Family == fontfamily.Helvetica || props.Family == fontfamily.Symbol || From abc1387c3b631977351efc1c3553b1872a2756cc Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Mon, 3 Jun 2024 23:57:24 -0300 Subject: [PATCH 04/15] test: test update for subtext inclusion --- pkg/components/text/text_test.go | 9 +- test/maroto/components/list/build.json | 198 ++++++++++++++---- .../components/list/build_from_pointer.json | 198 ++++++++++++++---- .../texts/new_text_col_custom_prop.json | 16 +- .../texts/new_text_col_default_prop.json | 9 +- .../texts/new_text_custom_prop.json | 14 +- .../texts/new_text_default_prop.json | 9 +- .../texts/new_text_row_custom_prop.json | 16 +- .../texts/new_text_row_default_prop.json | 9 +- 9 files changed, 375 insertions(+), 103 deletions(-) diff --git a/pkg/components/text/text_test.go b/pkg/components/text/text_test.go index d751a812..1ce6bb09 100644 --- a/pkg/components/text/text_test.go +++ b/pkg/components/text/text_test.go @@ -7,6 +7,7 @@ import ( "github.com/johnfercher/maroto/v2/mocks" "github.com/johnfercher/maroto/v2/pkg/components/text" "github.com/johnfercher/maroto/v2/pkg/core/entity" + "github.com/johnfercher/maroto/v2/pkg/props" "github.com/johnfercher/maroto/v2/pkg/test" ) @@ -64,20 +65,20 @@ func TestNewRow(t *testing.T) { func TestText_Render(t *testing.T) { t.Run("should call provider correctly", func(t *testing.T) { // Arrange - value := "textValue" cell := fixture.CellEntity() prop := fixture.TextProp() - sut := text.New(value, prop) + subs := []*entity.SubText{entity.NewSubText("textValue", props.NewSubText(&prop))} + sut := text.NewCustomText(subs, prop) provider := mocks.NewProvider(t) - provider.EXPECT().AddText(value, &cell, &prop) + provider.EXPECT().AddCustomText(subs, &cell, &prop) sut.SetConfig(&entity.Config{}) // Act sut.Render(provider, &cell) // Assert - provider.AssertNumberOfCalls(t, "AddText", 1) + provider.AssertNumberOfCalls(t, "AddCustomText", 1) }) } diff --git a/test/maroto/components/list/build.json b/test/maroto/components/list/build.json index 43cb567d..42d429ed 100755 --- a/test/maroto/components/list/build.json +++ b/test/maroto/components/list/build.json @@ -10,8 +10,13 @@ "type": "col", "nodes": [ { - "value": "Key", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key", + "type": "sub_text" + } + ] } ] }, @@ -20,8 +25,13 @@ "type": "col", "nodes": [ { - "value": "Value", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Value", + "type": "sub_text" + } + ] } ] } @@ -43,8 +53,13 @@ "type": "col", "nodes": [ { - "value": "key(0)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(0)", + "type": "sub_text" + } + ] } ] }, @@ -53,8 +68,13 @@ "type": "col", "nodes": [ { - "value": "value(0)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(0)", + "type": "sub_text" + } + ] } ] } @@ -69,8 +89,13 @@ "type": "col", "nodes": [ { - "value": "key(1)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(1)", + "type": "sub_text" + } + ] } ] }, @@ -79,8 +104,13 @@ "type": "col", "nodes": [ { - "value": "value(1)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(1)", + "type": "sub_text" + } + ] } ] } @@ -102,8 +132,13 @@ "type": "col", "nodes": [ { - "value": "key(2)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(2)", + "type": "sub_text" + } + ] } ] }, @@ -112,8 +147,13 @@ "type": "col", "nodes": [ { - "value": "value(2)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(2)", + "type": "sub_text" + } + ] } ] } @@ -128,8 +168,13 @@ "type": "col", "nodes": [ { - "value": "key(3)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(3)", + "type": "sub_text" + } + ] } ] }, @@ -138,8 +183,13 @@ "type": "col", "nodes": [ { - "value": "value(3)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(3)", + "type": "sub_text" + } + ] } ] } @@ -161,8 +211,13 @@ "type": "col", "nodes": [ { - "value": "key(4)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(4)", + "type": "sub_text" + } + ] } ] }, @@ -171,8 +226,13 @@ "type": "col", "nodes": [ { - "value": "value(4)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(4)", + "type": "sub_text" + } + ] } ] } @@ -187,8 +247,13 @@ "type": "col", "nodes": [ { - "value": "key(5)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(5)", + "type": "sub_text" + } + ] } ] }, @@ -197,8 +262,13 @@ "type": "col", "nodes": [ { - "value": "value(5)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(5)", + "type": "sub_text" + } + ] } ] } @@ -220,8 +290,13 @@ "type": "col", "nodes": [ { - "value": "key(6)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(6)", + "type": "sub_text" + } + ] } ] }, @@ -230,8 +305,13 @@ "type": "col", "nodes": [ { - "value": "value(6)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(6)", + "type": "sub_text" + } + ] } ] } @@ -246,8 +326,13 @@ "type": "col", "nodes": [ { - "value": "key(7)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(7)", + "type": "sub_text" + } + ] } ] }, @@ -256,8 +341,13 @@ "type": "col", "nodes": [ { - "value": "value(7)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(7)", + "type": "sub_text" + } + ] } ] } @@ -279,8 +369,13 @@ "type": "col", "nodes": [ { - "value": "key(8)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(8)", + "type": "sub_text" + } + ] } ] }, @@ -289,8 +384,13 @@ "type": "col", "nodes": [ { - "value": "value(8)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(8)", + "type": "sub_text" + } + ] } ] } @@ -305,8 +405,13 @@ "type": "col", "nodes": [ { - "value": "key(9)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(9)", + "type": "sub_text" + } + ] } ] }, @@ -315,8 +420,13 @@ "type": "col", "nodes": [ { - "value": "value(9)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(9)", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/components/list/build_from_pointer.json b/test/maroto/components/list/build_from_pointer.json index 43cb567d..42d429ed 100755 --- a/test/maroto/components/list/build_from_pointer.json +++ b/test/maroto/components/list/build_from_pointer.json @@ -10,8 +10,13 @@ "type": "col", "nodes": [ { - "value": "Key", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key", + "type": "sub_text" + } + ] } ] }, @@ -20,8 +25,13 @@ "type": "col", "nodes": [ { - "value": "Value", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Value", + "type": "sub_text" + } + ] } ] } @@ -43,8 +53,13 @@ "type": "col", "nodes": [ { - "value": "key(0)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(0)", + "type": "sub_text" + } + ] } ] }, @@ -53,8 +68,13 @@ "type": "col", "nodes": [ { - "value": "value(0)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(0)", + "type": "sub_text" + } + ] } ] } @@ -69,8 +89,13 @@ "type": "col", "nodes": [ { - "value": "key(1)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(1)", + "type": "sub_text" + } + ] } ] }, @@ -79,8 +104,13 @@ "type": "col", "nodes": [ { - "value": "value(1)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(1)", + "type": "sub_text" + } + ] } ] } @@ -102,8 +132,13 @@ "type": "col", "nodes": [ { - "value": "key(2)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(2)", + "type": "sub_text" + } + ] } ] }, @@ -112,8 +147,13 @@ "type": "col", "nodes": [ { - "value": "value(2)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(2)", + "type": "sub_text" + } + ] } ] } @@ -128,8 +168,13 @@ "type": "col", "nodes": [ { - "value": "key(3)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(3)", + "type": "sub_text" + } + ] } ] }, @@ -138,8 +183,13 @@ "type": "col", "nodes": [ { - "value": "value(3)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(3)", + "type": "sub_text" + } + ] } ] } @@ -161,8 +211,13 @@ "type": "col", "nodes": [ { - "value": "key(4)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(4)", + "type": "sub_text" + } + ] } ] }, @@ -171,8 +226,13 @@ "type": "col", "nodes": [ { - "value": "value(4)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(4)", + "type": "sub_text" + } + ] } ] } @@ -187,8 +247,13 @@ "type": "col", "nodes": [ { - "value": "key(5)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(5)", + "type": "sub_text" + } + ] } ] }, @@ -197,8 +262,13 @@ "type": "col", "nodes": [ { - "value": "value(5)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(5)", + "type": "sub_text" + } + ] } ] } @@ -220,8 +290,13 @@ "type": "col", "nodes": [ { - "value": "key(6)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(6)", + "type": "sub_text" + } + ] } ] }, @@ -230,8 +305,13 @@ "type": "col", "nodes": [ { - "value": "value(6)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(6)", + "type": "sub_text" + } + ] } ] } @@ -246,8 +326,13 @@ "type": "col", "nodes": [ { - "value": "key(7)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(7)", + "type": "sub_text" + } + ] } ] }, @@ -256,8 +341,13 @@ "type": "col", "nodes": [ { - "value": "value(7)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(7)", + "type": "sub_text" + } + ] } ] } @@ -279,8 +369,13 @@ "type": "col", "nodes": [ { - "value": "key(8)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(8)", + "type": "sub_text" + } + ] } ] }, @@ -289,8 +384,13 @@ "type": "col", "nodes": [ { - "value": "value(8)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(8)", + "type": "sub_text" + } + ] } ] } @@ -305,8 +405,13 @@ "type": "col", "nodes": [ { - "value": "key(9)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "key(9)", + "type": "sub_text" + } + ] } ] }, @@ -315,8 +420,13 @@ "type": "col", "nodes": [ { - "value": "value(9)", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "value(9)", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/components/texts/new_text_col_custom_prop.json b/test/maroto/components/texts/new_text_col_custom_prop.json index 35476f31..5960e5e6 100755 --- a/test/maroto/components/texts/new_text_col_custom_prop.json +++ b/test/maroto/components/texts/new_text_col_custom_prop.json @@ -3,7 +3,6 @@ "type": "col", "nodes": [ { - "value": "code", "type": "text", "details": { "prop_align": "R", @@ -16,7 +15,20 @@ "prop_left": 3, "prop_top": 12, "prop_vertical_padding": 20 - } + }, + "nodes": [ + { + "value": "code", + "type": "sub_text", + "details": { + "prop_color": "RGB(100, 50, 200)", + "prop_font_family": "helvetica", + "prop_font_size": 14, + "prop_font_style": "B", + "prop_hyperlink":"https://www.google.com" + } + } + ] } ] } \ No newline at end of file diff --git a/test/maroto/components/texts/new_text_col_default_prop.json b/test/maroto/components/texts/new_text_col_default_prop.json index ba519354..9a6e5090 100755 --- a/test/maroto/components/texts/new_text_col_default_prop.json +++ b/test/maroto/components/texts/new_text_col_default_prop.json @@ -3,8 +3,13 @@ "type": "col", "nodes": [ { - "value": "code", - "type": "text" + "type": "text", + "nodes": [ + { + "type": "sub_text", + "value": "code" + } + ] } ] } \ No newline at end of file diff --git a/test/maroto/components/texts/new_text_custom_prop.json b/test/maroto/components/texts/new_text_custom_prop.json index b174a8b1..2dc25c0c 100755 --- a/test/maroto/components/texts/new_text_custom_prop.json +++ b/test/maroto/components/texts/new_text_custom_prop.json @@ -1,6 +1,18 @@ { - "value": "code", "type": "text", + "nodes": [ + { + "value": "code", + "type": "sub_text", + "details": { + "prop_color": "RGB(100, 50, 200)", + "prop_font_family": "helvetica", + "prop_font_size": 14, + "prop_font_style": "B", + "prop_hyperlink": "https://www.google.com" + } + } + ], "details": { "prop_align": "R", "prop_breakline_strategy": "dash_strategy", diff --git a/test/maroto/components/texts/new_text_default_prop.json b/test/maroto/components/texts/new_text_default_prop.json index 7bda82c6..2280e36d 100755 --- a/test/maroto/components/texts/new_text_default_prop.json +++ b/test/maroto/components/texts/new_text_default_prop.json @@ -1,4 +1,9 @@ { - "value": "code", - "type": "text" + "type": "text", + "nodes": [ + { + "type": "sub_text", + "value": "code" + } + ] } \ No newline at end of file diff --git a/test/maroto/components/texts/new_text_row_custom_prop.json b/test/maroto/components/texts/new_text_row_custom_prop.json index dd3c9399..5f06ab03 100755 --- a/test/maroto/components/texts/new_text_row_custom_prop.json +++ b/test/maroto/components/texts/new_text_row_custom_prop.json @@ -10,7 +10,6 @@ }, "nodes": [ { - "value": "code", "type": "text", "details": { "prop_align": "R", @@ -23,7 +22,20 @@ "prop_left": 3, "prop_top": 12, "prop_vertical_padding": 20 - } + }, + "nodes": [ + { + "value": "code", + "type": "sub_text", + "details": { + "prop_color": "RGB(100, 50, 200)", + "prop_font_family": "helvetica", + "prop_font_size": 14, + "prop_font_style": "B", + "prop_hyperlink": "https://www.google.com" + } + } + ] } ] } diff --git a/test/maroto/components/texts/new_text_row_default_prop.json b/test/maroto/components/texts/new_text_row_default_prop.json index 72636cdc..a1af5260 100755 --- a/test/maroto/components/texts/new_text_row_default_prop.json +++ b/test/maroto/components/texts/new_text_row_default_prop.json @@ -10,8 +10,13 @@ }, "nodes": [ { - "value": "code", - "type": "text" + "type": "text", + "nodes": [ + { + "type": "sub_text", + "value": "code" + } + ] } ] } From eb538ab524a3063e90adee2edf4aea95fb937bc5 Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Tue, 4 Jun 2024 00:37:05 -0300 Subject: [PATCH 05/15] test: validate the use of personalized texts --- internal/providers/gofpdf/provider_test.go | 22 ++++++++++++ mocks/Provider.go | 35 +++++++++++++++++++ mocks/Text.go | 35 +++++++++++++++++++ pkg/components/text/text_test.go | 18 ++++++++++ .../components/texts/new_text_empty.json | 9 +++++ 5 files changed, 119 insertions(+) create mode 100755 test/maroto/components/texts/new_text_empty.json diff --git a/internal/providers/gofpdf/provider_test.go b/internal/providers/gofpdf/provider_test.go index d3a1ba2e..43ae7078 100644 --- a/internal/providers/gofpdf/provider_test.go +++ b/internal/providers/gofpdf/provider_test.go @@ -7,6 +7,7 @@ import ( "time" "github.com/johnfercher/maroto/v2/pkg/consts/barcode" + "github.com/johnfercher/maroto/v2/pkg/props" "github.com/johnfercher/maroto/v2/internal/fixture" "github.com/johnfercher/maroto/v2/internal/merror" @@ -55,6 +56,27 @@ func TestProvider_AddText(t *testing.T) { text.AssertNumberOfCalls(t, "Add", 1) } +func TestProvider_AddCustomText(t *testing.T) { + // Arrange + cell := &entity.Cell{} + prop := fixture.TextProp() + subs := []*entity.SubText{entity.NewSubText("text", props.NewSubText(&prop))} + + text := mocks.NewText(t) + text.EXPECT().AddCustomText(subs, cell, &prop) + + dep := &gofpdf.Dependencies{ + Text: text, + } + sut := gofpdf.New(dep) + + // Act + sut.AddCustomText(subs, cell, &prop) + + // Assert + text.AssertNumberOfCalls(t, "AddCustomText", 1) +} + func TestProvider_GetTextHeight(t *testing.T) { // Arrange fontHeightToReturn := 10.0 diff --git a/mocks/Provider.go b/mocks/Provider.go index 7e41ddc6..1b448d2d 100644 --- a/mocks/Provider.go +++ b/mocks/Provider.go @@ -95,6 +95,41 @@ func (_c *Provider_AddBarCode_Call) RunAndReturn(run func(string, *entity.Cell, return _c } +// AddCustomText provides a mock function with given fields: subs, cell, textPs +func (_m *Provider) AddCustomText(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text) { + _m.Called(subs, cell, textPs) +} + +// Provider_AddCustomText_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'AddCustomText' +type Provider_AddCustomText_Call struct { + *mock.Call +} + +// AddCustomText is a helper method to define mock.On call +// - subs []*entity.SubText +// - cell *entity.Cell +// - textPs *props.Text +func (_e *Provider_Expecter) AddCustomText(subs interface{}, cell interface{}, textPs interface{}) *Provider_AddCustomText_Call { + return &Provider_AddCustomText_Call{Call: _e.mock.On("AddCustomText", subs, cell, textPs)} +} + +func (_c *Provider_AddCustomText_Call) Run(run func(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text)) *Provider_AddCustomText_Call { + _c.Call.Run(func(args mock.Arguments) { + run(args[0].([]*entity.SubText), args[1].(*entity.Cell), args[2].(*props.Text)) + }) + return _c +} + +func (_c *Provider_AddCustomText_Call) Return() *Provider_AddCustomText_Call { + _c.Call.Return() + return _c +} + +func (_c *Provider_AddCustomText_Call) RunAndReturn(run func([]*entity.SubText, *entity.Cell, *props.Text)) *Provider_AddCustomText_Call { + _c.Call.Return(run) + return _c +} + // AddImageFromBytes provides a mock function with given fields: bytes, cell, prop, _a3 func (_m *Provider) AddImageFromBytes(bytes []byte, cell *entity.Cell, prop *props.Rect, _a3 extension.Type) { _m.Called(bytes, cell, prop, _a3) diff --git a/mocks/Text.go b/mocks/Text.go index d793e16c..5e17a52f 100644 --- a/mocks/Text.go +++ b/mocks/Text.go @@ -57,6 +57,41 @@ func (_c *Text_Add_Call) RunAndReturn(run func(string, *entity.Cell, *props.Text return _c } +// AddCustomText provides a mock function with given fields: subs, cell, textPs +func (_m *Text) AddCustomText(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text) { + _m.Called(subs, cell, textPs) +} + +// Text_AddCustomText_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'AddCustomText' +type Text_AddCustomText_Call struct { + *mock.Call +} + +// AddCustomText is a helper method to define mock.On call +// - subs []*entity.SubText +// - cell *entity.Cell +// - textPs *props.Text +func (_e *Text_Expecter) AddCustomText(subs interface{}, cell interface{}, textPs interface{}) *Text_AddCustomText_Call { + return &Text_AddCustomText_Call{Call: _e.mock.On("AddCustomText", subs, cell, textPs)} +} + +func (_c *Text_AddCustomText_Call) Run(run func(subs []*entity.SubText, cell *entity.Cell, textPs *props.Text)) *Text_AddCustomText_Call { + _c.Call.Run(func(args mock.Arguments) { + run(args[0].([]*entity.SubText), args[1].(*entity.Cell), args[2].(*props.Text)) + }) + return _c +} + +func (_c *Text_AddCustomText_Call) Return() *Text_AddCustomText_Call { + _c.Call.Return() + return _c +} + +func (_c *Text_AddCustomText_Call) RunAndReturn(run func([]*entity.SubText, *entity.Cell, *props.Text)) *Text_AddCustomText_Call { + _c.Call.Return(run) + return _c +} + // GetLinesQuantity provides a mock function with given fields: text, fontFamily, colWidth func (_m *Text) GetLinesQuantity(text string, fontFamily props.Text, colWidth float64) int { ret := _m.Called(text, fontFamily, colWidth) diff --git a/pkg/components/text/text_test.go b/pkg/components/text/text_test.go index 1ce6bb09..79e414de 100644 --- a/pkg/components/text/text_test.go +++ b/pkg/components/text/text_test.go @@ -11,6 +11,24 @@ import ( "github.com/johnfercher/maroto/v2/pkg/test" ) +func TestNewCustomText(t *testing.T) { + t.Run("when prop is not sent, should use default", func(t *testing.T) { + // Act + sut := text.NewCustomText([]*entity.SubText{entity.NewSubText("code")}) + + // Assert + test.New(t).Assert(sut.GetStructure()).Equals("components/texts/new_text_default_prop.json") + }) + + t.Run("when sub text is not sent, should use an empty string", func(t *testing.T) { + // Act + sut := text.NewCustomText([]*entity.SubText{}) + + // Assert + test.New(t).Assert(sut.GetStructure()).Equals("components/texts/new_text_empty.json") + }) +} + func TestNew(t *testing.T) { t.Run("when prop is not sent, should use default", func(t *testing.T) { // Act diff --git a/test/maroto/components/texts/new_text_empty.json b/test/maroto/components/texts/new_text_empty.json new file mode 100755 index 00000000..64ff2bec --- /dev/null +++ b/test/maroto/components/texts/new_text_empty.json @@ -0,0 +1,9 @@ +{ + "type": "text", + "nodes": [ + { + "type": "sub_text", + "value": "" + } + ] +} \ No newline at end of file From 396d4b9932555e7724abbf670857e2f263824dfe Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Tue, 4 Jun 2024 00:39:31 -0300 Subject: [PATCH 06/15] feat: allow the use of different styles in the same text Create a structure of subtexts within texts, making each subtext have its own personalized style. --- pkg/components/text/text.go | 52 +++++++++++++++++++++++----- pkg/props/text.go | 69 +++++++++++++++++++++++++++++++++++++ 2 files changed, 112 insertions(+), 9 deletions(-) diff --git a/pkg/components/text/text.go b/pkg/components/text/text.go index 9f2956e9..74260c08 100644 --- a/pkg/components/text/text.go +++ b/pkg/components/text/text.go @@ -12,9 +12,9 @@ import ( ) type Text struct { - value string - prop props.Text + text []*entity.SubText config *entity.Config + props props.Text } // New is responsible to create an instance of a Text. @@ -25,8 +25,24 @@ func New(value string, ps ...props.Text) core.Component { } return &Text{ - value: value, - prop: textProp, + text: []*entity.SubText{entity.NewSubText(value, props.NewSubText(&textProp))}, + props: textProp, + } +} + +// NewCustomText is responsible for creating an instance of a Text based on SubTexts +func NewCustomText(subText []*entity.SubText, ps ...props.Text) core.Component { + textProp := props.Text{} + if len(ps) > 0 { + textProp = ps[0] + } + if len(subText) == 0 { + subText = append(subText, entity.NewSubText("")) + } + + return &Text{ + text: subText, + props: textProp, } } @@ -45,10 +61,24 @@ func NewRow(height float64, value string, ps ...props.Text) core.Row { // GetStructure returns the Structure of a Text. func (t *Text) GetStructure() *node.Node[core.Structure] { + node := node.New( + core.Structure{ + Type: "text", + Details: t.props.ToMap(), + }) + + for _, sub := range t.text { + node.AddNext(t.getStructSubText(sub)) + } + + return node +} + +func (t *Text) getStructSubText(sub *entity.SubText) *node.Node[core.Structure] { str := core.Structure{ - Type: "text", - Value: t.value, - Details: t.prop.ToMap(), + Type: "sub_text", + Value: sub.Value, + Details: sub.Prop.ToMap(), } return node.New(str) @@ -57,10 +87,14 @@ func (t *Text) GetStructure() *node.Node[core.Structure] { // SetConfig sets the config. func (t *Text) SetConfig(config *entity.Config) { t.config = config - t.prop.MakeValid(t.config.DefaultFont) + t.props.MakeValid(t.config.DefaultFont) + for _, sub := range t.text { + sub.Prop.MakeValid(t.config.DefaultFont) + } } // Render renders a Text into a PDF context. func (t *Text) Render(provider core.Provider, cell *entity.Cell) { - provider.AddText(t.value, cell, &t.prop) + innerCell := cell.Copy() + provider.AddCustomText(t.text, &innerCell, &t.props) } diff --git a/pkg/props/text.go b/pkg/props/text.go index bfb22d94..d4914df2 100644 --- a/pkg/props/text.go +++ b/pkg/props/text.go @@ -7,6 +7,75 @@ import ( "github.com/johnfercher/maroto/v2/pkg/consts/fontstyle" ) +// SubText represents properties from a SubText inside a cell. +type SubText struct { + // Family of the text, ex: consts.Arial, helvetica and etc. + Family string + // Style of the text, ex: consts.Normal, bold and etc. + Style fontstyle.Type + // Size of the text. + Size float64 + // Color define the font style color. + Color *Color + // Hyperlink define a link to be opened when the text is clicked. + Hyperlink *string +} + +func (sub *SubText) MakeValid(font *Font) { + undefinedValue := 0.0 + + if sub.Family == "" { + sub.Family = font.Family + } + + if sub.Style == "" { + sub.Style = font.Style + } + + if sub.Size == undefinedValue { + sub.Size = font.Size + } + + if sub.Color == nil { + sub.Color = font.Color + } +} + +func (t *SubText) ToMap() map[string]interface{} { + m := make(map[string]interface{}) + if t.Family != "" { + m["prop_font_family"] = t.Family + } + + if t.Style != "" { + m["prop_font_style"] = t.Style + } + + if t.Size != 0 { + m["prop_font_size"] = t.Size + } + + if t.Color != nil { + m["prop_color"] = t.Color.ToString() + } + + if t.Hyperlink != nil { + m["prop_hyperlink"] = *t.Hyperlink + } + + return m +} + +func NewSubText(t *Text) SubText { + return SubText{ + Family: t.Family, + Style: t.Style, + Size: t.Size, + Color: t.Color, + Hyperlink: t.Hyperlink, + } +} + // Text represents properties from a Text inside a cell. type Text struct { // Top is the amount of space between the upper cell limit and the text. From 87e87553e9e6086728aa2719ff70266228f46f38 Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Tue, 4 Jun 2024 22:18:55 -0300 Subject: [PATCH 07/15] feat: adjust cursor position height based on font --- internal/providers/gofpdf/text.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/providers/gofpdf/text.go b/internal/providers/gofpdf/text.go index 4a6071b2..0e96b272 100644 --- a/internal/providers/gofpdf/text.go +++ b/internal/providers/gofpdf/text.go @@ -106,7 +106,7 @@ func (s *text) setTheLineProps(sub *entity.SubText, heightLargestFont, y float64 if heightLargestFont > fontHeight { y -= (heightLargestFont - fontHeight) / 2 } - return y + return y + heightLargestFont } // This method is responsible for validating text properties, ensuring that they are within the standard From a1394eba2754ae033abef49bfc3cf10431130cc4 Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Tue, 4 Jun 2024 22:21:18 -0300 Subject: [PATCH 08/15] doc: Update examples to include subtext --- test/maroto/example_unit_test.json | 9 +- test/maroto/examples/addpage.json | 99 +- test/maroto/examples/background.json | 60 +- test/maroto/examples/billing.json | 1145 +++++++++-- test/maroto/examples/cellstyle.json | 1215 ++++++++++-- test/maroto/examples/compression.json | 108 +- test/maroto/examples/customdimensions.json | 12 +- test/maroto/examples/customfont.json | 2028 +++++++++++++++----- test/maroto/examples/custompage.json | 12 +- test/maroto/examples/footer.json | 639 +++++- test/maroto/examples/header.json | 639 +++++- test/maroto/examples/list.json | 1824 ++++++++++++++---- test/maroto/examples/lowmemory.json | 600 +++++- test/maroto/examples/margins.json | 114 +- test/maroto/examples/maxgridsum.json | 348 +++- test/maroto/examples/mergepdf.json | 450 ++++- test/maroto/examples/metadatas.json | 9 +- test/maroto/examples/orientation.json | 9 +- test/maroto/examples/pagenumber.json | 135 +- test/maroto/examples/parallelism.json | 600 +++++- test/maroto/examples/protection.json | 9 +- test/maroto/examples/simplest.json | 9 +- test/maroto/examples/textgrid.json | 192 +- 23 files changed, 8317 insertions(+), 1948 deletions(-) diff --git a/test/maroto/example_unit_test.json b/test/maroto/example_unit_test.json index 6d04f2e7..795bdd73 100755 --- a/test/maroto/example_unit_test.json +++ b/test/maroto/example_unit_test.json @@ -120,8 +120,13 @@ "type": "col", "nodes": [ { - "value": "text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "text", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/addpage.json b/test/maroto/examples/addpage.json index 2f32f622..b852b239 100755 --- a/test/maroto/examples/addpage.json +++ b/test/maroto/examples/addpage.json @@ -37,8 +37,13 @@ }, "nodes": [ { - "value": "page1 row1", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row1", + "type": "sub_text" + } + ] } ] } @@ -56,8 +61,13 @@ }, "nodes": [ { - "value": "page1 row2", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row2", + "type": "sub_text" + } + ] } ] } @@ -75,8 +85,13 @@ }, "nodes": [ { - "value": "page1 row3", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row3", + "type": "sub_text" + } + ] } ] } @@ -94,8 +109,13 @@ }, "nodes": [ { - "value": "page1 row4", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row4", + "type": "sub_text" + } + ] } ] } @@ -113,8 +133,13 @@ }, "nodes": [ { - "value": "page1 row5", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row5", + "type": "sub_text" + } + ] } ] } @@ -132,8 +157,13 @@ }, "nodes": [ { - "value": "page1 row6", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row6", + "type": "sub_text" + } + ] } ] } @@ -151,8 +181,13 @@ }, "nodes": [ { - "value": "page1 row7", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row7", + "type": "sub_text" + } + ] } ] } @@ -170,8 +205,13 @@ }, "nodes": [ { - "value": "page1 row8", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row8", + "type": "sub_text" + } + ] } ] } @@ -204,8 +244,13 @@ }, "nodes": [ { - "value": "page1 row9", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page1 row9", + "type": "sub_text" + } + ] } ] } @@ -238,8 +283,13 @@ }, "nodes": [ { - "value": "page2 row1", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page2 row1", + "type": "sub_text" + } + ] } ] } @@ -272,8 +322,13 @@ }, "nodes": [ { - "value": "page3 row1", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "page3 row1", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/background.json b/test/maroto/examples/background.json index 8f65a87a..8118ef8a 100755 --- a/test/maroto/examples/background.json +++ b/test/maroto/examples/background.json @@ -44,11 +44,19 @@ "type": "col", "nodes": [ { - "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", "type": "text", "details": { "prop_font_size": 18 - } + }, + "nodes": [ + { + "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", + "type": "sub_text", + "details": { + "prop_font_size": 18 + } + } + ] } ] }, @@ -132,11 +140,19 @@ "type": "col", "nodes": [ { - "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", "type": "text", "details": { "prop_font_size": 18 - } + }, + "nodes": [ + { + "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", + "type": "sub_text", + "details": { + "prop_font_size": 18 + } + } + ] } ] }, @@ -220,11 +236,19 @@ "type": "col", "nodes": [ { - "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", "type": "text", "details": { "prop_font_size": 18 - } + }, + "nodes": [ + { + "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", + "type": "sub_text", + "details": { + "prop_font_size": 18 + } + } + ] } ] }, @@ -308,11 +332,19 @@ "type": "col", "nodes": [ { - "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", "type": "text", "details": { "prop_font_size": 18 - } + }, + "nodes": [ + { + "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", + "type": "sub_text", + "details": { + "prop_font_size": 18 + } + } + ] } ] }, @@ -396,11 +428,19 @@ "type": "col", "nodes": [ { - "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", "type": "text", "details": { "prop_font_size": 18 - } + }, + "nodes": [ + { + "value": "O GDG-Petrópolis certifica que Fulano de Tal 123 participou do Evento Exemplo 123 no dia 2019-03-30.", + "type": "sub_text", + "details": { + "prop_font_size": 18 + } + } + ] } ] }, diff --git a/test/maroto/examples/billing.json b/test/maroto/examples/billing.json index 9daba773..73ef421b 100755 --- a/test/maroto/examples/billing.json +++ b/test/maroto/examples/billing.json @@ -51,16 +51,24 @@ "type": "col", "nodes": [ { - "value": "AnyCompany Name Inc. 851 Any Street Name, Suite 120, Any City, CA 45123.", "type": "text", "details": { "prop_align": "R", "prop_color": "RGB(150, 10, 10)", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "AnyCompany Name Inc. 851 Any Street Name, Suite 120, Any City, CA 45123.", + "type": "sub_text", + "details": { + "prop_color": "RGB(150, 10, 10)", + "prop_font_size": 8 + } + } + ] }, { - "value": "Tel: 55 024 12345-1234", "type": "text", "details": { "prop_align": "R", @@ -68,10 +76,20 @@ "prop_font_size": 8, "prop_font_style": "BI", "prop_top": 12 - } + }, + "nodes": [ + { + "value": "Tel: 55 024 12345-1234", + "type": "sub_text", + "details": { + "prop_color": "RGB(10, 10, 150)", + "prop_font_size": 8, + "prop_font_style": "BI" + } + } + ] }, { - "value": "www.mycompany.com", "type": "text", "details": { "prop_align": "R", @@ -79,7 +97,18 @@ "prop_font_size": 8, "prop_font_style": "BI", "prop_top": 15 - } + }, + "nodes": [ + { + "value": "www.mycompany.com", + "type": "sub_text", + "details": { + "prop_color": "RGB(10, 10, 150)", + "prop_font_size": 8, + "prop_font_style": "BI" + } + } + ] } ] } @@ -97,13 +126,21 @@ }, "nodes": [ { - "value": "Invoice ABC123456789", "type": "text", "details": { "prop_align": "C", "prop_font_style": "B", "prop_top": 3 - } + }, + "nodes": [ + { + "value": "Invoice ABC123456789", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] } @@ -121,7 +158,6 @@ "type": "col", "nodes": [ { - "value": "Transactions", "type": "text", "details": { "prop_align": "C", @@ -129,7 +165,18 @@ "prop_font_size": 9, "prop_font_style": "B", "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "Transactions", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 9, + "prop_font_style": "B" + } + } + ] } ] } @@ -148,13 +195,22 @@ "type": "col", "nodes": [ { - "value": "Product", "type": "text", "details": { "prop_align": "C", "prop_font_size": 9, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Product", + "type": "sub_text", + "details": { + "prop_font_size": 9, + "prop_font_style": "B" + } + } + ] } ] }, @@ -163,13 +219,22 @@ "type": "col", "nodes": [ { - "value": "Quantity", "type": "text", "details": { "prop_align": "C", "prop_font_size": 9, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Quantity", + "type": "sub_text", + "details": { + "prop_font_size": 9, + "prop_font_style": "B" + } + } + ] } ] }, @@ -178,13 +243,22 @@ "type": "col", "nodes": [ { - "value": "Price", "type": "text", "details": { "prop_align": "C", "prop_font_size": 9, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Price", + "type": "sub_text", + "details": { + "prop_font_size": 9, + "prop_font_style": "B" + } + } + ] } ] } @@ -206,12 +280,20 @@ "type": "col", "nodes": [ { - "value": "Swamp", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Swamp", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -220,12 +302,20 @@ "type": "col", "nodes": [ { - "value": "12", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "12", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -234,12 +324,20 @@ "type": "col", "nodes": [ { - "value": "R$ 4,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 4,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -258,12 +356,20 @@ "type": "col", "nodes": [ { - "value": "Sorin, A Planeswalker", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Sorin, A Planeswalker", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -272,12 +378,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -286,12 +400,20 @@ "type": "col", "nodes": [ { - "value": "R$ 90,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 90,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -313,12 +435,20 @@ "type": "col", "nodes": [ { - "value": "Tassa", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Tassa", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -327,12 +457,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -341,12 +479,20 @@ "type": "col", "nodes": [ { - "value": "R$ 30,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 30,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -365,12 +511,20 @@ "type": "col", "nodes": [ { - "value": "Skinrender", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Skinrender", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -379,12 +533,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -393,12 +555,20 @@ "type": "col", "nodes": [ { - "value": "R$ 9,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 9,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -420,12 +590,20 @@ "type": "col", "nodes": [ { - "value": "Island", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Island", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -434,12 +612,20 @@ "type": "col", "nodes": [ { - "value": "12", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "12", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -448,12 +634,20 @@ "type": "col", "nodes": [ { - "value": "R$ 4,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 4,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -472,12 +666,20 @@ "type": "col", "nodes": [ { - "value": "Mountain", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Mountain", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -486,12 +688,20 @@ "type": "col", "nodes": [ { - "value": "12", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "12", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -500,12 +710,20 @@ "type": "col", "nodes": [ { - "value": "R$ 4,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 4,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -527,12 +745,20 @@ "type": "col", "nodes": [ { - "value": "Plain", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Plain", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -541,12 +767,20 @@ "type": "col", "nodes": [ { - "value": "12", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "12", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -555,12 +789,20 @@ "type": "col", "nodes": [ { - "value": "R$ 4,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 4,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -579,12 +821,20 @@ "type": "col", "nodes": [ { - "value": "Black Lotus", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Black Lotus", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -593,12 +843,20 @@ "type": "col", "nodes": [ { - "value": "1", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "1", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -607,12 +865,20 @@ "type": "col", "nodes": [ { - "value": "R$ 1.000,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 1.000,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -634,12 +900,20 @@ "type": "col", "nodes": [ { - "value": "Time Walk", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Time Walk", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -648,12 +922,20 @@ "type": "col", "nodes": [ { - "value": "1", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "1", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -662,12 +944,20 @@ "type": "col", "nodes": [ { - "value": "R$ 1.000,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 1.000,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -686,12 +976,20 @@ "type": "col", "nodes": [ { - "value": "Emberclave", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Emberclave", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -700,12 +998,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -714,12 +1020,20 @@ "type": "col", "nodes": [ { - "value": "R$ 44,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 44,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -741,12 +1055,20 @@ "type": "col", "nodes": [ { - "value": "Anax", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Anax", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -755,12 +1077,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -769,12 +1099,20 @@ "type": "col", "nodes": [ { - "value": "R$ 32,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 32,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -793,12 +1131,20 @@ "type": "col", "nodes": [ { - "value": "Murderous Rider", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Murderous Rider", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -807,12 +1153,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -821,12 +1175,20 @@ "type": "col", "nodes": [ { - "value": "R$ 22,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 22,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -848,12 +1210,20 @@ "type": "col", "nodes": [ { - "value": "Gray Merchant of Asphodel", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Gray Merchant of Asphodel", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -862,12 +1232,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -876,12 +1254,20 @@ "type": "col", "nodes": [ { - "value": "R$ 2,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 2,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -900,12 +1286,20 @@ "type": "col", "nodes": [ { - "value": "Ajani's Pridemate", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Ajani's Pridemate", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -914,12 +1308,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -928,12 +1330,20 @@ "type": "col", "nodes": [ { - "value": "R$ 2,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 2,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -955,12 +1365,20 @@ "type": "col", "nodes": [ { - "value": "Renan, Chatuba", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Renan, Chatuba", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -969,12 +1387,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -983,12 +1409,20 @@ "type": "col", "nodes": [ { - "value": "R$ 19,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 19,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1007,12 +1441,20 @@ "type": "col", "nodes": [ { - "value": "Tymarett", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Tymarett", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1021,12 +1463,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1035,12 +1485,20 @@ "type": "col", "nodes": [ { - "value": "R$ 13,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 13,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1062,12 +1520,20 @@ "type": "col", "nodes": [ { - "value": "Doom Blade", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Doom Blade", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1076,12 +1542,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1090,12 +1564,20 @@ "type": "col", "nodes": [ { - "value": "R$ 5,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 5,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1114,12 +1596,20 @@ "type": "col", "nodes": [ { - "value": "Dark Lord", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dark Lord", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1128,12 +1618,20 @@ "type": "col", "nodes": [ { - "value": "3", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "3", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1142,12 +1640,20 @@ "type": "col", "nodes": [ { - "value": "R$ 7,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 7,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1169,12 +1675,20 @@ "type": "col", "nodes": [ { - "value": "Memory of Thanatos", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Memory of Thanatos", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1183,12 +1697,20 @@ "type": "col", "nodes": [ { - "value": "3", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "3", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1197,12 +1719,20 @@ "type": "col", "nodes": [ { - "value": "R$ 32,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 32,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1221,12 +1751,20 @@ "type": "col", "nodes": [ { - "value": "Poring", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Poring", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1235,12 +1773,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1249,12 +1795,20 @@ "type": "col", "nodes": [ { - "value": "R$ 1,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 1,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1276,12 +1830,20 @@ "type": "col", "nodes": [ { - "value": "Deviling", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Deviling", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1290,12 +1852,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1304,12 +1874,20 @@ "type": "col", "nodes": [ { - "value": "R$ 99,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 99,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1328,12 +1906,20 @@ "type": "col", "nodes": [ { - "value": "Seiya", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Seiya", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1342,12 +1928,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1356,12 +1950,20 @@ "type": "col", "nodes": [ { - "value": "R$ 45,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 45,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1383,12 +1985,20 @@ "type": "col", "nodes": [ { - "value": "Harry Potter", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Harry Potter", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1397,12 +2007,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1411,12 +2029,20 @@ "type": "col", "nodes": [ { - "value": "R$ 62,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 62,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1435,12 +2061,20 @@ "type": "col", "nodes": [ { - "value": "Goku", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Goku", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1449,12 +2083,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1463,12 +2105,20 @@ "type": "col", "nodes": [ { - "value": "R$ 77,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 77,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1490,12 +2140,20 @@ "type": "col", "nodes": [ { - "value": "Phreoni", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Phreoni", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1504,12 +2162,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1518,12 +2184,20 @@ "type": "col", "nodes": [ { - "value": "R$ 22,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 22,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1542,12 +2216,20 @@ "type": "col", "nodes": [ { - "value": "Katheryn High Wizard", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Katheryn High Wizard", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1556,12 +2238,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1570,12 +2260,20 @@ "type": "col", "nodes": [ { - "value": "R$ 25,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 25,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1597,12 +2295,20 @@ "type": "col", "nodes": [ { - "value": "Lord Seyren", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Lord Seyren", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1611,12 +2317,20 @@ "type": "col", "nodes": [ { - "value": "4", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "4", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] }, @@ -1625,12 +2339,20 @@ "type": "col", "nodes": [ { - "value": "R$ 55,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "R$ 55,00", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1649,14 +2371,23 @@ "type": "col", "nodes": [ { - "value": "Total:", "type": "text", "details": { "prop_align": "R", "prop_font_size": 8, "prop_font_style": "B", "prop_top": 5 - } + }, + "nodes": [ + { + "value": "Total:", + "type": "sub_text", + "details": { + "prop_font_size": 8, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1665,14 +2396,23 @@ "type": "col", "nodes": [ { - "value": "R$ 2.567,00", "type": "text", "details": { "prop_align": "C", "prop_font_size": 8, "prop_font_style": "B", "prop_top": 5 - } + }, + "nodes": [ + { + "value": "R$ 2.567,00", + "type": "sub_text", + "details": { + "prop_font_size": 8, + "prop_font_style": "B" + } + } + ] } ] } @@ -1696,14 +2436,23 @@ } }, { - "value": "5123.151231.512314.1251251.123215", "type": "text", "details": { "prop_align": "C", "prop_font_size": 9, "prop_font_style": "B", "prop_top": 12 - } + }, + "nodes": [ + { + "value": "5123.151231.512314.1251251.123215", + "type": "sub_text", + "details": { + "prop_font_size": 9, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1732,7 +2481,6 @@ "type": "col", "nodes": [ { - "value": "Tel: 55 024 12345-1234", "type": "text", "details": { "prop_align": "L", @@ -1740,10 +2488,20 @@ "prop_font_size": 8, "prop_font_style": "BI", "prop_top": 13 - } + }, + "nodes": [ + { + "value": "Tel: 55 024 12345-1234", + "type": "sub_text", + "details": { + "prop_color": "RGB(10, 10, 150)", + "prop_font_size": 8, + "prop_font_style": "BI" + } + } + ] }, { - "value": "www.mycompany.com", "type": "text", "details": { "prop_align": "L", @@ -1751,7 +2509,18 @@ "prop_font_size": 8, "prop_font_style": "BI", "prop_top": 16 - } + }, + "nodes": [ + { + "value": "www.mycompany.com", + "type": "sub_text", + "details": { + "prop_color": "RGB(10, 10, 150)", + "prop_font_size": 8, + "prop_font_style": "BI" + } + } + ] } ] } diff --git a/test/maroto/examples/cellstyle.json b/test/maroto/examples/cellstyle.json index 2df01770..abc5a03e 100755 --- a/test/maroto/examples/cellstyle.json +++ b/test/maroto/examples/cellstyle.json @@ -35,7 +35,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -43,7 +42,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -59,7 +69,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -67,7 +76,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -83,7 +103,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -91,7 +110,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -123,14 +153,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -139,14 +178,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -155,14 +203,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -197,7 +254,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -205,7 +261,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -221,7 +288,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -229,7 +295,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -245,7 +322,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -253,7 +329,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -286,14 +373,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -302,14 +398,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -318,14 +423,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -360,7 +474,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -368,7 +481,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -384,7 +508,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -392,7 +515,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -408,7 +542,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -416,7 +549,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -449,14 +593,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -465,14 +618,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -481,14 +643,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -523,7 +694,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -531,7 +701,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -547,7 +728,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -555,7 +735,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -571,7 +762,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -579,7 +769,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -612,14 +813,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -628,14 +838,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -644,14 +863,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -686,7 +914,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -694,7 +921,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -710,7 +948,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -718,7 +955,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -734,7 +982,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -742,7 +989,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -775,14 +1033,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -791,14 +1058,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -807,14 +1083,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -849,7 +1134,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -857,7 +1141,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -873,7 +1168,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -881,7 +1175,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -897,7 +1202,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -905,7 +1209,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -938,14 +1253,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -954,14 +1278,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -970,14 +1303,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1012,7 +1354,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1020,7 +1361,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1036,7 +1388,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1044,7 +1395,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1060,7 +1422,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1068,7 +1429,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1115,14 +1487,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1131,14 +1512,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1147,14 +1537,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1189,7 +1588,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1197,7 +1595,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1213,7 +1622,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1221,7 +1629,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1237,7 +1656,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1245,7 +1663,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1278,14 +1707,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1294,14 +1732,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1310,14 +1757,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1352,7 +1808,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1360,7 +1815,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1376,7 +1842,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1384,7 +1849,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1400,7 +1876,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1408,7 +1883,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1441,14 +1927,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1457,14 +1952,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1473,14 +1977,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1515,7 +2028,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1523,7 +2035,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1539,7 +2062,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1547,7 +2069,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1563,7 +2096,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1571,7 +2103,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1604,14 +2147,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1620,14 +2172,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1636,14 +2197,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1678,7 +2248,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1686,7 +2255,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1702,7 +2282,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1710,7 +2289,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1726,7 +2316,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1734,7 +2323,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1767,14 +2367,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1783,14 +2392,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1799,14 +2417,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1841,7 +2468,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1849,7 +2475,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1865,7 +2502,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1873,7 +2509,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1889,7 +2536,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -1897,7 +2543,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -1930,14 +2587,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1946,14 +2612,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -1962,14 +2637,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -2004,7 +2688,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2012,7 +2695,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2028,7 +2722,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2036,7 +2729,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2052,7 +2756,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2060,7 +2763,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -2092,14 +2806,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2108,14 +2831,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2124,14 +2856,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -2181,7 +2922,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2189,7 +2929,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2205,7 +2956,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2213,7 +2963,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2229,7 +2990,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2237,7 +2997,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -2270,14 +3041,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2286,14 +3066,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2302,14 +3091,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -2344,7 +3142,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2352,7 +3149,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2368,7 +3176,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2376,7 +3183,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2392,7 +3210,6 @@ }, "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", @@ -2400,7 +3217,18 @@ "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 255, 255)", + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } @@ -2433,14 +3261,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2449,14 +3286,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] }, @@ -2465,14 +3311,23 @@ "type": "col", "nodes": [ { - "value": "string", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_font_style": "B", "prop_top": 2 - } + }, + "nodes": [ + { + "value": "string", + "type": "sub_text", + "details": { + "prop_font_size": 12, + "prop_font_style": "B" + } + } + ] } ] } diff --git a/test/maroto/examples/compression.json b/test/maroto/examples/compression.json index c879a47d..5d7d400d 100755 --- a/test/maroto/examples/compression.json +++ b/test/maroto/examples/compression.json @@ -32,12 +32,20 @@ }, "nodes": [ { - "value": "Main features", "type": "text", "details": { "prop_font_size": 15, "prop_top": 6.5 - } + }, + "nodes": [ + { + "value": "Main features", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] } @@ -52,13 +60,21 @@ "type": "col", "nodes": [ { - "value": "Barcode:", "type": "text", "details": { "prop_align": "C", "prop_font_size": 15, "prop_top": 6 - } + }, + "nodes": [ + { + "value": "Barcode:", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] }, @@ -89,13 +105,21 @@ "type": "col", "nodes": [ { - "value": "QrCode:", "type": "text", "details": { "prop_align": "C", "prop_font_size": 15, "prop_top": 6 - } + }, + "nodes": [ + { + "value": "QrCode:", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] }, @@ -124,13 +148,21 @@ "type": "col", "nodes": [ { - "value": "MatrixCode:", "type": "text", "details": { "prop_align": "C", "prop_font_size": 15, "prop_top": 6 - } + }, + "nodes": [ + { + "value": "MatrixCode:", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] }, @@ -159,13 +191,21 @@ "type": "col", "nodes": [ { - "value": "Image From File:", "type": "text", "details": { "prop_align": "C", "prop_font_size": 15, "prop_top": 6 - } + }, + "nodes": [ + { + "value": "Image From File:", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] }, @@ -194,13 +234,21 @@ "type": "col", "nodes": [ { - "value": "Image From Base64::", "type": "text", "details": { "prop_align": "C", "prop_font_size": 15, "prop_top": 6 - } + }, + "nodes": [ + { + "value": "Image From Base64::", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] }, @@ -231,13 +279,21 @@ "type": "col", "nodes": [ { - "value": "Text:", "type": "text", "details": { "prop_align": "C", "prop_font_size": 15, "prop_top": 6 - } + }, + "nodes": [ + { + "value": "Text:", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] }, @@ -246,13 +302,21 @@ "type": "col", "nodes": [ { - "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac condimentum sem.", "type": "text", "details": { "prop_align": "C", "prop_font_size": 12, "prop_top": 5 - } + }, + "nodes": [ + { + "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac condimentum sem.", + "type": "sub_text", + "details": { + "prop_font_size": 12 + } + } + ] } ] } @@ -267,13 +331,21 @@ "type": "col", "nodes": [ { - "value": "Signature:", "type": "text", "details": { "prop_align": "C", "prop_font_size": 15, "prop_top": 17 - } + }, + "nodes": [ + { + "value": "Signature:", + "type": "sub_text", + "details": { + "prop_font_size": 15 + } + } + ] } ] }, diff --git a/test/maroto/examples/customdimensions.json b/test/maroto/examples/customdimensions.json index ee2b38d8..f65c0fd1 100755 --- a/test/maroto/examples/customdimensions.json +++ b/test/maroto/examples/customdimensions.json @@ -43,12 +43,20 @@ "type": "col", "nodes": [ { - "value": "Gopher International Shipping, Inc.", "type": "text", "details": { "prop_font_size": 12, "prop_top": 12 - } + }, + "nodes": [ + { + "value": "Gopher International Shipping, Inc.", + "type": "sub_text", + "details": { + "prop_font_size": 12 + } + } + ] } ] }, diff --git a/test/maroto/examples/customfont.json b/test/maroto/examples/customfont.json index fdba831f..e3791114 100755 --- a/test/maroto/examples/customfont.json +++ b/test/maroto/examples/customfont.json @@ -28,13 +28,22 @@ "type": "col", "nodes": [ { - "value": "Language", "type": "text", "details": { "prop_align": "C", "prop_font_family": "arial", "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Language", + "type": "sub_text", + "details": { + "prop_font_family": "arial", + "prop_font_style": "B" + } + } + ] } ] }, @@ -43,13 +52,22 @@ "type": "col", "nodes": [ { - "value": "Phrase: Talk is cheap. Show me the code.", "type": "text", "details": { "prop_align": "C", "prop_font_family": "arial", "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Phrase: Talk is cheap. Show me the code.", + "type": "sub_text", + "details": { + "prop_font_family": "arial", + "prop_font_style": "B" + } + } + ] } ] } @@ -67,11 +85,16 @@ "type": "col", "nodes": [ { - "value": "Africâner", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Africâner", + "type": "sub_text" + } + ] } ] }, @@ -80,11 +103,16 @@ "type": "col", "nodes": [ { - "value": "Praat is goedkoop. Wys my die kode.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Praat is goedkoop. Wys my die kode.", + "type": "sub_text" + } + ] } ] } @@ -99,11 +127,16 @@ "type": "col", "nodes": [ { - "value": "Albanês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Albanês", + "type": "sub_text" + } + ] } ] }, @@ -112,11 +145,16 @@ "type": "col", "nodes": [ { - "value": "Biseda është e lirë. Më trego kodin.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Biseda është e lirë. Më trego kodin.", + "type": "sub_text" + } + ] } ] } @@ -134,11 +172,16 @@ "type": "col", "nodes": [ { - "value": "Alemão", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Alemão", + "type": "sub_text" + } + ] } ] }, @@ -147,11 +190,16 @@ "type": "col", "nodes": [ { - "value": "Reden ist billig. Zeig mir den Code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Reden ist billig. Zeig mir den Code.", + "type": "sub_text" + } + ] } ] } @@ -166,11 +214,16 @@ "type": "col", "nodes": [ { - "value": "Amárico", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Amárico", + "type": "sub_text" + } + ] } ] }, @@ -179,11 +232,16 @@ "type": "col", "nodes": [ { - "value": "ወሬ ርካሽ ነው ፡፡ ኮዱን አሳዩኝ ፡፡", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "ወሬ ርካሽ ነው ፡፡ ኮዱን አሳዩኝ ፡፡", + "type": "sub_text" + } + ] } ] } @@ -201,11 +259,16 @@ "type": "col", "nodes": [ { - "value": "Árabe", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Árabe", + "type": "sub_text" + } + ] } ] }, @@ -214,11 +277,16 @@ "type": "col", "nodes": [ { - "value": "كلام رخيص. أرني الكود.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "كلام رخيص. أرني الكود.", + "type": "sub_text" + } + ] } ] } @@ -233,11 +301,16 @@ "type": "col", "nodes": [ { - "value": "Armênio", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Armênio", + "type": "sub_text" + } + ] } ] }, @@ -246,11 +319,16 @@ "type": "col", "nodes": [ { - "value": "Խոսակցությունն էժան է: Showույց տվեք ինձ ծածկագիրը:", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Խոսակցությունն էժան է: Showույց տվեք ինձ ծածկագիրը:", + "type": "sub_text" + } + ] } ] } @@ -268,11 +346,16 @@ "type": "col", "nodes": [ { - "value": "Azerbaijano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Azerbaijano", + "type": "sub_text" + } + ] } ] }, @@ -281,11 +364,16 @@ "type": "col", "nodes": [ { - "value": "Danışıq ucuzdur. Kodu göstərin.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Danışıq ucuzdur. Kodu göstərin.", + "type": "sub_text" + } + ] } ] } @@ -300,11 +388,16 @@ "type": "col", "nodes": [ { - "value": "Basco", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Basco", + "type": "sub_text" + } + ] } ] }, @@ -313,11 +406,16 @@ "type": "col", "nodes": [ { - "value": "Eztabaida merkea da. Erakutsi kodea.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Eztabaida merkea da. Erakutsi kodea.", + "type": "sub_text" + } + ] } ] } @@ -335,11 +433,16 @@ "type": "col", "nodes": [ { - "value": "Bengali", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Bengali", + "type": "sub_text" + } + ] } ] }, @@ -348,11 +451,16 @@ "type": "col", "nodes": [ { - "value": "টক সস্তা। আমাকে কোডটি দেখান", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "টক সস্তা। আমাকে কোডটি দেখান", + "type": "sub_text" + } + ] } ] } @@ -367,11 +475,16 @@ "type": "col", "nodes": [ { - "value": "Bielorusso", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Bielorusso", + "type": "sub_text" + } + ] } ] }, @@ -380,11 +493,16 @@ "type": "col", "nodes": [ { - "value": "Размовы танныя. Пакажыце мне код.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Размовы танныя. Пакажыце мне код.", + "type": "sub_text" + } + ] } ] } @@ -402,11 +520,16 @@ "type": "col", "nodes": [ { - "value": "Birmanês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Birmanês", + "type": "sub_text" + } + ] } ] }, @@ -415,11 +538,16 @@ "type": "col", "nodes": [ { - "value": "ဟောပြောချက်ကစျေးပေါတယ် ကုဒ်ကိုပြပါ။", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "ဟောပြောချက်ကစျေးပေါတယ် ကုဒ်ကိုပြပါ။", + "type": "sub_text" + } + ] } ] } @@ -434,11 +562,16 @@ "type": "col", "nodes": [ { - "value": "Bósnio", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Bósnio", + "type": "sub_text" + } + ] } ] }, @@ -447,11 +580,16 @@ "type": "col", "nodes": [ { - "value": "Govor je jeftin. Pokaži mi šifru.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Govor je jeftin. Pokaži mi šifru.", + "type": "sub_text" + } + ] } ] } @@ -469,11 +607,16 @@ "type": "col", "nodes": [ { - "value": "Búlgaro", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Búlgaro", + "type": "sub_text" + } + ] } ] }, @@ -482,11 +625,16 @@ "type": "col", "nodes": [ { - "value": "Разговорите са евтини. Покажи ми кода.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Разговорите са евтини. Покажи ми кода.", + "type": "sub_text" + } + ] } ] } @@ -501,11 +649,16 @@ "type": "col", "nodes": [ { - "value": "Canarim", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Canarim", + "type": "sub_text" + } + ] } ] }, @@ -514,11 +667,16 @@ "type": "col", "nodes": [ { - "value": "ಮಾತುಕತೆ ಅಗ್ಗವಾಗಿದೆ. ನನಗೆ ಕೋಡ್ ತೋರಿಸಿ.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "ಮಾತುಕತೆ ಅಗ್ಗವಾಗಿದೆ. ನನಗೆ ಕೋಡ್ ತೋರಿಸಿ.", + "type": "sub_text" + } + ] } ] } @@ -536,11 +694,16 @@ "type": "col", "nodes": [ { - "value": "Catalão", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Catalão", + "type": "sub_text" + } + ] } ] }, @@ -549,11 +712,16 @@ "type": "col", "nodes": [ { - "value": "Parlar és barat. Mostra’m el codi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Parlar és barat. Mostra’m el codi.", + "type": "sub_text" + } + ] } ] } @@ -568,11 +736,16 @@ "type": "col", "nodes": [ { - "value": "Cazeque", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Cazeque", + "type": "sub_text" + } + ] } ] }, @@ -581,11 +754,16 @@ "type": "col", "nodes": [ { - "value": "Сөйлесу арзан. Маған кодты көрсетіңіз.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Сөйлесу арзан. Маған кодты көрсетіңіз.", + "type": "sub_text" + } + ] } ] } @@ -603,11 +781,16 @@ "type": "col", "nodes": [ { - "value": "Cebuano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Cebuano", + "type": "sub_text" + } + ] } ] }, @@ -616,11 +799,16 @@ "type": "col", "nodes": [ { - "value": "Barato ra ang sulti. Ipakita kanako ang code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Barato ra ang sulti. Ipakita kanako ang code.", + "type": "sub_text" + } + ] } ] } @@ -635,11 +823,16 @@ "type": "col", "nodes": [ { - "value": "Chinês Simplificado", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Chinês Simplificado", + "type": "sub_text" + } + ] } ] }, @@ -648,11 +841,16 @@ "type": "col", "nodes": [ { - "value": "谈话很便宜。给我看代码。", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "谈话很便宜。给我看代码。", + "type": "sub_text" + } + ] } ] } @@ -670,11 +868,16 @@ "type": "col", "nodes": [ { - "value": "Chinês Tradicional", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Chinês Tradicional", + "type": "sub_text" + } + ] } ] }, @@ -683,11 +886,16 @@ "type": "col", "nodes": [ { - "value": "談話很便宜。給我看代碼。", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "談話很便宜。給我看代碼。", + "type": "sub_text" + } + ] } ] } @@ -702,11 +910,16 @@ "type": "col", "nodes": [ { - "value": "Cingalês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Cingalês", + "type": "sub_text" + } + ] } ] }, @@ -715,11 +928,16 @@ "type": "col", "nodes": [ { - "value": "කතාව ලාභයි. කේතය මට පෙන්වන්න.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "කතාව ලාභයි. කේතය මට පෙන්වන්න.", + "type": "sub_text" + } + ] } ] } @@ -737,11 +955,16 @@ "type": "col", "nodes": [ { - "value": "Coreano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Coreano", + "type": "sub_text" + } + ] } ] }, @@ -750,11 +973,16 @@ "type": "col", "nodes": [ { - "value": "토크는 싸다. 코드를 보여주세요.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "토크는 싸다. 코드를 보여주세요.", + "type": "sub_text" + } + ] } ] } @@ -769,11 +997,16 @@ "type": "col", "nodes": [ { - "value": "Corso", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Corso", + "type": "sub_text" + } + ] } ] }, @@ -782,11 +1015,16 @@ "type": "col", "nodes": [ { - "value": "Parlà hè bonu. Mostrami u codice.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Parlà hè bonu. Mostrami u codice.", + "type": "sub_text" + } + ] } ] } @@ -804,11 +1042,16 @@ "type": "col", "nodes": [ { - "value": "Croata", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Croata", + "type": "sub_text" + } + ] } ] }, @@ -817,11 +1060,16 @@ "type": "col", "nodes": [ { - "value": "Razgovor je jeftin. Pokaži mi šifru.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Razgovor je jeftin. Pokaži mi šifru.", + "type": "sub_text" + } + ] } ] } @@ -836,11 +1084,16 @@ "type": "col", "nodes": [ { - "value": "Curdo", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Curdo", + "type": "sub_text" + } + ] } ] }, @@ -849,11 +1102,16 @@ "type": "col", "nodes": [ { - "value": "Axaftin erzan e. Kodê nîşanî min bidin.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Axaftin erzan e. Kodê nîşanî min bidin.", + "type": "sub_text" + } + ] } ] } @@ -871,11 +1129,16 @@ "type": "col", "nodes": [ { - "value": "Dinamarquês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Dinamarquês", + "type": "sub_text" + } + ] } ] }, @@ -884,11 +1147,16 @@ "type": "col", "nodes": [ { - "value": "Tal er billig. Vis mig koden.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tal er billig. Vis mig koden.", + "type": "sub_text" + } + ] } ] } @@ -903,11 +1171,16 @@ "type": "col", "nodes": [ { - "value": "Eslovaco", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Eslovaco", + "type": "sub_text" + } + ] } ] }, @@ -916,11 +1189,16 @@ "type": "col", "nodes": [ { - "value": "Hovor je lacný. Ukáž mi kód.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Hovor je lacný. Ukáž mi kód.", + "type": "sub_text" + } + ] } ] } @@ -938,11 +1216,16 @@ "type": "col", "nodes": [ { - "value": "Esloveno", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Esloveno", + "type": "sub_text" + } + ] } ] }, @@ -951,11 +1234,16 @@ "type": "col", "nodes": [ { - "value": "Pogovor je poceni. Pokaži mi kodo.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Pogovor je poceni. Pokaži mi kodo.", + "type": "sub_text" + } + ] } ] } @@ -970,11 +1258,16 @@ "type": "col", "nodes": [ { - "value": "Espanhol", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Espanhol", + "type": "sub_text" + } + ] } ] }, @@ -983,11 +1276,16 @@ "type": "col", "nodes": [ { - "value": "Hablar es barato. Enséñame el código.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Hablar es barato. Enséñame el código.", + "type": "sub_text" + } + ] } ] } @@ -1005,11 +1303,16 @@ "type": "col", "nodes": [ { - "value": "Esperanto", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Esperanto", + "type": "sub_text" + } + ] } ] }, @@ -1018,11 +1321,16 @@ "type": "col", "nodes": [ { - "value": "Babilado estas malmultekosta. Montru al mi la kodon.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Babilado estas malmultekosta. Montru al mi la kodon.", + "type": "sub_text" + } + ] } ] } @@ -1037,11 +1345,16 @@ "type": "col", "nodes": [ { - "value": "Estoniano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Estoniano", + "type": "sub_text" + } + ] } ] }, @@ -1050,11 +1363,16 @@ "type": "col", "nodes": [ { - "value": "Rääkimine on odav. Näita mulle koodi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Rääkimine on odav. Näita mulle koodi.", + "type": "sub_text" + } + ] } ] } @@ -1072,11 +1390,16 @@ "type": "col", "nodes": [ { - "value": "Filipino", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Filipino", + "type": "sub_text" + } + ] } ] }, @@ -1085,11 +1408,16 @@ "type": "col", "nodes": [ { - "value": "Mura ang usapan. Ipakita sa akin ang code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Mura ang usapan. Ipakita sa akin ang code.", + "type": "sub_text" + } + ] } ] } @@ -1104,11 +1432,16 @@ "type": "col", "nodes": [ { - "value": "Finlandês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Finlandês", + "type": "sub_text" + } + ] } ] }, @@ -1117,11 +1450,16 @@ "type": "col", "nodes": [ { - "value": "Puhe on halpaa. Näytä koodi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Puhe on halpaa. Näytä koodi.", + "type": "sub_text" + } + ] } ] } @@ -1139,11 +1477,16 @@ "type": "col", "nodes": [ { - "value": "Francês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Francês", + "type": "sub_text" + } + ] } ] }, @@ -1152,11 +1495,16 @@ "type": "col", "nodes": [ { - "value": "Parler n'est pas cher. Montre-moi le code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Parler n'est pas cher. Montre-moi le code.", + "type": "sub_text" + } + ] } ] } @@ -1171,11 +1519,16 @@ "type": "col", "nodes": [ { - "value": "Frísio Ocidental", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Frísio Ocidental", + "type": "sub_text" + } + ] } ] }, @@ -1184,11 +1537,16 @@ "type": "col", "nodes": [ { - "value": "Prate is goedkeap. Lit my de koade sjen.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Prate is goedkeap. Lit my de koade sjen.", + "type": "sub_text" + } + ] } ] } @@ -1206,11 +1564,16 @@ "type": "col", "nodes": [ { - "value": "Gaélico Escocês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Gaélico Escocês", + "type": "sub_text" + } + ] } ] }, @@ -1219,11 +1582,16 @@ "type": "col", "nodes": [ { - "value": "Tha còmhradh saor. Seall dhomh an còd.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tha còmhradh saor. Seall dhomh an còd.", + "type": "sub_text" + } + ] } ] } @@ -1238,11 +1606,16 @@ "type": "col", "nodes": [ { - "value": "Galego", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Galego", + "type": "sub_text" + } + ] } ] }, @@ -1251,11 +1624,16 @@ "type": "col", "nodes": [ { - "value": "Falar é barato. Móstrame o código.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Falar é barato. Móstrame o código.", + "type": "sub_text" + } + ] } ] } @@ -1273,11 +1651,16 @@ "type": "col", "nodes": [ { - "value": "Galês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Galês", + "type": "sub_text" + } + ] } ] }, @@ -1286,11 +1669,16 @@ "type": "col", "nodes": [ { - "value": "Mae siarad yn rhad. Dangoswch y cod i mi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Mae siarad yn rhad. Dangoswch y cod i mi.", + "type": "sub_text" + } + ] } ] } @@ -1305,11 +1693,16 @@ "type": "col", "nodes": [ { - "value": "Georgiano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Georgiano", + "type": "sub_text" + } + ] } ] }, @@ -1318,11 +1711,16 @@ "type": "col", "nodes": [ { - "value": "აუბარი იაფია. მაჩვენე კოდი.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "აუბარი იაფია. მაჩვენე კოდი.", + "type": "sub_text" + } + ] } ] } @@ -1340,11 +1738,16 @@ "type": "col", "nodes": [ { - "value": "Grego", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Grego", + "type": "sub_text" + } + ] } ] }, @@ -1353,11 +1756,16 @@ "type": "col", "nodes": [ { - "value": "Η συζήτηση είναι φθηνή. Δείξε μου τον κωδικό.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Η συζήτηση είναι φθηνή. Δείξε μου τον κωδικό.", + "type": "sub_text" + } + ] } ] } @@ -1372,11 +1780,16 @@ "type": "col", "nodes": [ { - "value": "Guzerate", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Guzerate", + "type": "sub_text" + } + ] } ] }, @@ -1385,11 +1798,16 @@ "type": "col", "nodes": [ { - "value": "વાતો કરવી સસ્તી છે. મને કોડ બતાવો.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "વાતો કરવી સસ્તી છે. મને કોડ બતાવો.", + "type": "sub_text" + } + ] } ] } @@ -1407,11 +1825,16 @@ "type": "col", "nodes": [ { - "value": "Haitiano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Haitiano", + "type": "sub_text" + } + ] } ] }, @@ -1420,11 +1843,16 @@ "type": "col", "nodes": [ { - "value": "Pale bon mache. Montre m kòd la.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Pale bon mache. Montre m kòd la.", + "type": "sub_text" + } + ] } ] } @@ -1439,11 +1867,16 @@ "type": "col", "nodes": [ { - "value": "Hauçá", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Hauçá", + "type": "sub_text" + } + ] } ] }, @@ -1452,11 +1885,16 @@ "type": "col", "nodes": [ { - "value": "Magana tana da arha. Nuna min lambar.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Magana tana da arha. Nuna min lambar.", + "type": "sub_text" + } + ] } ] } @@ -1474,11 +1912,16 @@ "type": "col", "nodes": [ { - "value": "Havaiano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Havaiano", + "type": "sub_text" + } + ] } ] }, @@ -1487,11 +1930,16 @@ "type": "col", "nodes": [ { - "value": "Kūʻai ke kamaʻilio. E hōʻike mai iaʻu i ke pāʻālua.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Kūʻai ke kamaʻilio. E hōʻike mai iaʻu i ke pāʻālua.", + "type": "sub_text" + } + ] } ] } @@ -1506,11 +1954,16 @@ "type": "col", "nodes": [ { - "value": "Hebraico", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Hebraico", + "type": "sub_text" + } + ] } ] }, @@ -1519,11 +1972,16 @@ "type": "col", "nodes": [ { - "value": "הדיבורים זולים. הראה לי את הקוד.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "הדיבורים זולים. הראה לי את הקוד.", + "type": "sub_text" + } + ] } ] } @@ -1541,11 +1999,16 @@ "type": "col", "nodes": [ { - "value": "Híndi", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Híndi", + "type": "sub_text" + } + ] } ] }, @@ -1554,11 +2017,16 @@ "type": "col", "nodes": [ { - "value": "बोलना आसान है। मुझे कोड दिखाओ।", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "बोलना आसान है। मुझे कोड दिखाओ।", + "type": "sub_text" + } + ] } ] } @@ -1573,11 +2041,16 @@ "type": "col", "nodes": [ { - "value": "Hmong", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Hmong", + "type": "sub_text" + } + ] } ] }, @@ -1586,11 +2059,16 @@ "type": "col", "nodes": [ { - "value": "Kev hais lus yog pheej yig. Qhia kuv cov code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Kev hais lus yog pheej yig. Qhia kuv cov code.", + "type": "sub_text" + } + ] } ] } @@ -1608,11 +2086,16 @@ "type": "col", "nodes": [ { - "value": "Holandês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Holandês", + "type": "sub_text" + } + ] } ] }, @@ -1621,11 +2104,16 @@ "type": "col", "nodes": [ { - "value": "Praten is goedkoop. Laat me de code zien.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Praten is goedkoop. Laat me de code zien.", + "type": "sub_text" + } + ] } ] } @@ -1640,11 +2128,16 @@ "type": "col", "nodes": [ { - "value": "Húngaro", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Húngaro", + "type": "sub_text" + } + ] } ] }, @@ -1653,11 +2146,16 @@ "type": "col", "nodes": [ { - "value": "Beszélni olcsó. Mutasd meg a kódot.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Beszélni olcsó. Mutasd meg a kódot.", + "type": "sub_text" + } + ] } ] } @@ -1675,11 +2173,16 @@ "type": "col", "nodes": [ { - "value": "Igbo", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Igbo", + "type": "sub_text" + } + ] } ] }, @@ -1688,11 +2191,16 @@ "type": "col", "nodes": [ { - "value": "Okwu dị ọnụ ala. Gosi m koodu.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Okwu dị ọnụ ala. Gosi m koodu.", + "type": "sub_text" + } + ] } ] } @@ -1707,11 +2215,16 @@ "type": "col", "nodes": [ { - "value": "Lídiche", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Lídiche", + "type": "sub_text" + } + ] } ] }, @@ -1720,11 +2233,16 @@ "type": "col", "nodes": [ { - "value": "רעדן איז ביליק. ווייַזן מיר דעם קאָד.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "רעדן איז ביליק. ווייַזן מיר דעם קאָד.", + "type": "sub_text" + } + ] } ] } @@ -1742,11 +2260,16 @@ "type": "col", "nodes": [ { - "value": "Indonésio", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Indonésio", + "type": "sub_text" + } + ] } ] }, @@ -1755,11 +2278,16 @@ "type": "col", "nodes": [ { - "value": "Berbicara itu murah. Tunjukkan kodenya.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Berbicara itu murah. Tunjukkan kodenya.", + "type": "sub_text" + } + ] } ] } @@ -1789,11 +2317,16 @@ "type": "col", "nodes": [ { - "value": "Inglês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Inglês", + "type": "sub_text" + } + ] } ] }, @@ -1802,11 +2335,16 @@ "type": "col", "nodes": [ { - "value": "Talk is cheap. Show me the code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Talk is cheap. Show me the code.", + "type": "sub_text" + } + ] } ] } @@ -1824,11 +2362,16 @@ "type": "col", "nodes": [ { - "value": "Iorubá", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Iorubá", + "type": "sub_text" + } + ] } ] }, @@ -1837,11 +2380,16 @@ "type": "col", "nodes": [ { - "value": "Ọrọ jẹ olowo poku. Fi koodu naa han mi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Ọrọ jẹ olowo poku. Fi koodu naa han mi.", + "type": "sub_text" + } + ] } ] } @@ -1856,11 +2404,16 @@ "type": "col", "nodes": [ { - "value": "Irlandês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Irlandês", + "type": "sub_text" + } + ] } ] }, @@ -1869,11 +2422,16 @@ "type": "col", "nodes": [ { - "value": "Tá caint saor. Taispeáin dom an cód.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tá caint saor. Taispeáin dom an cód.", + "type": "sub_text" + } + ] } ] } @@ -1891,11 +2449,16 @@ "type": "col", "nodes": [ { - "value": "Islandês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Islandês", + "type": "sub_text" + } + ] } ] }, @@ -1904,11 +2467,16 @@ "type": "col", "nodes": [ { - "value": "Tal er ódýrt. Sýndu mér kóðann.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tal er ódýrt. Sýndu mér kóðann.", + "type": "sub_text" + } + ] } ] } @@ -1923,11 +2491,16 @@ "type": "col", "nodes": [ { - "value": "Italiano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Italiano", + "type": "sub_text" + } + ] } ] }, @@ -1936,11 +2509,16 @@ "type": "col", "nodes": [ { - "value": "Parlare è economico. Mostrami il codice.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Parlare è economico. Mostrami il codice.", + "type": "sub_text" + } + ] } ] } @@ -1958,11 +2536,16 @@ "type": "col", "nodes": [ { - "value": "Japonês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Japonês", + "type": "sub_text" + } + ] } ] }, @@ -1971,11 +2554,16 @@ "type": "col", "nodes": [ { - "value": "口で言うだけなら簡単です。コードを見せてください。", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "口で言うだけなら簡単です。コードを見せてください。", + "type": "sub_text" + } + ] } ] } @@ -1990,11 +2578,16 @@ "type": "col", "nodes": [ { - "value": "Javanês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Javanês", + "type": "sub_text" + } + ] } ] }, @@ -2003,11 +2596,16 @@ "type": "col", "nodes": [ { - "value": "Omongan iku murah. Tampilake kode kasebut.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Omongan iku murah. Tampilake kode kasebut.", + "type": "sub_text" + } + ] } ] } @@ -2025,11 +2623,16 @@ "type": "col", "nodes": [ { - "value": "Khmer", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Khmer", + "type": "sub_text" + } + ] } ] }, @@ -2038,11 +2641,16 @@ "type": "col", "nodes": [ { - "value": "ការនិយាយគឺថោក។ បង្ហាញលេខកូដមកខ្ញុំ", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "ការនិយាយគឺថោក។ បង្ហាញលេខកូដមកខ្ញុំ", + "type": "sub_text" + } + ] } ] } @@ -2057,11 +2665,16 @@ "type": "col", "nodes": [ { - "value": "Laosiano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Laosiano", + "type": "sub_text" + } + ] } ] }, @@ -2070,11 +2683,16 @@ "type": "col", "nodes": [ { - "value": "ການສົນທະນາແມ່ນລາຄາຖືກ. ສະແດງລະຫັດໃຫ້ຂ້ອຍ.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "ການສົນທະນາແມ່ນລາຄາຖືກ. ສະແດງລະຫັດໃຫ້ຂ້ອຍ.", + "type": "sub_text" + } + ] } ] } @@ -2092,11 +2710,16 @@ "type": "col", "nodes": [ { - "value": "Latim", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Latim", + "type": "sub_text" + } + ] } ] }, @@ -2105,11 +2728,16 @@ "type": "col", "nodes": [ { - "value": "Disputatio vilis est. Ostende mihi codice.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Disputatio vilis est. Ostende mihi codice.", + "type": "sub_text" + } + ] } ] } @@ -2124,11 +2752,16 @@ "type": "col", "nodes": [ { - "value": "Letão", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Letão", + "type": "sub_text" + } + ] } ] }, @@ -2137,11 +2770,16 @@ "type": "col", "nodes": [ { - "value": "Saruna ir lēta. Parādiet man kodu.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Saruna ir lēta. Parādiet man kodu.", + "type": "sub_text" + } + ] } ] } @@ -2159,11 +2797,16 @@ "type": "col", "nodes": [ { - "value": "Lituano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Lituano", + "type": "sub_text" + } + ] } ] }, @@ -2172,11 +2815,16 @@ "type": "col", "nodes": [ { - "value": "Kalbėti pigu. Parodyk man kodą.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Kalbėti pigu. Parodyk man kodą.", + "type": "sub_text" + } + ] } ] } @@ -2191,11 +2839,16 @@ "type": "col", "nodes": [ { - "value": "Luxemburguês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Luxemburguês", + "type": "sub_text" + } + ] } ] }, @@ -2204,11 +2857,16 @@ "type": "col", "nodes": [ { - "value": "Schwätzen ass bëlleg. Weist mir de Code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Schwätzen ass bëlleg. Weist mir de Code.", + "type": "sub_text" + } + ] } ] } @@ -2226,11 +2884,16 @@ "type": "col", "nodes": [ { - "value": "Macedônio", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Macedônio", + "type": "sub_text" + } + ] } ] }, @@ -2239,11 +2902,16 @@ "type": "col", "nodes": [ { - "value": "Зборувањето е ефтино. Покажи ми го кодот.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Зборувањето е ефтино. Покажи ми го кодот.", + "type": "sub_text" + } + ] } ] } @@ -2258,11 +2926,16 @@ "type": "col", "nodes": [ { - "value": "Malaiala", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Malaiala", + "type": "sub_text" + } + ] } ] }, @@ -2271,11 +2944,16 @@ "type": "col", "nodes": [ { - "value": "സംസാരം വിലകുറഞ്ഞതാണ്. എനിക്ക് കോഡ് കാണിക്കുക.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "സംസാരം വിലകുറഞ്ഞതാണ്. എനിക്ക് കോഡ് കാണിക്കുക.", + "type": "sub_text" + } + ] } ] } @@ -2293,11 +2971,16 @@ "type": "col", "nodes": [ { - "value": "Malaio", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Malaio", + "type": "sub_text" + } + ] } ] }, @@ -2306,11 +2989,16 @@ "type": "col", "nodes": [ { - "value": "Perbincangan murah. Tunjukkan kod saya.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Perbincangan murah. Tunjukkan kod saya.", + "type": "sub_text" + } + ] } ] } @@ -2325,11 +3013,16 @@ "type": "col", "nodes": [ { - "value": "Malgaxe", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Malgaxe", + "type": "sub_text" + } + ] } ] }, @@ -2338,11 +3031,16 @@ "type": "col", "nodes": [ { - "value": "Mora ny resaka. Asehoy ahy ny kaody.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Mora ny resaka. Asehoy ahy ny kaody.", + "type": "sub_text" + } + ] } ] } @@ -2360,11 +3058,16 @@ "type": "col", "nodes": [ { - "value": "Maltês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Maltês", + "type": "sub_text" + } + ] } ] }, @@ -2373,11 +3076,16 @@ "type": "col", "nodes": [ { - "value": "It-taħdita hija rħisa. Urini l-kodiċi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "It-taħdita hija rħisa. Urini l-kodiċi.", + "type": "sub_text" + } + ] } ] } @@ -2392,11 +3100,16 @@ "type": "col", "nodes": [ { - "value": "Maori", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Maori", + "type": "sub_text" + } + ] } ] }, @@ -2405,11 +3118,16 @@ "type": "col", "nodes": [ { - "value": "He iti te korero. Whakaatuhia mai te tohu.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "He iti te korero. Whakaatuhia mai te tohu.", + "type": "sub_text" + } + ] } ] } @@ -2427,11 +3145,16 @@ "type": "col", "nodes": [ { - "value": "Marati", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Marati", + "type": "sub_text" + } + ] } ] }, @@ -2440,11 +3163,16 @@ "type": "col", "nodes": [ { - "value": "चर्चा स्वस्त आहे. मला कोड दाखवा.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "चर्चा स्वस्त आहे. मला कोड दाखवा.", + "type": "sub_text" + } + ] } ] } @@ -2459,11 +3187,16 @@ "type": "col", "nodes": [ { - "value": "Mongol", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Mongol", + "type": "sub_text" + } + ] } ] }, @@ -2472,11 +3205,16 @@ "type": "col", "nodes": [ { - "value": "Яриа хямд. Надад кодоо харуул.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Яриа хямд. Надад кодоо харуул.", + "type": "sub_text" + } + ] } ] } @@ -2494,11 +3232,16 @@ "type": "col", "nodes": [ { - "value": "Nepalês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Nepalês", + "type": "sub_text" + } + ] } ] }, @@ -2507,11 +3250,16 @@ "type": "col", "nodes": [ { - "value": "कुरा सस्तो छ। मलाई कोड देखाउनुहोस्।", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "कुरा सस्तो छ। मलाई कोड देखाउनुहोस्।", + "type": "sub_text" + } + ] } ] } @@ -2526,11 +3274,16 @@ "type": "col", "nodes": [ { - "value": "Nianja", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Nianja", + "type": "sub_text" + } + ] } ] }, @@ -2539,11 +3292,16 @@ "type": "col", "nodes": [ { - "value": "Kulankhula ndikotsika mtengo. Ndiwonetseni nambala", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Kulankhula ndikotsika mtengo. Ndiwonetseni nambala", + "type": "sub_text" + } + ] } ] } @@ -2561,11 +3319,16 @@ "type": "col", "nodes": [ { - "value": "Norueguês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Norueguês", + "type": "sub_text" + } + ] } ] }, @@ -2574,11 +3337,16 @@ "type": "col", "nodes": [ { - "value": "Snakk er billig. Vis meg koden.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Snakk er billig. Vis meg koden.", + "type": "sub_text" + } + ] } ] } @@ -2593,11 +3361,16 @@ "type": "col", "nodes": [ { - "value": "Oriá", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Oriá", + "type": "sub_text" + } + ] } ] }, @@ -2606,11 +3379,16 @@ "type": "col", "nodes": [ { - "value": "କଥାବାର୍ତ୍ତା ଶସ୍ତା ଅଟେ | ମୋତେ କୋଡ୍ ଦେଖାନ୍ତୁ |", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "କଥାବାର୍ତ୍ତା ଶସ୍ତା ଅଟେ | ମୋତେ କୋଡ୍ ଦେଖାନ୍ତୁ |", + "type": "sub_text" + } + ] } ] } @@ -2628,11 +3406,16 @@ "type": "col", "nodes": [ { - "value": "Panjabi", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Panjabi", + "type": "sub_text" + } + ] } ] }, @@ -2641,11 +3424,16 @@ "type": "col", "nodes": [ { - "value": "ਗੱਲ ਸਸਤਾ ਹੈ. ਮੈਨੂੰ ਕੋਡ ਦਿਖਾਓ.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "ਗੱਲ ਸਸਤਾ ਹੈ. ਮੈਨੂੰ ਕੋਡ ਦਿਖਾਓ.", + "type": "sub_text" + } + ] } ] } @@ -2660,11 +3448,16 @@ "type": "col", "nodes": [ { - "value": "Pashto", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Pashto", + "type": "sub_text" + } + ] } ] }, @@ -2673,11 +3466,16 @@ "type": "col", "nodes": [ { - "value": "خبرې ارزانه دي. ما ته کوډ وښایاست", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "خبرې ارزانه دي. ما ته کوډ وښایاست", + "type": "sub_text" + } + ] } ] } @@ -2695,11 +3493,16 @@ "type": "col", "nodes": [ { - "value": "Persa", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Persa", + "type": "sub_text" + } + ] } ] }, @@ -2708,11 +3511,16 @@ "type": "col", "nodes": [ { - "value": "بحث ارزان است. کد را به من نشان دهید", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "بحث ارزان است. کد را به من نشان دهید", + "type": "sub_text" + } + ] } ] } @@ -2727,11 +3535,16 @@ "type": "col", "nodes": [ { - "value": "Polonês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Polonês", + "type": "sub_text" + } + ] } ] }, @@ -2740,11 +3553,16 @@ "type": "col", "nodes": [ { - "value": "Rozmowa jest tania. Pokaż mi kod.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Rozmowa jest tania. Pokaż mi kod.", + "type": "sub_text" + } + ] } ] } @@ -2762,11 +3580,16 @@ "type": "col", "nodes": [ { - "value": "Português", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Português", + "type": "sub_text" + } + ] } ] }, @@ -2775,11 +3598,16 @@ "type": "col", "nodes": [ { - "value": "Falar é fácil. Mostre-me o código.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Falar é fácil. Mostre-me o código.", + "type": "sub_text" + } + ] } ] } @@ -2794,11 +3622,16 @@ "type": "col", "nodes": [ { - "value": "Quiniaruanda", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Quiniaruanda", + "type": "sub_text" + } + ] } ] }, @@ -2807,11 +3640,16 @@ "type": "col", "nodes": [ { - "value": "Ibiganiro birahendutse. Nyereka kode.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Ibiganiro birahendutse. Nyereka kode.", + "type": "sub_text" + } + ] } ] } @@ -2829,11 +3667,16 @@ "type": "col", "nodes": [ { - "value": "Quirguiz", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Quirguiz", + "type": "sub_text" + } + ] } ] }, @@ -2842,11 +3685,16 @@ "type": "col", "nodes": [ { - "value": "Сүйлөшүү арзан. Мага кодду көрсөтүңүз.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Сүйлөшүү арзан. Мага кодду көрсөтүңүз.", + "type": "sub_text" + } + ] } ] } @@ -2861,11 +3709,16 @@ "type": "col", "nodes": [ { - "value": "Romeno", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Romeno", + "type": "sub_text" + } + ] } ] }, @@ -2874,11 +3727,16 @@ "type": "col", "nodes": [ { - "value": "Vorbirea este ieftină. Arată-mi codul.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Vorbirea este ieftină. Arată-mi codul.", + "type": "sub_text" + } + ] } ] } @@ -2896,11 +3754,16 @@ "type": "col", "nodes": [ { - "value": "Russo", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Russo", + "type": "sub_text" + } + ] } ] }, @@ -2909,11 +3772,16 @@ "type": "col", "nodes": [ { - "value": "Обсуждение дешево. Покажи мне код.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Обсуждение дешево. Покажи мне код.", + "type": "sub_text" + } + ] } ] } @@ -2928,11 +3796,16 @@ "type": "col", "nodes": [ { - "value": "Samoano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Samoano", + "type": "sub_text" + } + ] } ] }, @@ -2941,11 +3814,16 @@ "type": "col", "nodes": [ { - "value": "E taugofie talanoaga. Faʻaali mai le code.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "E taugofie talanoaga. Faʻaali mai le code.", + "type": "sub_text" + } + ] } ] } @@ -2963,11 +3841,16 @@ "type": "col", "nodes": [ { - "value": "Sérvio", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Sérvio", + "type": "sub_text" + } + ] } ] }, @@ -2976,11 +3859,16 @@ "type": "col", "nodes": [ { - "value": "Причање је јефтино. Покажи ми шифру.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Причање је јефтино. Покажи ми шифру.", + "type": "sub_text" + } + ] } ] } @@ -2995,11 +3883,16 @@ "type": "col", "nodes": [ { - "value": "Sindi", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Sindi", + "type": "sub_text" + } + ] } ] }, @@ -3008,11 +3901,16 @@ "type": "col", "nodes": [ { - "value": "ڳالهه سستا آهي. مونکي ڪوڊ ڏيکاريو.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "ڳالهه سستا آهي. مونکي ڪوڊ ڏيکاريو.", + "type": "sub_text" + } + ] } ] } @@ -3030,11 +3928,16 @@ "type": "col", "nodes": [ { - "value": "Somali", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Somali", + "type": "sub_text" + } + ] } ] }, @@ -3043,11 +3946,16 @@ "type": "col", "nodes": [ { - "value": "Hadalku waa jaban yahay. I tus lambarka.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Hadalku waa jaban yahay. I tus lambarka.", + "type": "sub_text" + } + ] } ] } @@ -3062,11 +3970,16 @@ "type": "col", "nodes": [ { - "value": "Soto do Sul", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Soto do Sul", + "type": "sub_text" + } + ] } ] }, @@ -3075,11 +3988,16 @@ "type": "col", "nodes": [ { - "value": "Puo e theko e tlase. Mpontshe khoutu.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Puo e theko e tlase. Mpontshe khoutu.", + "type": "sub_text" + } + ] } ] } @@ -3097,11 +4015,16 @@ "type": "col", "nodes": [ { - "value": "Suaíli", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Suaíli", + "type": "sub_text" + } + ] } ] }, @@ -3110,11 +4033,16 @@ "type": "col", "nodes": [ { - "value": "Mazungumzo ni ya bei rahisi. Nionyeshe nambari.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Mazungumzo ni ya bei rahisi. Nionyeshe nambari.", + "type": "sub_text" + } + ] } ] } @@ -3129,11 +4057,16 @@ "type": "col", "nodes": [ { - "value": "Sueco", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Sueco", + "type": "sub_text" + } + ] } ] }, @@ -3142,11 +4075,16 @@ "type": "col", "nodes": [ { - "value": "Prat är billigt. Visa mig koden.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Prat är billigt. Visa mig koden.", + "type": "sub_text" + } + ] } ] } @@ -3164,11 +4102,16 @@ "type": "col", "nodes": [ { - "value": "Sundanês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Sundanês", + "type": "sub_text" + } + ] } ] }, @@ -3177,11 +4120,16 @@ "type": "col", "nodes": [ { - "value": "Omongan mirah. Tunjukkeun kode na.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Omongan mirah. Tunjukkeun kode na.", + "type": "sub_text" + } + ] } ] } @@ -3196,11 +4144,16 @@ "type": "col", "nodes": [ { - "value": "Tadjique", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tadjique", + "type": "sub_text" + } + ] } ] }, @@ -3209,11 +4162,16 @@ "type": "col", "nodes": [ { - "value": "Сӯҳбат арзон аст. Рамзро ба ман нишон диҳед.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Сӯҳбат арзон аст. Рамзро ба ман нишон диҳед.", + "type": "sub_text" + } + ] } ] } @@ -3231,11 +4189,16 @@ "type": "col", "nodes": [ { - "value": "Tailandês", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tailandês", + "type": "sub_text" + } + ] } ] }, @@ -3244,11 +4207,16 @@ "type": "col", "nodes": [ { - "value": "พูดคุยราคาถูก แสดงรหัส", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "พูดคุยราคาถูก แสดงรหัส", + "type": "sub_text" + } + ] } ] } @@ -3263,11 +4231,16 @@ "type": "col", "nodes": [ { - "value": "Tâmil", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tâmil", + "type": "sub_text" + } + ] } ] }, @@ -3276,11 +4249,16 @@ "type": "col", "nodes": [ { - "value": "பேச்சு மலிவானது. குறியீட்டை எனக்குக் காட்டு.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "பேச்சு மலிவானது. குறியீட்டை எனக்குக் காட்டு.", + "type": "sub_text" + } + ] } ] } @@ -3298,11 +4276,16 @@ "type": "col", "nodes": [ { - "value": "Tártaro", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tártaro", + "type": "sub_text" + } + ] } ] }, @@ -3311,11 +4294,16 @@ "type": "col", "nodes": [ { - "value": "Сөйләшү арзан. Миңа код күрсәтегез.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Сөйләшү арзан. Миңа код күрсәтегез.", + "type": "sub_text" + } + ] } ] } @@ -3330,11 +4318,16 @@ "type": "col", "nodes": [ { - "value": "Tcheco", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Tcheco", + "type": "sub_text" + } + ] } ] }, @@ -3343,11 +4336,16 @@ "type": "col", "nodes": [ { - "value": "Mluvení je levné. Ukaž mi kód.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Mluvení je levné. Ukaž mi kód.", + "type": "sub_text" + } + ] } ] } @@ -3365,11 +4363,16 @@ "type": "col", "nodes": [ { - "value": "Télugo", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Télugo", + "type": "sub_text" + } + ] } ] }, @@ -3378,11 +4381,16 @@ "type": "col", "nodes": [ { - "value": "చర్చ చౌకగా ఉంటుంది. నాకు కోడ్ చూపించు.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "చర్చ చౌకగా ఉంటుంది. నాకు కోడ్ చూపించు.", + "type": "sub_text" + } + ] } ] } @@ -3397,11 +4405,16 @@ "type": "col", "nodes": [ { - "value": "Turco", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Turco", + "type": "sub_text" + } + ] } ] }, @@ -3410,11 +4423,16 @@ "type": "col", "nodes": [ { - "value": "Konuşma ucuz. Bana kodu göster.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Konuşma ucuz. Bana kodu göster.", + "type": "sub_text" + } + ] } ] } @@ -3432,11 +4450,16 @@ "type": "col", "nodes": [ { - "value": "Turcomeno", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Turcomeno", + "type": "sub_text" + } + ] } ] }, @@ -3445,11 +4468,16 @@ "type": "col", "nodes": [ { - "value": "Gepleşik arzan. Kody görkez", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Gepleşik arzan. Kody görkez", + "type": "sub_text" + } + ] } ] } @@ -3464,11 +4492,16 @@ "type": "col", "nodes": [ { - "value": "Ucraniano", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Ucraniano", + "type": "sub_text" + } + ] } ] }, @@ -3477,11 +4510,16 @@ "type": "col", "nodes": [ { - "value": "Розмова дешева. Покажи мені код.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Розмова дешева. Покажи мені код.", + "type": "sub_text" + } + ] } ] } @@ -3499,11 +4537,16 @@ "type": "col", "nodes": [ { - "value": "Uigur", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Uigur", + "type": "sub_text" + } + ] } ] }, @@ -3512,11 +4555,16 @@ "type": "col", "nodes": [ { - "value": "پاراڭ ئەرزان. ماڭا كودنى كۆرسەت.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "پاراڭ ئەرزان. ماڭا كودنى كۆرسەت.", + "type": "sub_text" + } + ] } ] } @@ -3531,11 +4579,16 @@ "type": "col", "nodes": [ { - "value": "Urdu", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Urdu", + "type": "sub_text" + } + ] } ] }, @@ -3544,11 +4597,16 @@ "type": "col", "nodes": [ { - "value": "بات گھٹیا ہے. مجھے کوڈ دکھائیں۔", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "بات گھٹیا ہے. مجھے کوڈ دکھائیں۔", + "type": "sub_text" + } + ] } ] } @@ -3581,11 +4639,16 @@ "type": "col", "nodes": [ { - "value": "Uzbeque", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Uzbeque", + "type": "sub_text" + } + ] } ] }, @@ -3594,11 +4657,16 @@ "type": "col", "nodes": [ { - "value": "Gapirish arzon. Menga kodni ko'rsating.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Gapirish arzon. Menga kodni ko'rsating.", + "type": "sub_text" + } + ] } ] } @@ -3613,11 +4681,16 @@ "type": "col", "nodes": [ { - "value": "Vietnamita", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Vietnamita", + "type": "sub_text" + } + ] } ] }, @@ -3626,11 +4699,16 @@ "type": "col", "nodes": [ { - "value": "Nói chuyện là rẻ. Cho tôi xem mã.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Nói chuyện là rẻ. Cho tôi xem mã.", + "type": "sub_text" + } + ] } ] } @@ -3648,11 +4726,16 @@ "type": "col", "nodes": [ { - "value": "Xhosa", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Xhosa", + "type": "sub_text" + } + ] } ] }, @@ -3661,11 +4744,16 @@ "type": "col", "nodes": [ { - "value": "Ukuthetha akubizi. Ndibonise ikhowudi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Ukuthetha akubizi. Ndibonise ikhowudi.", + "type": "sub_text" + } + ] } ] } @@ -3680,11 +4768,16 @@ "type": "col", "nodes": [ { - "value": "Xona", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Xona", + "type": "sub_text" + } + ] } ] }, @@ -3693,11 +4786,16 @@ "type": "col", "nodes": [ { - "value": "Kutaura kwakachipa. Ndiratidze kodhi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Kutaura kwakachipa. Ndiratidze kodhi.", + "type": "sub_text" + } + ] } ] } @@ -3715,11 +4813,16 @@ "type": "col", "nodes": [ { - "value": "Zulu", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Zulu", + "type": "sub_text" + } + ] } ] }, @@ -3728,11 +4831,16 @@ "type": "col", "nodes": [ { - "value": "Ukukhuluma kushibhile. Ngikhombise ikhodi.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Ukukhuluma kushibhile. Ngikhombise ikhodi.", + "type": "sub_text" + } + ] } ] } @@ -3750,13 +4858,22 @@ }, "nodes": [ { - "value": "long text without spaces", "type": "text", "details": { "prop_font_family": "arial", "prop_font_style": "B", "prop_top": 5 - } + }, + "nodes": [ + { + "value": "long text without spaces", + "type": "sub_text", + "details": { + "prop_font_family": "arial", + "prop_font_style": "B" + } + } + ] } ] } @@ -3771,12 +4888,17 @@ "type": "col", "nodes": [ { - "value": "聲音之道㣲矣天地有自然之聲人聲有自然之節古之聖人得其節之自然者而為之依永和聲至於八音諧而神人和胥是道也文字之作無不講求音韻顧南北異其風土古今殊其轉變喉舌唇齒清濁輕重之分辨在毫釐動多訛舛樊然淆混不可究極自西域梵僧定字母為三十六分五音以總天下之聲而翻切之學興儒者若司馬光鄭樵皆宗之其法有音和類隔互用借聲類例不一後人苦其委曲繁重難以驟曉往往以類隔互用之切改從音和而終莫能得其原也我聖祖仁皇帝", "type": "text", "details": { "prop_align": "C", "prop_breakline_strategy": "dash_strategy" - } + }, + "nodes": [ + { + "value": "聲音之道㣲矣天地有自然之聲人聲有自然之節古之聖人得其節之自然者而為之依永和聲至於八音諧而神人和胥是道也文字之作無不講求音韻顧南北異其風土古今殊其轉變喉舌唇齒清濁輕重之分辨在毫釐動多訛舛樊然淆混不可究極自西域梵僧定字母為三十六分五音以總天下之聲而翻切之學興儒者若司馬光鄭樵皆宗之其法有音和類隔互用借聲類例不一後人苦其委曲繁重難以驟曉往往以類隔互用之切改從音和而終莫能得其原也我聖祖仁皇帝", + "type": "sub_text" + } + ] } ] }, @@ -3785,12 +4907,17 @@ "type": "col", "nodes": [ { - "value": "聲音之道㣲矣天地有自然之聲人聲有自然之節古之聖人得其節之自然者而為之依永和聲至於八音諧而神人和胥是道也文字之作無不講求音韻顧南北異其風土古今殊其轉變喉舌唇齒清濁輕重之分辨在毫釐動多訛舛樊然淆混不可究極自西域梵僧定字母為三十六分五音以總天下之聲而翻切之學興儒者若司馬光鄭樵皆宗之其法有音和類隔互用借聲類例不一後人苦其委曲繁重難以驟曉往往以類隔互用之切改從音和而終莫能得其原也我聖祖仁皇帝", "type": "text", "details": { "prop_align": "L", "prop_breakline_strategy": "dash_strategy" - } + }, + "nodes": [ + { + "value": "聲音之道㣲矣天地有自然之聲人聲有自然之節古之聖人得其節之自然者而為之依永和聲至於八音諧而神人和胥是道也文字之作無不講求音韻顧南北異其風土古今殊其轉變喉舌唇齒清濁輕重之分辨在毫釐動多訛舛樊然淆混不可究極自西域梵僧定字母為三十六分五音以總天下之聲而翻切之學興儒者若司馬光鄭樵皆宗之其法有音和類隔互用借聲類例不一後人苦其委曲繁重難以驟曉往往以類隔互用之切改從音和而終莫能得其原也我聖祖仁皇帝", + "type": "sub_text" + } + ] } ] }, @@ -3799,12 +4926,17 @@ "type": "col", "nodes": [ { - "value": "聲音之道㣲矣天地有自然之聲人聲有自然之節古之聖人得其節之自然者而為之依永和聲至於八音諧而神人和胥是道也文字之作無不講求音韻顧南北異其風土古今殊其轉變喉舌唇齒清濁輕重之分辨在毫釐動多訛舛樊然淆混不可究極自西域梵僧定字母為三十六分五音以總天下之聲而翻切之學興儒者若司馬光鄭樵皆宗之其法有音和類隔互用借聲類例不一後人苦其委曲繁重難以驟曉往往以類隔互用之切改從音和而終莫能得其原也我聖祖仁皇帝", "type": "text", "details": { "prop_align": "R", "prop_breakline_strategy": "dash_strategy" - } + }, + "nodes": [ + { + "value": "聲音之道㣲矣天地有自然之聲人聲有自然之節古之聖人得其節之自然者而為之依永和聲至於八音諧而神人和胥是道也文字之作無不講求音韻顧南北異其風土古今殊其轉變喉舌唇齒清濁輕重之分辨在毫釐動多訛舛樊然淆混不可究極自西域梵僧定字母為三十六分五音以總天下之聲而翻切之學興儒者若司馬光鄭樵皆宗之其法有音和類隔互用借聲類例不一後人苦其委曲繁重難以驟曉往往以類隔互用之切改從音和而終莫能得其原也我聖祖仁皇帝", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/custompage.json b/test/maroto/examples/custompage.json index 90a9b8d9..982d1f11 100755 --- a/test/maroto/examples/custompage.json +++ b/test/maroto/examples/custompage.json @@ -43,12 +43,20 @@ "type": "col", "nodes": [ { - "value": "Gopher International Shipping, Inc.", "type": "text", "details": { "prop_font_size": 12, "prop_top": 12 - } + }, + "nodes": [ + { + "value": "Gopher International Shipping, Inc.", + "type": "sub_text", + "details": { + "prop_font_size": 12 + } + } + ] } ] }, diff --git a/test/maroto/examples/footer.json b/test/maroto/examples/footer.json index 0c54fa10..b0f6ae13 100755 --- a/test/maroto/examples/footer.json +++ b/test/maroto/examples/footer.json @@ -32,11 +32,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -54,11 +62,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -76,11 +92,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -98,11 +122,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -120,11 +152,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -142,11 +182,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -164,11 +212,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -186,11 +242,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -208,11 +272,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -230,11 +302,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -252,11 +332,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -274,11 +362,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -296,11 +392,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -318,11 +422,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -340,11 +452,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -362,11 +482,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -384,11 +512,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -406,11 +542,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -428,11 +572,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -450,11 +602,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -472,11 +632,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -494,11 +662,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -516,11 +692,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -538,11 +722,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -570,13 +762,22 @@ }, "nodes": [ { - "value": "Footer", "type": "text", "details": { "prop_align": "C", "prop_font_size": 10, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Footer", + "type": "sub_text", + "details": { + "prop_font_size": 10, + "prop_font_style": "B" + } + } + ] } ] } @@ -599,11 +800,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -621,11 +830,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -643,11 +860,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -665,11 +890,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -687,11 +920,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -709,11 +950,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -731,11 +980,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -753,11 +1010,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -775,11 +1040,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -797,11 +1070,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -819,11 +1100,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -841,11 +1130,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -863,11 +1160,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -885,11 +1190,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -907,11 +1220,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -929,11 +1250,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -951,11 +1280,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -973,11 +1310,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -995,11 +1340,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1017,11 +1370,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1039,11 +1400,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1061,11 +1430,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1083,11 +1460,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1105,11 +1490,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1137,13 +1530,22 @@ }, "nodes": [ { - "value": "Footer", "type": "text", "details": { "prop_align": "C", "prop_font_size": 10, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Footer", + "type": "sub_text", + "details": { + "prop_font_size": 10, + "prop_font_style": "B" + } + } + ] } ] } @@ -1166,11 +1568,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1188,11 +1598,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1220,13 +1638,22 @@ }, "nodes": [ { - "value": "Footer", "type": "text", "details": { "prop_align": "C", "prop_font_size": 10, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Footer", + "type": "sub_text", + "details": { + "prop_font_size": 10, + "prop_font_style": "B" + } + } + ] } ] } diff --git a/test/maroto/examples/header.json b/test/maroto/examples/header.json index 7b67580f..24e3e69f 100755 --- a/test/maroto/examples/header.json +++ b/test/maroto/examples/header.json @@ -32,13 +32,22 @@ }, "nodes": [ { - "value": "Header", "type": "text", "details": { "prop_align": "C", "prop_font_size": 10, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Header", + "type": "sub_text", + "details": { + "prop_font_size": 10, + "prop_font_style": "B" + } + } + ] } ] } @@ -56,11 +65,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -78,11 +95,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -100,11 +125,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -122,11 +155,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -144,11 +185,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -166,11 +215,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -188,11 +245,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -210,11 +275,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -232,11 +305,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -254,11 +335,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -276,11 +365,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -298,11 +395,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -320,11 +425,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -342,11 +455,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -364,11 +485,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -386,11 +515,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -408,11 +545,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -430,11 +575,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -452,11 +605,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -474,11 +635,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -496,11 +665,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -518,11 +695,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -540,11 +725,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -562,11 +755,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -599,13 +800,22 @@ }, "nodes": [ { - "value": "Header", "type": "text", "details": { "prop_align": "C", "prop_font_size": 10, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Header", + "type": "sub_text", + "details": { + "prop_font_size": 10, + "prop_font_style": "B" + } + } + ] } ] } @@ -623,11 +833,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -645,11 +863,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -667,11 +893,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -689,11 +923,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -711,11 +953,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -733,11 +983,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -755,11 +1013,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -777,11 +1043,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -799,11 +1073,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -821,11 +1103,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -843,11 +1133,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -865,11 +1163,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -887,11 +1193,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -909,11 +1223,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -931,11 +1253,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -953,11 +1283,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -975,11 +1313,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -997,11 +1343,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1019,11 +1373,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1041,11 +1403,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1063,11 +1433,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1085,11 +1463,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1107,11 +1493,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1129,11 +1523,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1166,13 +1568,22 @@ }, "nodes": [ { - "value": "Header", "type": "text", "details": { "prop_align": "C", "prop_font_size": 10, "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Header", + "type": "sub_text", + "details": { + "prop_font_size": 10, + "prop_font_style": "B" + } + } + ] } ] } @@ -1190,11 +1601,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1212,11 +1631,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } diff --git a/test/maroto/examples/list.json b/test/maroto/examples/list.json index e452c8ff..a8b14674 100755 --- a/test/maroto/examples/list.json +++ b/test/maroto/examples/list.json @@ -28,11 +28,19 @@ "type": "col", "nodes": [ { - "value": "Key", "type": "text", "details": { "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Key", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -41,11 +49,19 @@ "type": "col", "nodes": [ { - "value": "Bytes", "type": "text", "details": { "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Bytes", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] } @@ -63,8 +79,13 @@ "type": "col", "nodes": [ { - "value": "Key: 0", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 0", + "type": "sub_text" + } + ] } ] }, @@ -73,8 +94,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 0", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 0", + "type": "sub_text" + } + ] } ] } @@ -89,8 +115,13 @@ "type": "col", "nodes": [ { - "value": "Key: 1", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 1", + "type": "sub_text" + } + ] } ] }, @@ -99,8 +130,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 1", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 1", + "type": "sub_text" + } + ] } ] } @@ -118,8 +154,13 @@ "type": "col", "nodes": [ { - "value": "Key: 2", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 2", + "type": "sub_text" + } + ] } ] }, @@ -128,8 +169,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 2", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 2", + "type": "sub_text" + } + ] } ] } @@ -144,8 +190,13 @@ "type": "col", "nodes": [ { - "value": "Key: 3", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 3", + "type": "sub_text" + } + ] } ] }, @@ -154,8 +205,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 3", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 3", + "type": "sub_text" + } + ] } ] } @@ -173,8 +229,13 @@ "type": "col", "nodes": [ { - "value": "Key: 4", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 4", + "type": "sub_text" + } + ] } ] }, @@ -183,8 +244,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 4", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 4", + "type": "sub_text" + } + ] } ] } @@ -199,8 +265,13 @@ "type": "col", "nodes": [ { - "value": "Key: 5", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 5", + "type": "sub_text" + } + ] } ] }, @@ -209,8 +280,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 5", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 5", + "type": "sub_text" + } + ] } ] } @@ -228,8 +304,13 @@ "type": "col", "nodes": [ { - "value": "Key: 6", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 6", + "type": "sub_text" + } + ] } ] }, @@ -238,8 +319,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 6", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 6", + "type": "sub_text" + } + ] } ] } @@ -254,8 +340,13 @@ "type": "col", "nodes": [ { - "value": "Key: 7", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 7", + "type": "sub_text" + } + ] } ] }, @@ -264,8 +355,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 7", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 7", + "type": "sub_text" + } + ] } ] } @@ -283,8 +379,13 @@ "type": "col", "nodes": [ { - "value": "Key: 8", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 8", + "type": "sub_text" + } + ] } ] }, @@ -293,8 +394,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 8", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 8", + "type": "sub_text" + } + ] } ] } @@ -309,8 +415,13 @@ "type": "col", "nodes": [ { - "value": "Key: 9", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 9", + "type": "sub_text" + } + ] } ] }, @@ -319,8 +430,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 9", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 9", + "type": "sub_text" + } + ] } ] } @@ -338,8 +454,13 @@ "type": "col", "nodes": [ { - "value": "Key: 10", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 10", + "type": "sub_text" + } + ] } ] }, @@ -348,8 +469,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 10", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 10", + "type": "sub_text" + } + ] } ] } @@ -364,8 +490,13 @@ "type": "col", "nodes": [ { - "value": "Key: 11", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 11", + "type": "sub_text" + } + ] } ] }, @@ -374,8 +505,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 11", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 11", + "type": "sub_text" + } + ] } ] } @@ -393,8 +529,13 @@ "type": "col", "nodes": [ { - "value": "Key: 12", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 12", + "type": "sub_text" + } + ] } ] }, @@ -403,8 +544,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 12", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 12", + "type": "sub_text" + } + ] } ] } @@ -419,8 +565,13 @@ "type": "col", "nodes": [ { - "value": "Key: 13", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 13", + "type": "sub_text" + } + ] } ] }, @@ -429,8 +580,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 13", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 13", + "type": "sub_text" + } + ] } ] } @@ -448,8 +604,13 @@ "type": "col", "nodes": [ { - "value": "Key: 14", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 14", + "type": "sub_text" + } + ] } ] }, @@ -458,8 +619,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 14", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 14", + "type": "sub_text" + } + ] } ] } @@ -474,8 +640,13 @@ "type": "col", "nodes": [ { - "value": "Key: 15", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 15", + "type": "sub_text" + } + ] } ] }, @@ -484,8 +655,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 15", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 15", + "type": "sub_text" + } + ] } ] } @@ -503,8 +679,13 @@ "type": "col", "nodes": [ { - "value": "Key: 16", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 16", + "type": "sub_text" + } + ] } ] }, @@ -513,8 +694,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 16", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 16", + "type": "sub_text" + } + ] } ] } @@ -529,8 +715,13 @@ "type": "col", "nodes": [ { - "value": "Key: 17", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 17", + "type": "sub_text" + } + ] } ] }, @@ -539,8 +730,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 17", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 17", + "type": "sub_text" + } + ] } ] } @@ -558,8 +754,13 @@ "type": "col", "nodes": [ { - "value": "Key: 18", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 18", + "type": "sub_text" + } + ] } ] }, @@ -568,8 +769,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 18", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 18", + "type": "sub_text" + } + ] } ] } @@ -584,8 +790,13 @@ "type": "col", "nodes": [ { - "value": "Key: 19", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 19", + "type": "sub_text" + } + ] } ] }, @@ -594,8 +805,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 19", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 19", + "type": "sub_text" + } + ] } ] } @@ -613,8 +829,13 @@ "type": "col", "nodes": [ { - "value": "Key: 20", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 20", + "type": "sub_text" + } + ] } ] }, @@ -623,8 +844,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 20", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 20", + "type": "sub_text" + } + ] } ] } @@ -639,8 +865,13 @@ "type": "col", "nodes": [ { - "value": "Key: 21", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 21", + "type": "sub_text" + } + ] } ] }, @@ -649,8 +880,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 21", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 21", + "type": "sub_text" + } + ] } ] } @@ -668,8 +904,13 @@ "type": "col", "nodes": [ { - "value": "Key: 22", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 22", + "type": "sub_text" + } + ] } ] }, @@ -678,8 +919,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 22", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 22", + "type": "sub_text" + } + ] } ] } @@ -694,8 +940,13 @@ "type": "col", "nodes": [ { - "value": "Key: 23", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 23", + "type": "sub_text" + } + ] } ] }, @@ -704,8 +955,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 23", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 23", + "type": "sub_text" + } + ] } ] } @@ -723,8 +979,13 @@ "type": "col", "nodes": [ { - "value": "Key: 24", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 24", + "type": "sub_text" + } + ] } ] }, @@ -733,8 +994,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 24", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 24", + "type": "sub_text" + } + ] } ] } @@ -749,8 +1015,13 @@ "type": "col", "nodes": [ { - "value": "Key: 25", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 25", + "type": "sub_text" + } + ] } ] }, @@ -759,8 +1030,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 25", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 25", + "type": "sub_text" + } + ] } ] } @@ -778,8 +1054,13 @@ "type": "col", "nodes": [ { - "value": "Key: 26", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 26", + "type": "sub_text" + } + ] } ] }, @@ -788,8 +1069,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 26", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 26", + "type": "sub_text" + } + ] } ] } @@ -804,8 +1090,13 @@ "type": "col", "nodes": [ { - "value": "Key: 27", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 27", + "type": "sub_text" + } + ] } ] }, @@ -814,8 +1105,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 27", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 27", + "type": "sub_text" + } + ] } ] } @@ -833,8 +1129,13 @@ "type": "col", "nodes": [ { - "value": "Key: 28", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 28", + "type": "sub_text" + } + ] } ] }, @@ -843,8 +1144,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 28", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 28", + "type": "sub_text" + } + ] } ] } @@ -859,8 +1165,13 @@ "type": "col", "nodes": [ { - "value": "Key: 29", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 29", + "type": "sub_text" + } + ] } ] }, @@ -869,8 +1180,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 29", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 29", + "type": "sub_text" + } + ] } ] } @@ -888,8 +1204,13 @@ "type": "col", "nodes": [ { - "value": "Key: 30", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 30", + "type": "sub_text" + } + ] } ] }, @@ -898,8 +1219,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 30", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 30", + "type": "sub_text" + } + ] } ] } @@ -914,8 +1240,13 @@ "type": "col", "nodes": [ { - "value": "Key: 31", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 31", + "type": "sub_text" + } + ] } ] }, @@ -924,8 +1255,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 31", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 31", + "type": "sub_text" + } + ] } ] } @@ -943,8 +1279,13 @@ "type": "col", "nodes": [ { - "value": "Key: 32", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 32", + "type": "sub_text" + } + ] } ] }, @@ -953,8 +1294,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 32", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 32", + "type": "sub_text" + } + ] } ] } @@ -969,8 +1315,13 @@ "type": "col", "nodes": [ { - "value": "Key: 33", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 33", + "type": "sub_text" + } + ] } ] }, @@ -979,8 +1330,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 33", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 33", + "type": "sub_text" + } + ] } ] } @@ -998,8 +1354,13 @@ "type": "col", "nodes": [ { - "value": "Key: 34", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 34", + "type": "sub_text" + } + ] } ] }, @@ -1008,8 +1369,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 34", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 34", + "type": "sub_text" + } + ] } ] } @@ -1024,8 +1390,13 @@ "type": "col", "nodes": [ { - "value": "Key: 35", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 35", + "type": "sub_text" + } + ] } ] }, @@ -1034,8 +1405,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 35", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 35", + "type": "sub_text" + } + ] } ] } @@ -1053,8 +1429,13 @@ "type": "col", "nodes": [ { - "value": "Key: 36", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 36", + "type": "sub_text" + } + ] } ] }, @@ -1063,8 +1444,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 36", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 36", + "type": "sub_text" + } + ] } ] } @@ -1079,8 +1465,13 @@ "type": "col", "nodes": [ { - "value": "Key: 37", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 37", + "type": "sub_text" + } + ] } ] }, @@ -1089,8 +1480,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 37", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 37", + "type": "sub_text" + } + ] } ] } @@ -1108,8 +1504,13 @@ "type": "col", "nodes": [ { - "value": "Key: 38", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 38", + "type": "sub_text" + } + ] } ] }, @@ -1118,8 +1519,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 38", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 38", + "type": "sub_text" + } + ] } ] } @@ -1134,8 +1540,13 @@ "type": "col", "nodes": [ { - "value": "Key: 39", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 39", + "type": "sub_text" + } + ] } ] }, @@ -1144,8 +1555,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 39", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 39", + "type": "sub_text" + } + ] } ] } @@ -1163,8 +1579,13 @@ "type": "col", "nodes": [ { - "value": "Key: 40", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 40", + "type": "sub_text" + } + ] } ] }, @@ -1173,8 +1594,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 40", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 40", + "type": "sub_text" + } + ] } ] } @@ -1189,8 +1615,13 @@ "type": "col", "nodes": [ { - "value": "Key: 41", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 41", + "type": "sub_text" + } + ] } ] }, @@ -1199,8 +1630,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 41", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 41", + "type": "sub_text" + } + ] } ] } @@ -1218,8 +1654,13 @@ "type": "col", "nodes": [ { - "value": "Key: 42", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 42", + "type": "sub_text" + } + ] } ] }, @@ -1228,8 +1669,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 42", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 42", + "type": "sub_text" + } + ] } ] } @@ -1244,8 +1690,13 @@ "type": "col", "nodes": [ { - "value": "Key: 43", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 43", + "type": "sub_text" + } + ] } ] }, @@ -1254,8 +1705,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 43", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 43", + "type": "sub_text" + } + ] } ] } @@ -1273,8 +1729,13 @@ "type": "col", "nodes": [ { - "value": "Key: 44", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 44", + "type": "sub_text" + } + ] } ] }, @@ -1283,8 +1744,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 44", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 44", + "type": "sub_text" + } + ] } ] } @@ -1299,8 +1765,13 @@ "type": "col", "nodes": [ { - "value": "Key: 45", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 45", + "type": "sub_text" + } + ] } ] }, @@ -1309,8 +1780,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 45", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 45", + "type": "sub_text" + } + ] } ] } @@ -1328,8 +1804,13 @@ "type": "col", "nodes": [ { - "value": "Key: 46", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 46", + "type": "sub_text" + } + ] } ] }, @@ -1338,8 +1819,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 46", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 46", + "type": "sub_text" + } + ] } ] } @@ -1354,8 +1840,13 @@ "type": "col", "nodes": [ { - "value": "Key: 47", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 47", + "type": "sub_text" + } + ] } ] }, @@ -1364,8 +1855,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 47", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 47", + "type": "sub_text" + } + ] } ] } @@ -1383,8 +1879,13 @@ "type": "col", "nodes": [ { - "value": "Key: 48", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 48", + "type": "sub_text" + } + ] } ] }, @@ -1393,8 +1894,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 48", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 48", + "type": "sub_text" + } + ] } ] } @@ -1409,8 +1915,13 @@ "type": "col", "nodes": [ { - "value": "Key: 49", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 49", + "type": "sub_text" + } + ] } ] }, @@ -1419,8 +1930,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 49", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 49", + "type": "sub_text" + } + ] } ] } @@ -1438,8 +1954,13 @@ "type": "col", "nodes": [ { - "value": "Key: 50", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 50", + "type": "sub_text" + } + ] } ] }, @@ -1448,8 +1969,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 50", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 50", + "type": "sub_text" + } + ] } ] } @@ -1479,8 +2005,13 @@ "type": "col", "nodes": [ { - "value": "Key: 51", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 51", + "type": "sub_text" + } + ] } ] }, @@ -1489,8 +2020,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 51", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 51", + "type": "sub_text" + } + ] } ] } @@ -1508,8 +2044,13 @@ "type": "col", "nodes": [ { - "value": "Key: 52", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 52", + "type": "sub_text" + } + ] } ] }, @@ -1518,8 +2059,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 52", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 52", + "type": "sub_text" + } + ] } ] } @@ -1534,8 +2080,13 @@ "type": "col", "nodes": [ { - "value": "Key: 53", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 53", + "type": "sub_text" + } + ] } ] }, @@ -1544,8 +2095,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 53", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 53", + "type": "sub_text" + } + ] } ] } @@ -1563,8 +2119,13 @@ "type": "col", "nodes": [ { - "value": "Key: 54", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 54", + "type": "sub_text" + } + ] } ] }, @@ -1573,8 +2134,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 54", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 54", + "type": "sub_text" + } + ] } ] } @@ -1589,8 +2155,13 @@ "type": "col", "nodes": [ { - "value": "Key: 55", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 55", + "type": "sub_text" + } + ] } ] }, @@ -1599,8 +2170,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 55", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 55", + "type": "sub_text" + } + ] } ] } @@ -1618,8 +2194,13 @@ "type": "col", "nodes": [ { - "value": "Key: 56", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 56", + "type": "sub_text" + } + ] } ] }, @@ -1628,8 +2209,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 56", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 56", + "type": "sub_text" + } + ] } ] } @@ -1644,8 +2230,13 @@ "type": "col", "nodes": [ { - "value": "Key: 57", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 57", + "type": "sub_text" + } + ] } ] }, @@ -1654,8 +2245,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 57", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 57", + "type": "sub_text" + } + ] } ] } @@ -1673,8 +2269,13 @@ "type": "col", "nodes": [ { - "value": "Key: 58", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 58", + "type": "sub_text" + } + ] } ] }, @@ -1683,8 +2284,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 58", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 58", + "type": "sub_text" + } + ] } ] } @@ -1699,8 +2305,13 @@ "type": "col", "nodes": [ { - "value": "Key: 59", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 59", + "type": "sub_text" + } + ] } ] }, @@ -1709,8 +2320,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 59", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 59", + "type": "sub_text" + } + ] } ] } @@ -1728,8 +2344,13 @@ "type": "col", "nodes": [ { - "value": "Key: 60", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 60", + "type": "sub_text" + } + ] } ] }, @@ -1738,8 +2359,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 60", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 60", + "type": "sub_text" + } + ] } ] } @@ -1754,8 +2380,13 @@ "type": "col", "nodes": [ { - "value": "Key: 61", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 61", + "type": "sub_text" + } + ] } ] }, @@ -1764,8 +2395,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 61", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 61", + "type": "sub_text" + } + ] } ] } @@ -1783,8 +2419,13 @@ "type": "col", "nodes": [ { - "value": "Key: 62", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 62", + "type": "sub_text" + } + ] } ] }, @@ -1793,8 +2434,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 62", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 62", + "type": "sub_text" + } + ] } ] } @@ -1809,8 +2455,13 @@ "type": "col", "nodes": [ { - "value": "Key: 63", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 63", + "type": "sub_text" + } + ] } ] }, @@ -1819,8 +2470,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 63", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 63", + "type": "sub_text" + } + ] } ] } @@ -1838,8 +2494,13 @@ "type": "col", "nodes": [ { - "value": "Key: 64", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 64", + "type": "sub_text" + } + ] } ] }, @@ -1848,8 +2509,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 64", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 64", + "type": "sub_text" + } + ] } ] } @@ -1864,8 +2530,13 @@ "type": "col", "nodes": [ { - "value": "Key: 65", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 65", + "type": "sub_text" + } + ] } ] }, @@ -1874,8 +2545,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 65", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 65", + "type": "sub_text" + } + ] } ] } @@ -1893,8 +2569,13 @@ "type": "col", "nodes": [ { - "value": "Key: 66", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 66", + "type": "sub_text" + } + ] } ] }, @@ -1903,8 +2584,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 66", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 66", + "type": "sub_text" + } + ] } ] } @@ -1919,8 +2605,13 @@ "type": "col", "nodes": [ { - "value": "Key: 67", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 67", + "type": "sub_text" + } + ] } ] }, @@ -1929,8 +2620,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 67", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 67", + "type": "sub_text" + } + ] } ] } @@ -1948,8 +2644,13 @@ "type": "col", "nodes": [ { - "value": "Key: 68", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 68", + "type": "sub_text" + } + ] } ] }, @@ -1958,8 +2659,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 68", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 68", + "type": "sub_text" + } + ] } ] } @@ -1974,8 +2680,13 @@ "type": "col", "nodes": [ { - "value": "Key: 69", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 69", + "type": "sub_text" + } + ] } ] }, @@ -1984,8 +2695,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 69", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 69", + "type": "sub_text" + } + ] } ] } @@ -2003,8 +2719,13 @@ "type": "col", "nodes": [ { - "value": "Key: 70", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 70", + "type": "sub_text" + } + ] } ] }, @@ -2013,8 +2734,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 70", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 70", + "type": "sub_text" + } + ] } ] } @@ -2029,8 +2755,13 @@ "type": "col", "nodes": [ { - "value": "Key: 71", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 71", + "type": "sub_text" + } + ] } ] }, @@ -2039,8 +2770,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 71", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 71", + "type": "sub_text" + } + ] } ] } @@ -2058,8 +2794,13 @@ "type": "col", "nodes": [ { - "value": "Key: 72", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 72", + "type": "sub_text" + } + ] } ] }, @@ -2068,8 +2809,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 72", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 72", + "type": "sub_text" + } + ] } ] } @@ -2084,8 +2830,13 @@ "type": "col", "nodes": [ { - "value": "Key: 73", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 73", + "type": "sub_text" + } + ] } ] }, @@ -2094,8 +2845,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 73", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 73", + "type": "sub_text" + } + ] } ] } @@ -2113,8 +2869,13 @@ "type": "col", "nodes": [ { - "value": "Key: 74", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 74", + "type": "sub_text" + } + ] } ] }, @@ -2123,8 +2884,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 74", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 74", + "type": "sub_text" + } + ] } ] } @@ -2139,8 +2905,13 @@ "type": "col", "nodes": [ { - "value": "Key: 75", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 75", + "type": "sub_text" + } + ] } ] }, @@ -2149,8 +2920,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 75", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 75", + "type": "sub_text" + } + ] } ] } @@ -2168,8 +2944,13 @@ "type": "col", "nodes": [ { - "value": "Key: 76", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 76", + "type": "sub_text" + } + ] } ] }, @@ -2178,8 +2959,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 76", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 76", + "type": "sub_text" + } + ] } ] } @@ -2194,8 +2980,13 @@ "type": "col", "nodes": [ { - "value": "Key: 77", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 77", + "type": "sub_text" + } + ] } ] }, @@ -2204,8 +2995,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 77", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 77", + "type": "sub_text" + } + ] } ] } @@ -2223,8 +3019,13 @@ "type": "col", "nodes": [ { - "value": "Key: 78", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 78", + "type": "sub_text" + } + ] } ] }, @@ -2233,8 +3034,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 78", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 78", + "type": "sub_text" + } + ] } ] } @@ -2249,8 +3055,13 @@ "type": "col", "nodes": [ { - "value": "Key: 79", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 79", + "type": "sub_text" + } + ] } ] }, @@ -2259,8 +3070,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 79", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 79", + "type": "sub_text" + } + ] } ] } @@ -2278,8 +3094,13 @@ "type": "col", "nodes": [ { - "value": "Key: 80", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 80", + "type": "sub_text" + } + ] } ] }, @@ -2288,8 +3109,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 80", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 80", + "type": "sub_text" + } + ] } ] } @@ -2304,8 +3130,13 @@ "type": "col", "nodes": [ { - "value": "Key: 81", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 81", + "type": "sub_text" + } + ] } ] }, @@ -2314,8 +3145,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 81", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 81", + "type": "sub_text" + } + ] } ] } @@ -2333,8 +3169,13 @@ "type": "col", "nodes": [ { - "value": "Key: 82", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 82", + "type": "sub_text" + } + ] } ] }, @@ -2343,8 +3184,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 82", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 82", + "type": "sub_text" + } + ] } ] } @@ -2359,8 +3205,13 @@ "type": "col", "nodes": [ { - "value": "Key: 83", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 83", + "type": "sub_text" + } + ] } ] }, @@ -2369,8 +3220,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 83", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 83", + "type": "sub_text" + } + ] } ] } @@ -2388,8 +3244,13 @@ "type": "col", "nodes": [ { - "value": "Key: 84", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 84", + "type": "sub_text" + } + ] } ] }, @@ -2398,8 +3259,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 84", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 84", + "type": "sub_text" + } + ] } ] } @@ -2414,8 +3280,13 @@ "type": "col", "nodes": [ { - "value": "Key: 85", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 85", + "type": "sub_text" + } + ] } ] }, @@ -2424,8 +3295,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 85", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 85", + "type": "sub_text" + } + ] } ] } @@ -2443,8 +3319,13 @@ "type": "col", "nodes": [ { - "value": "Key: 86", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 86", + "type": "sub_text" + } + ] } ] }, @@ -2453,8 +3334,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 86", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 86", + "type": "sub_text" + } + ] } ] } @@ -2469,8 +3355,13 @@ "type": "col", "nodes": [ { - "value": "Key: 87", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 87", + "type": "sub_text" + } + ] } ] }, @@ -2479,8 +3370,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 87", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 87", + "type": "sub_text" + } + ] } ] } @@ -2498,8 +3394,13 @@ "type": "col", "nodes": [ { - "value": "Key: 88", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 88", + "type": "sub_text" + } + ] } ] }, @@ -2508,8 +3409,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 88", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 88", + "type": "sub_text" + } + ] } ] } @@ -2524,8 +3430,13 @@ "type": "col", "nodes": [ { - "value": "Key: 89", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 89", + "type": "sub_text" + } + ] } ] }, @@ -2534,8 +3445,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 89", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 89", + "type": "sub_text" + } + ] } ] } @@ -2553,8 +3469,13 @@ "type": "col", "nodes": [ { - "value": "Key: 90", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 90", + "type": "sub_text" + } + ] } ] }, @@ -2563,8 +3484,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 90", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 90", + "type": "sub_text" + } + ] } ] } @@ -2579,8 +3505,13 @@ "type": "col", "nodes": [ { - "value": "Key: 91", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 91", + "type": "sub_text" + } + ] } ] }, @@ -2589,8 +3520,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 91", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 91", + "type": "sub_text" + } + ] } ] } @@ -2608,8 +3544,13 @@ "type": "col", "nodes": [ { - "value": "Key: 92", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 92", + "type": "sub_text" + } + ] } ] }, @@ -2618,8 +3559,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 92", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 92", + "type": "sub_text" + } + ] } ] } @@ -2634,8 +3580,13 @@ "type": "col", "nodes": [ { - "value": "Key: 93", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 93", + "type": "sub_text" + } + ] } ] }, @@ -2644,8 +3595,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 93", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 93", + "type": "sub_text" + } + ] } ] } @@ -2663,8 +3619,13 @@ "type": "col", "nodes": [ { - "value": "Key: 94", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 94", + "type": "sub_text" + } + ] } ] }, @@ -2673,8 +3634,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 94", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 94", + "type": "sub_text" + } + ] } ] } @@ -2689,8 +3655,13 @@ "type": "col", "nodes": [ { - "value": "Key: 95", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 95", + "type": "sub_text" + } + ] } ] }, @@ -2699,8 +3670,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 95", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 95", + "type": "sub_text" + } + ] } ] } @@ -2718,8 +3694,13 @@ "type": "col", "nodes": [ { - "value": "Key: 96", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 96", + "type": "sub_text" + } + ] } ] }, @@ -2728,8 +3709,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 96", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 96", + "type": "sub_text" + } + ] } ] } @@ -2744,8 +3730,13 @@ "type": "col", "nodes": [ { - "value": "Key: 97", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 97", + "type": "sub_text" + } + ] } ] }, @@ -2754,8 +3745,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 97", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 97", + "type": "sub_text" + } + ] } ] } @@ -2773,8 +3769,13 @@ "type": "col", "nodes": [ { - "value": "Key: 98", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 98", + "type": "sub_text" + } + ] } ] }, @@ -2783,8 +3784,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 98", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 98", + "type": "sub_text" + } + ] } ] } @@ -2799,8 +3805,13 @@ "type": "col", "nodes": [ { - "value": "Key: 99", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Key: 99", + "type": "sub_text" + } + ] } ] }, @@ -2809,8 +3820,13 @@ "type": "col", "nodes": [ { - "value": "Bytes: 99", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Bytes: 99", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/lowmemory.json b/test/maroto/examples/lowmemory.json index 7b360e0a..29efbc12 100755 --- a/test/maroto/examples/lowmemory.json +++ b/test/maroto/examples/lowmemory.json @@ -37,11 +37,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -59,11 +67,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -81,11 +97,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -103,11 +127,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -125,11 +157,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -147,11 +187,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -169,11 +217,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -191,11 +247,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -213,11 +277,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -235,11 +307,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -257,11 +337,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -279,11 +367,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -301,11 +397,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -323,11 +427,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -345,11 +457,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -367,11 +487,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -389,11 +517,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -411,11 +547,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -433,11 +577,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -455,11 +607,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -477,11 +637,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -499,11 +667,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -521,11 +697,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -543,11 +727,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -565,11 +757,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -587,11 +787,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -624,11 +832,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -646,11 +862,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -668,11 +892,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -690,11 +922,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -712,11 +952,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -734,11 +982,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -756,11 +1012,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -778,11 +1042,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -800,11 +1072,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -822,11 +1102,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -844,11 +1132,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -866,11 +1162,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -888,11 +1192,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -910,11 +1222,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -932,11 +1252,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -954,11 +1282,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -976,11 +1312,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -998,11 +1342,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1020,11 +1372,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1042,11 +1402,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1064,11 +1432,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1086,11 +1462,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1108,11 +1492,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1130,11 +1522,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } diff --git a/test/maroto/examples/margins.json b/test/maroto/examples/margins.json index 309a8368..eca30fc0 100755 --- a/test/maroto/examples/margins.json +++ b/test/maroto/examples/margins.json @@ -43,12 +43,20 @@ "type": "col", "nodes": [ { - "value": "Margins Test", "type": "text", "details": { "prop_font_size": 12, "prop_top": 12 - } + }, + "nodes": [ + { + "value": "Margins Test", + "type": "sub_text", + "details": { + "prop_font_size": 12 + } + } + ] } ] }, @@ -70,8 +78,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -89,8 +102,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -108,8 +126,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -127,8 +150,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -146,8 +174,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -165,8 +198,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -184,8 +222,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -229,12 +272,20 @@ "type": "col", "nodes": [ { - "value": "Margins Test", "type": "text", "details": { "prop_font_size": 12, "prop_top": 12 - } + }, + "nodes": [ + { + "value": "Margins Test", + "type": "sub_text", + "details": { + "prop_font_size": 12 + } + } + ] } ] }, @@ -256,8 +307,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -275,8 +331,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } @@ -294,8 +355,13 @@ }, "nodes": [ { - "value": "any text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "any text", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/maxgridsum.json b/test/maroto/examples/maxgridsum.json index cf38367e..539a2437 100755 --- a/test/maroto/examples/maxgridsum.json +++ b/test/maroto/examples/maxgridsum.json @@ -32,11 +32,19 @@ }, "nodes": [ { - "value": "Table with 14 Columns", "type": "text", "details": { "prop_font_style": "B" - } + }, + "nodes": [ + { + "value": "Table with 14 Columns", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] } @@ -51,13 +59,21 @@ "type": "col", "nodes": [ { - "value": "H 0", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 0", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -66,13 +82,21 @@ "type": "col", "nodes": [ { - "value": "H 1", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 1", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -81,13 +105,21 @@ "type": "col", "nodes": [ { - "value": "H 2", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 2", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -96,13 +128,21 @@ "type": "col", "nodes": [ { - "value": "H 3", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 3", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -111,13 +151,21 @@ "type": "col", "nodes": [ { - "value": "H 4", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 4", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -126,13 +174,21 @@ "type": "col", "nodes": [ { - "value": "H 5", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 5", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -141,13 +197,21 @@ "type": "col", "nodes": [ { - "value": "H 6", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 6", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -156,13 +220,21 @@ "type": "col", "nodes": [ { - "value": "H 7", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 7", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -171,13 +243,21 @@ "type": "col", "nodes": [ { - "value": "H 8", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 8", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -186,13 +266,21 @@ "type": "col", "nodes": [ { - "value": "H 9", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 9", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -201,13 +289,21 @@ "type": "col", "nodes": [ { - "value": "H 10", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 10", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -216,13 +312,21 @@ "type": "col", "nodes": [ { - "value": "H 11", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 11", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -231,13 +335,21 @@ "type": "col", "nodes": [ { - "value": "H 12", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 12", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] }, @@ -246,13 +358,21 @@ "type": "col", "nodes": [ { - "value": "H 13", "type": "text", "details": { "prop_font_style": "B", "prop_left": 1.5, "prop_top": 1.5 - } + }, + "nodes": [ + { + "value": "H 13", + "type": "sub_text", + "details": { + "prop_font_style": "B" + } + } + ] } ] } @@ -267,13 +387,21 @@ "type": "col", "nodes": [ { - "value": "C 0", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 0", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -282,13 +410,21 @@ "type": "col", "nodes": [ { - "value": "C 1", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 1", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -297,13 +433,21 @@ "type": "col", "nodes": [ { - "value": "C 2", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 2", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -312,13 +456,21 @@ "type": "col", "nodes": [ { - "value": "C 3", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 3", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -327,13 +479,21 @@ "type": "col", "nodes": [ { - "value": "C 4", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 4", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -342,13 +502,21 @@ "type": "col", "nodes": [ { - "value": "C 5", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 5", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -357,13 +525,21 @@ "type": "col", "nodes": [ { - "value": "C 6", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 6", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -372,13 +548,21 @@ "type": "col", "nodes": [ { - "value": "C 7", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 7", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -387,13 +571,21 @@ "type": "col", "nodes": [ { - "value": "C 8", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 8", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -402,13 +594,21 @@ "type": "col", "nodes": [ { - "value": "C 9", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 9", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -417,13 +617,21 @@ "type": "col", "nodes": [ { - "value": "C 10", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 10", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -432,13 +640,21 @@ "type": "col", "nodes": [ { - "value": "C 11", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 11", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -447,13 +663,21 @@ "type": "col", "nodes": [ { - "value": "C 12", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 12", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] }, @@ -462,13 +686,21 @@ "type": "col", "nodes": [ { - "value": "C 13", "type": "text", "details": { "prop_font_size": 9, "prop_left": 1.5, "prop_top": 1 - } + }, + "nodes": [ + { + "value": "C 13", + "type": "sub_text", + "details": { + "prop_font_size": 9 + } + } + ] } ] } diff --git a/test/maroto/examples/mergepdf.json b/test/maroto/examples/mergepdf.json index 195a81c5..9eeba7b8 100755 --- a/test/maroto/examples/mergepdf.json +++ b/test/maroto/examples/mergepdf.json @@ -36,8 +36,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -55,8 +60,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -74,8 +84,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -93,8 +108,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -112,8 +132,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -131,8 +156,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -150,8 +180,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -169,8 +204,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -188,8 +228,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -207,8 +252,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -226,8 +276,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -245,8 +300,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -264,8 +324,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -298,8 +363,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -317,8 +387,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -336,8 +411,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -355,8 +435,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -374,8 +459,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -393,8 +483,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -412,8 +507,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -431,8 +531,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -450,8 +555,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -469,8 +579,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -488,8 +603,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -507,8 +627,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -526,8 +651,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -560,8 +690,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -579,8 +714,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -598,8 +738,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -617,8 +762,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -636,8 +786,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -655,8 +810,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -674,8 +834,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -693,8 +858,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -712,8 +882,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -731,8 +906,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -750,8 +930,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -769,8 +954,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -788,8 +978,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -822,8 +1017,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -841,8 +1041,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -860,8 +1065,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -879,8 +1089,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -898,8 +1113,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -917,8 +1137,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -936,8 +1161,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -955,8 +1185,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -974,8 +1209,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -993,8 +1233,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } @@ -1012,8 +1257,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/metadatas.json b/test/maroto/examples/metadatas.json index f93f2bae..86f97f17 100755 --- a/test/maroto/examples/metadatas.json +++ b/test/maroto/examples/metadatas.json @@ -37,8 +37,13 @@ }, "nodes": [ { - "value": "metadatas", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "metadatas", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/orientation.json b/test/maroto/examples/orientation.json index 3960aba6..0dc2c5f4 100755 --- a/test/maroto/examples/orientation.json +++ b/test/maroto/examples/orientation.json @@ -32,8 +32,13 @@ }, "nodes": [ { - "value": "content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "content", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/pagenumber.json b/test/maroto/examples/pagenumber.json index dcc87e77..9d0d0eff 100755 --- a/test/maroto/examples/pagenumber.json +++ b/test/maroto/examples/pagenumber.json @@ -38,8 +38,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -57,8 +62,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -76,8 +86,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -95,8 +110,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -114,8 +134,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -133,8 +158,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -152,8 +182,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -171,8 +206,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -190,8 +230,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -209,8 +254,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -228,8 +278,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -247,8 +302,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -266,8 +326,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -300,8 +365,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } @@ -319,8 +389,13 @@ }, "nodes": [ { - "value": "dummy text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "dummy text", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/parallelism.json b/test/maroto/examples/parallelism.json index 6bf27060..08346d3a 100755 --- a/test/maroto/examples/parallelism.json +++ b/test/maroto/examples/parallelism.json @@ -37,11 +37,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -59,11 +67,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -81,11 +97,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -103,11 +127,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -125,11 +157,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -147,11 +187,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -169,11 +217,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -191,11 +247,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -213,11 +277,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -235,11 +307,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -257,11 +337,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -279,11 +367,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -301,11 +397,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -323,11 +427,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -345,11 +457,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -367,11 +487,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -389,11 +517,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -411,11 +547,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -433,11 +577,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -455,11 +607,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -477,11 +637,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -499,11 +667,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -521,11 +697,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -543,11 +727,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -565,11 +757,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -587,11 +787,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -624,11 +832,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -646,11 +862,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -668,11 +892,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -690,11 +922,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -712,11 +952,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -734,11 +982,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -756,11 +1012,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -778,11 +1042,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -800,11 +1072,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -822,11 +1102,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -844,11 +1132,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -866,11 +1162,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -888,11 +1192,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -910,11 +1222,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -932,11 +1252,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -954,11 +1282,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -976,11 +1312,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -998,11 +1342,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1020,11 +1372,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1042,11 +1402,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1064,11 +1432,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1086,11 +1462,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1108,11 +1492,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } @@ -1130,11 +1522,19 @@ }, "nodes": [ { - "value": "Dummy text", "type": "text", "details": { "prop_font_size": 8 - } + }, + "nodes": [ + { + "value": "Dummy text", + "type": "sub_text", + "details": { + "prop_font_size": 8 + } + } + ] } ] } diff --git a/test/maroto/examples/protection.json b/test/maroto/examples/protection.json index 4d57fcf6..e283c8a7 100755 --- a/test/maroto/examples/protection.json +++ b/test/maroto/examples/protection.json @@ -33,8 +33,13 @@ }, "nodes": [ { - "value": "supersecret content", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "supersecret content", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/simplest.json b/test/maroto/examples/simplest.json index c858a94e..eef8cf17 100755 --- a/test/maroto/examples/simplest.json +++ b/test/maroto/examples/simplest.json @@ -115,8 +115,13 @@ "type": "col", "nodes": [ { - "value": "text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "text", + "type": "sub_text" + } + ] } ] } diff --git a/test/maroto/examples/textgrid.json b/test/maroto/examples/textgrid.json index 508253ea..1e4a58d0 100755 --- a/test/maroto/examples/textgrid.json +++ b/test/maroto/examples/textgrid.json @@ -29,11 +29,19 @@ "type": "col", "nodes": [ { - "value": "Red text", "type": "text", "details": { "prop_color": "RGB(255, 0, 0)" - } + }, + "nodes": [ + { + "value": "Red text", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 0, 0)" + } + } + ] } ] }, @@ -42,11 +50,19 @@ "type": "col", "nodes": [ { - "value": "Green text", "type": "text", "details": { "prop_color": "RGB(0, 255, 0)" - } + }, + "nodes": [ + { + "value": "Green text", + "type": "sub_text", + "details": { + "prop_color": "RGB(0, 255, 0)" + } + } + ] } ] }, @@ -55,11 +71,19 @@ "type": "col", "nodes": [ { - "value": "Blue text", "type": "text", "details": { "prop_color": "RGB(0, 0, 255)" - } + }, + "nodes": [ + { + "value": "Blue text", + "type": "sub_text", + "details": { + "prop_color": "RGB(0, 0, 255)" + } + } + ] } ] } @@ -74,8 +98,13 @@ "type": "col", "nodes": [ { - "value": "Left-aligned text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Left-aligned text", + "type": "sub_text" + } + ] } ] }, @@ -84,11 +113,16 @@ "type": "col", "nodes": [ { - "value": "Centered text", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "Centered text", + "type": "sub_text" + } + ] } ] }, @@ -97,11 +131,16 @@ "type": "col", "nodes": [ { - "value": "Right-aligned text", "type": "text", "details": { "prop_align": "R" - } + }, + "nodes": [ + { + "value": "Right-aligned text", + "type": "sub_text" + } + ] } ] } @@ -119,8 +158,13 @@ }, "nodes": [ { - "value": "Aligned unindented text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Aligned unindented text", + "type": "sub_text" + } + ] } ] } @@ -135,13 +179,18 @@ "type": "col", "nodes": [ { - "value": "Left-aligned text", "type": "text", "details": { "prop_align": "L", "prop_left": 3, "prop_top": 3 - } + }, + "nodes": [ + { + "value": "Left-aligned text", + "type": "sub_text" + } + ] } ] }, @@ -150,12 +199,17 @@ "type": "col", "nodes": [ { - "value": "Centered text", "type": "text", "details": { "prop_align": "C", "prop_top": 3 - } + }, + "nodes": [ + { + "value": "Centered text", + "type": "sub_text" + } + ] } ] }, @@ -164,13 +218,18 @@ "type": "col", "nodes": [ { - "value": "Right-aligned text", "type": "text", "details": { "prop_align": "R", "prop_right": 3, "prop_top": 3 - } + }, + "nodes": [ + { + "value": "Right-aligned text", + "type": "sub_text" + } + ] } ] } @@ -188,8 +247,13 @@ }, "nodes": [ { - "value": "Aligned text with indentation", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Aligned text with indentation", + "type": "sub_text" + } + ] } ] } @@ -204,11 +268,16 @@ "type": "col", "nodes": [ { - "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", "type": "text", "details": { "prop_align": "L" - } + }, + "nodes": [ + { + "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", + "type": "sub_text" + } + ] } ] }, @@ -217,11 +286,16 @@ "type": "col", "nodes": [ { - "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", "type": "text", "details": { "prop_align": "C" - } + }, + "nodes": [ + { + "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", + "type": "sub_text" + } + ] } ] }, @@ -230,11 +304,16 @@ "type": "col", "nodes": [ { - "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", "type": "text", "details": { "prop_align": "R" - } + }, + "nodes": [ + { + "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", + "type": "sub_text" + } + ] } ] } @@ -252,8 +331,13 @@ }, "nodes": [ { - "value": "Multiline text", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Multiline text", + "type": "sub_text" + } + ] } ] } @@ -268,7 +352,6 @@ "type": "col", "nodes": [ { - "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", "type": "text", "details": { "prop_align": "L", @@ -276,7 +359,13 @@ "prop_left": 3, "prop_right": 3, "prop_top": 3 - } + }, + "nodes": [ + { + "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", + "type": "sub_text" + } + ] } ] }, @@ -285,14 +374,19 @@ "type": "col", "nodes": [ { - "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", "type": "text", "details": { "prop_align": "C", "prop_left": 3, "prop_right": 3, "prop_top": 3 - } + }, + "nodes": [ + { + "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", + "type": "sub_text" + } + ] } ] }, @@ -301,14 +395,19 @@ "type": "col", "nodes": [ { - "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", "type": "text", "details": { "prop_align": "R", "prop_left": 3, "prop_right": 3, "prop_top": 3 - } + }, + "nodes": [ + { + "value": "This is a longer sentence that will be broken into multiple lines as it does not fit into the column otherwise.", + "type": "sub_text" + } + ] } ] } @@ -326,8 +425,13 @@ }, "nodes": [ { - "value": "Multiline text with indentation", - "type": "text" + "type": "text", + "nodes": [ + { + "value": "Multiline text with indentation", + "type": "sub_text" + } + ] } ] } @@ -345,11 +449,19 @@ }, "nodes": [ { - "value": "text with hyperlink", "type": "text", "details": { "prop_hyperlink": "https://google.com" - } + }, + "nodes": [ + { + "value": "text with hyperlink", + "type": "sub_text", + "details": { + "prop_hyperlink": "https://google.com" + } + } + ] } ] } From 993fa10e09f00cc28c7c4c7f6fd65d0d22ff755c Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Wed, 5 Jun 2024 21:35:02 -0300 Subject: [PATCH 09/15] docs: update examples to include custom text --- docs/assets/examples/textgrid/v2/main.go | 9 +++++++++ docs/assets/pdf/textgridv2.pdf | Bin 8745 -> 15777 bytes docs/assets/text/textgridv2.txt | 8 ++++---- pkg/components/text/example_test.go | 19 ++++++++++++++++++- 4 files changed, 31 insertions(+), 5 deletions(-) diff --git a/docs/assets/examples/textgrid/v2/main.go b/docs/assets/examples/textgrid/v2/main.go index ff52e1d0..16971705 100644 --- a/docs/assets/examples/textgrid/v2/main.go +++ b/docs/assets/examples/textgrid/v2/main.go @@ -4,11 +4,14 @@ import ( "log" "github.com/johnfercher/maroto/v2/pkg/core" + "github.com/johnfercher/maroto/v2/pkg/core/entity" "github.com/johnfercher/maroto/v2" "github.com/johnfercher/maroto/v2/pkg/consts/breakline" + "github.com/johnfercher/maroto/v2/pkg/components/col" + "github.com/johnfercher/maroto/v2/pkg/components/row" "github.com/johnfercher/maroto/v2/pkg/components/text" "github.com/johnfercher/maroto/v2/pkg/consts/align" @@ -88,5 +91,11 @@ func GetMaroto() core.Maroto { m.AddRows(text.NewRow(10, "text with hyperlink", props.Text{Hyperlink: &google})) + subText1 := entity.NewSubText("This is a text", props.SubText{Color: &props.BlueColor}) + subText2 := entity.NewSubText(" with multiple", props.SubText{Size: 7}) + subText3 := entity.NewSubText(" styles", props.SubText{Color: &props.RedColor}) + + customText := col.New(12).Add(text.NewCustomText([]*entity.SubText{subText1, subText2, subText3})) + m.AddRows(row.New(10).Add(customText)) return m } diff --git a/docs/assets/pdf/textgridv2.pdf b/docs/assets/pdf/textgridv2.pdf index ed1e16b380be55374c84a222a4359ffe77c6343b..d7e6a56f69d1fe895eeb706770e6fc371fc1ae5e 100644 GIT binary patch delta 998 zcmZuvOHUI~6wUx`VW8L%+CqhLAZdU^hI?o3ywDXE+&~DX#z%aB=>V0AK&Ju%G45oe zlCv>xge5x(8xvRl16GnK32|#;ByLbw-cIe%MkhCu@B7ZtyrE zd<|s=-Tk2oxL^GUyQ`=Gc)jW~XKQ$&TIMWMU0^#Lt<)UivE<-YUl(UfzC(Q5lJ78d znHiv4M5a2V($I6so^$L)I}MJ#>;NwM-KqpLby;QQiB~eyGfv-RHZwhUnjQG$dW_We za1W=p!16d&*U8y@UAd#CTC%15&v90C9sSHOWRu}&eViB1))yO(1_LWSnV*FZf;U3zp8hfPw1oGrNkL)nSPBT9 za&i`mB--4;FQhk@ruAVYe7BT_p>P1#!nZ2;QTR>;PexATTal@XSTI_i>&J!YL|NRA z2hrOVe4ynkALP5Iy=h(ba4hC{_<8IX$9a5qZo|{0wp0AN?ZnkL+XyQg{@P;LRpSFi;9z=E=5)3N{A5ibI#hWYcv2b804&1AZoptM#`DjN`Vi zpBH`+%;NjJArk_rDefQ+roc30MF)$oU$G4=Wt>YVk$e`yJmE5<1ZoN({z&#s1NU>Exti zLr-!*Aqpd24ENzhD`l3c11UT(2ciq8Ms*99JB>c75kvhas;cB4jWHDuI|m!6rZFNW J5<_Fd;vb#XPo@9> delta 584 zcmZXQzi-n(6vvg)#KobhT7I-{({PlACP17!`)r@1GC)&US^*^^G>Q__7NHc72Sg+a z14Fw2`u+th2o|I$j4(1G!GeSc7BH}|z`y_%2;p1+A@wbvuip2)?>pVS#>3*BYfbRCgXs1Y>s8UeDOo1=cPL2x7jV-R>x?6gj88~y~SX@}tRnzI& HlgHKH605o3 diff --git a/docs/assets/text/textgridv2.txt b/docs/assets/text/textgridv2.txt index 67a4ec98..c4036ec6 100644 --- a/docs/assets/text/textgridv2.txt +++ b/docs/assets/text/textgridv2.txt @@ -1,4 +1,4 @@ -generate -> avg: 21.04ms, executions: [21.04ms] -add_row -> avg: 675.40ns, executions: [2.01μs, 0.50μs, 0.30μs, 0.30μs, 0.26μs] -add_rows -> avg: 260.40ns, executions: [331.00ns, 301.00ns, 100.00ns, 470.00ns, 100.00ns] -file_size -> 8.74Kb +generate -> avg: 11.28ms, executions: [11.28ms] +add_row -> avg: 420.80ns, executions: [1.14μs, 0.30μs, 0.27μs, 0.21μs, 0.18μs] +add_rows -> avg: 131.83ns, executions: [230.00ns, 190.00ns, 60.00ns, 221.00ns, 40.00ns, 50.00ns] +file_size -> 15.78Kb diff --git a/pkg/components/text/example_test.go b/pkg/components/text/example_test.go index fc906a9e..618d2544 100644 --- a/pkg/components/text/example_test.go +++ b/pkg/components/text/example_test.go @@ -3,10 +3,13 @@ package text_test import ( "github.com/johnfercher/maroto/v2" "github.com/johnfercher/maroto/v2/pkg/components/col" + "github.com/johnfercher/maroto/v2/pkg/components/row" "github.com/johnfercher/maroto/v2/pkg/components/text" + "github.com/johnfercher/maroto/v2/pkg/core/entity" + "github.com/johnfercher/maroto/v2/pkg/props" ) -// ExampleNew demonstrates how to create a text component. +// ExampleNew demonstrates how to create a text components with different styles. func ExampleNew() { m := maroto.New() @@ -17,6 +20,20 @@ func ExampleNew() { // generate document } +// ExampleNew demonstrates how to create a text component with +func ExampleNewCustomText() { + m := maroto.New() + + subText1 := entity.NewSubText("This is a text", props.SubText{Color: &props.BlueColor}) + subText2 := entity.NewSubText(" with multiple", props.SubText{Size: 7}) + subText3 := entity.NewSubText(" styles", props.SubText{Color: &props.RedColor}) + + customText := col.New(12).Add(text.NewCustomText([]*entity.SubText{subText1, subText2, subText3})) + m.AddRows(row.New(10).Add(customText)) + + // generate document +} + // ExampleNewCol demonstrates how to create a text component wrapped into a column. func ExampleNewCol() { m := maroto.New() From dea25f448ef8459bc6fcd6846b6b2840641269bd Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Wed, 5 Jun 2024 21:45:38 -0300 Subject: [PATCH 10/15] doc: add an overview about text component features --- docs/v2/features/text.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/v2/features/text.md b/docs/v2/features/text.md index 0f0429ed..235a8a89 100644 --- a/docs/v2/features/text.md +++ b/docs/v2/features/text.md @@ -7,13 +7,25 @@ * [props : Text](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/props#Text) * [component : Text](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/components/text#Text) +## Overview + +Using the Text component, you can add personalized texts to your PDF. Possible customizations include: font, color, style and margin. The component also allows you to add links and use different styles in the same text. +Different builders are offered to facilitate use, they are: + +* [constructor : New](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/components/text#New) +* [constructor : NewCol](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/components/text#NewCol) +* [constructor : NewRow](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/components/text#NewRow) +* [constructor : NewCustomText](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/components/text#NewCustomText) + +In naughty texts can contain one or more styles, if your text does not need to mix several styles, you can use the constructors **New**, **NewCol** or **NewRow**; However, if you need to merge different styles, this can be done with the **NewCustomText** constructor, unlike the previous constructors, you will need to pass a list of [Sub texts](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/core/entity#SubText), each subtext will have its own [style](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/props#SubText) + ## Code Example [filename](../../assets/examples/textgrid/v2/main.go ':include :type=code') ## PDF Generated ```pdf - assets/pdf/textgridv2.pdf + assets/pdf/textgridv2.pdf ``` ## Time Execution From d1679efd077eac78c730e813aa77dd480985bcb6 Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Wed, 5 Jun 2024 21:59:02 -0300 Subject: [PATCH 11/15] docs: fix text component documentation --- docs/v2/features/text.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/v2/features/text.md b/docs/v2/features/text.md index 235a8a89..1e8ad55c 100644 --- a/docs/v2/features/text.md +++ b/docs/v2/features/text.md @@ -17,7 +17,7 @@ Different builders are offered to facilitate use, they are: * [constructor : NewRow](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/components/text#NewRow) * [constructor : NewCustomText](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/components/text#NewCustomText) -In naughty texts can contain one or more styles, if your text does not need to mix several styles, you can use the constructors **New**, **NewCol** or **NewRow**; However, if you need to merge different styles, this can be done with the **NewCustomText** constructor, unlike the previous constructors, you will need to pass a list of [Sub texts](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/core/entity#SubText), each subtext will have its own [style](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/props#SubText) +In Maroto, texts can contain one or more styles, if your text does not need to mix several styles, you can use the constructors **New**, **NewCol** or **NewRow**; However, if you need to merge different styles, this can be done with the **NewCustomText** constructor, unlike the previous constructors, you will need to pass a list of [Sub texts](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/core/entity#SubText), each subtext will have its own [style](https://pkg.go.dev/github.com/johnfercher/maroto/v2/pkg/props#SubText) ## Code Example From 90dd9581b7b9d860f917d41807673f5ff707225e Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Wed, 5 Jun 2024 22:05:44 -0300 Subject: [PATCH 12/15] test: Update documentation example tests --- test/maroto/examples/textgrid.json | 40 +++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/test/maroto/examples/textgrid.json b/test/maroto/examples/textgrid.json index 1e4a58d0..c690d9c6 100755 --- a/test/maroto/examples/textgrid.json +++ b/test/maroto/examples/textgrid.json @@ -468,7 +468,45 @@ ] }, { - "value": 16.997500000000002, + "value": 10, + "type": "row", + "nodes": [ + { + "value": 12, + "type": "col", + "nodes": [ + { + "type": "text", + "nodes": [ + { + "value": "This is a text", + "type": "sub_text", + "details": { + "prop_color": "RGB(0, 0, 255)" + } + }, + { + "value": " with multiple", + "type": "sub_text", + "details": { + "prop_font_size": 7 + } + }, + { + "value": " styles", + "type": "sub_text", + "details": { + "prop_color": "RGB(255, 0, 0)" + } + } + ] + } + ] + } + ] + }, + { + "value": 6.997500000000002, "type": "row", "nodes": [ { From 9959c34ab67b4d7bff382982217345e3d7090ff2 Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Wed, 5 Jun 2024 23:12:12 -0300 Subject: [PATCH 13/15] style: Changes requested by eslint --- internal/providers/gofpdf/text.go | 6 ++--- pkg/props/text.go | 40 +++++++++++++++---------------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/internal/providers/gofpdf/text.go b/internal/providers/gofpdf/text.go index 0e96b272..2049b80c 100644 --- a/internal/providers/gofpdf/text.go +++ b/internal/providers/gofpdf/text.go @@ -40,7 +40,7 @@ func (s *text) AddCustomText(subs []*entity.SubText, cell *entity.Cell, textPs * defer s.font.SetColor(originalColor) width := s.validTextProps(textPs, cell, cell.Width-textPs.Left-textPs.Right) - lines := s.orderSubTextsInLines(subs, width, textPs.BreakLineStrategy) + lines := s.orderSubTexts(subs, width, textPs.BreakLineStrategy) accumulateOffsetY := 0.0 sumFonts := 0.0 @@ -80,7 +80,7 @@ func (s *text) GetLinesQuantity(text string, textProp props.Text, colWidth float } // This method is responsible for checking the subtexts and adding them to the line according to the chosen strategy -func (s *text) orderSubTextsInLines(subs []*entity.SubText, widthAvailable float64, breakLineStrategy breakline.Strategy) [][]*entity.SubText { +func (s *text) orderSubTexts(subs []*entity.SubText, widthAvailable float64, breakLineStrategy breakline.Strategy) [][]*entity.SubText { sizeLasLine := 0.0 newText := [][]*entity.SubText{} @@ -90,7 +90,7 @@ func (s *text) orderSubTextsInLines(subs []*entity.SubText, widthAvailable float return newText } -// This method is responsible for making a new line with the subText sent, here it is defined whether the subText will be inserted in a new Line or in the current Line +// This method is responsible for making a new line with the subText sent. func (s *text) factoryLine(sub *entity.SubText, widthAvailable float64, sizeLasLine float64, newText [][]*entity.SubText, getLines func(string, float64, float64) ([]string, float64)) (float64, [][]*entity.SubText) { s.font.SetFont(sub.Prop.Family, sub.Prop.Style, sub.Prop.Size) lineValues, currentSize := getLines(s.textToUnicode(sub.Value, &sub.Prop), widthAvailable, sizeLasLine) diff --git a/pkg/props/text.go b/pkg/props/text.go index d4914df2..f139b445 100644 --- a/pkg/props/text.go +++ b/pkg/props/text.go @@ -21,46 +21,46 @@ type SubText struct { Hyperlink *string } -func (sub *SubText) MakeValid(font *Font) { +func (s *SubText) MakeValid(font *Font) { undefinedValue := 0.0 - if sub.Family == "" { - sub.Family = font.Family + if s.Family == "" { + s.Family = font.Family } - if sub.Style == "" { - sub.Style = font.Style + if s.Style == "" { + s.Style = font.Style } - if sub.Size == undefinedValue { - sub.Size = font.Size + if s.Size == undefinedValue { + s.Size = font.Size } - if sub.Color == nil { - sub.Color = font.Color + if s.Color == nil { + s.Color = font.Color } } -func (t *SubText) ToMap() map[string]interface{} { +func (s *SubText) ToMap() map[string]interface{} { m := make(map[string]interface{}) - if t.Family != "" { - m["prop_font_family"] = t.Family + if s.Family != "" { + m["prop_font_family"] = s.Family } - if t.Style != "" { - m["prop_font_style"] = t.Style + if s.Style != "" { + m["prop_font_style"] = s.Style } - if t.Size != 0 { - m["prop_font_size"] = t.Size + if s.Size != 0 { + m["prop_font_size"] = s.Size } - if t.Color != nil { - m["prop_color"] = t.Color.ToString() + if s.Color != nil { + m["prop_color"] = s.Color.ToString() } - if t.Hyperlink != nil { - m["prop_hyperlink"] = *t.Hyperlink + if s.Hyperlink != nil { + m["prop_hyperlink"] = *s.Hyperlink } return m From 67c0a493141d35fcbf255f68a062c05cad1ae829 Mon Sep 17 00:00:00 2001 From: Fernando-hub527 Date: Wed, 5 Jun 2024 23:53:32 -0300 Subject: [PATCH 14/15] style: Standardize the size of function signatures --- internal/providers/gofpdf/text.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/internal/providers/gofpdf/text.go b/internal/providers/gofpdf/text.go index 2049b80c..18f534eb 100644 --- a/internal/providers/gofpdf/text.go +++ b/internal/providers/gofpdf/text.go @@ -85,16 +85,17 @@ func (s *text) orderSubTexts(subs []*entity.SubText, widthAvailable float64, bre newText := [][]*entity.SubText{} for _, sub := range subs { - sizeLasLine, newText = s.factoryLine(sub, widthAvailable, sizeLasLine, newText, s.selectStrategyBreak(breakLineStrategy)) + sizeLasLine, newText = s.factoryLine(sub, widthAvailable, sizeLasLine, newText, breakLineStrategy) } return newText } // This method is responsible for making a new line with the subText sent. -func (s *text) factoryLine(sub *entity.SubText, widthAvailable float64, sizeLasLine float64, newText [][]*entity.SubText, getLines func(string, float64, float64) ([]string, float64)) (float64, [][]*entity.SubText) { +func (s *text) factoryLine(sub *entity.SubText, width float64, sizeLastLine float64, newText [][]*entity.SubText, strategy breakline.Strategy) (float64, [][]*entity.SubText) { + getLines := s.selectStrategyBreak(strategy) s.font.SetFont(sub.Prop.Family, sub.Prop.Style, sub.Prop.Size) - lineValues, currentSize := getLines(s.textToUnicode(sub.Value, &sub.Prop), widthAvailable, sizeLasLine) - return currentSize, s.mergeSubtext(newText, lineValues, s.fitsInTheCurrentLine(lineValues[0], sizeLasLine, widthAvailable), sub.Prop) + lineValues, currentSize := getLines(s.textToUnicode(sub.Value, &sub.Prop), width, sizeLastLine) + return currentSize, s.mergeSubtext(newText, lineValues, s.fitsInTheCurrentLine(lineValues[0], sizeLastLine, width), sub.Prop) } // This method is responsible for defining the line props, returning the position of the text on the y axis @@ -141,10 +142,10 @@ func (s *text) findLargestFontHeight(subs []*entity.SubText) float64 { } // This function is responsible for merging the subText, ensuring that when necessary they will occupy the same line -func (s *text) mergeSubtext(currentLines [][]*entity.SubText, newLines []string, joinOnTheSameLine bool, ps props.SubText) [][]*entity.SubText { +func (s *text) mergeSubtext(currentLines [][]*entity.SubText, newLines []string, merge bool, ps props.SubText) [][]*entity.SubText { startInsert := 0 - if joinOnTheSameLine && len(currentLines) != 0 { + if merge && len(currentLines) != 0 { currentLines[len(currentLines)-1] = append(currentLines[len(currentLines)-1], entity.NewSubText(newLines[0], ps)) startInsert = 1 } @@ -156,7 +157,7 @@ func (s *text) mergeSubtext(currentLines [][]*entity.SubText, newLines []string, } // This method is responsible for selecting the correct function to break the line according to the passed strategy -func (s *text) selectStrategyBreak(strategy breakline.Strategy) func(text string, colWidth float64, currentlySize float64) ([]string, float64) { +func (s *text) selectStrategyBreak(strategy breakline.Strategy) func(string, float64, float64) ([]string, float64) { if strategy == breakline.EmptySpaceStrategy { return s.getLinesBreakingLineFromSpace } else { From eebd7e56f49b189b042b8cacf00bb091aced8a37 Mon Sep 17 00:00:00 2001 From: "fernando.saraiva" Date: Thu, 6 Jun 2024 12:12:05 -0300 Subject: [PATCH 15/15] style: Standardize the size of function signatures --- internal/providers/gofpdf/text.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/providers/gofpdf/text.go b/internal/providers/gofpdf/text.go index 18f534eb..f76f2d08 100644 --- a/internal/providers/gofpdf/text.go +++ b/internal/providers/gofpdf/text.go @@ -91,7 +91,9 @@ func (s *text) orderSubTexts(subs []*entity.SubText, widthAvailable float64, bre } // This method is responsible for making a new line with the subText sent. -func (s *text) factoryLine(sub *entity.SubText, width float64, sizeLastLine float64, newText [][]*entity.SubText, strategy breakline.Strategy) (float64, [][]*entity.SubText) { +func (s *text) factoryLine(sub *entity.SubText, width float64, sizeLastLine float64, newText [][]*entity.SubText, + strategy breakline.Strategy) (float64, [][]*entity.SubText) { + getLines := s.selectStrategyBreak(strategy) s.font.SetFont(sub.Prop.Family, sub.Prop.Style, sub.Prop.Size) lineValues, currentSize := getLines(s.textToUnicode(sub.Value, &sub.Prop), width, sizeLastLine)