From c486bdd661d8ba10aa38135ae2dcd75117d35a6b Mon Sep 17 00:00:00 2001 From: John Fercher Date: Fri, 22 Sep 2023 19:23:48 -0300 Subject: [PATCH 1/8] keep --- docs/assets/examples/protection/v2/main.go | 36 ++++++++++++++++++++++ pkg/config/builder.go | 14 +++++++++ pkg/config/config.go | 1 + pkg/config/protection.go | 9 ++++++ pkg/consts/protection/protection.go | 10 ++++++ pkg/core/provider.go | 2 ++ pkg/providers/gofpdf/gofpdf.go | 4 +++ pkg/providers/html/html.go | 4 +++ 8 files changed, 80 insertions(+) create mode 100644 docs/assets/examples/protection/v2/main.go create mode 100644 pkg/config/protection.go create mode 100644 pkg/consts/protection/protection.go diff --git a/docs/assets/examples/protection/v2/main.go b/docs/assets/examples/protection/v2/main.go new file mode 100644 index 00000000..c93f326c --- /dev/null +++ b/docs/assets/examples/protection/v2/main.go @@ -0,0 +1,36 @@ +package main + +import ( + "github.com/johnfercher/maroto/v2/pkg/components/text" + "log" + + "github.com/johnfercher/maroto/v2/pkg" + "github.com/johnfercher/maroto/v2/pkg/config" +) + +func main() { + cfg := config.NewBuilder(). + Build() + + mrt := pkg.NewMaroto(cfg) + m := pkg.NewMetricsDecorator(mrt) + + m.AddRows( + text.NewRow(30, "supersecret content"), + ) + + document, err := m.Generate() + if err != nil { + log.Fatal(err.Error()) + } + + err = document.Save("docs/assets/pdf/passwordv2.pdf") + if err != nil { + log.Fatal(err.Error()) + } + + err = document.GetReport().Save("docs/assets/text/passwordv2.txt") + if err != nil { + log.Fatal(err.Error()) + } +} diff --git a/pkg/config/builder.go b/pkg/config/builder.go index 42e2acd5..cd737d5d 100644 --- a/pkg/config/builder.go +++ b/pkg/config/builder.go @@ -1,6 +1,7 @@ package config import ( + "github.com/johnfercher/maroto/v2/pkg/consts/protection" "strings" "github.com/johnfercher/maroto/v2/pkg/consts/fontfamily" @@ -21,6 +22,7 @@ type builder struct { customFonts []*CustomFont pageNumberPattern string pageNumberPlace props.Place + protection *Protection } type Builder interface { @@ -34,6 +36,7 @@ type Builder interface { WithFont(font *props.Font) Builder AddUTF8Font(family string, style fontstyle.Type, file string) Builder WithPageNumber(pattern string, place props.Place) Builder + WithProtection(protectionType protection.Type, userPassword, ownerPassword string) Builder Build() *Config } @@ -197,6 +200,16 @@ func (b *builder) WithPageNumber(pattern string, place props.Place) Builder { return b } +func (b *builder) WithProtection(protectionType protection.Type, userPassword, ownerPassword string) Builder { + b.protection = &Protection{ + Type: protectionType, + UserPassword: userPassword, + OwnerPassword: ownerPassword, + } + + return b +} + func (b *builder) Build() *Config { return &Config{ ProviderType: b.providerType, @@ -209,6 +222,7 @@ func (b *builder) Build() *Config { CustomFonts: b.customFonts, PageNumberPattern: b.pageNumberPattern, PageNumberPlace: b.pageNumberPlace, + Protection: b.protection, } } diff --git a/pkg/config/config.go b/pkg/config/config.go index 4ee7904f..7aee85f0 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -16,4 +16,5 @@ type Config struct { MaxGridSize int PageNumberPattern string PageNumberPlace props.Place + Protection *Protection } diff --git a/pkg/config/protection.go b/pkg/config/protection.go new file mode 100644 index 00000000..cfb60ba6 --- /dev/null +++ b/pkg/config/protection.go @@ -0,0 +1,9 @@ +package config + +import "github.com/johnfercher/maroto/v2/pkg/consts/protection" + +type Protection struct { + Type protection.Type + UserPassword string + OwnerPassword string +} diff --git a/pkg/consts/protection/protection.go b/pkg/consts/protection/protection.go new file mode 100644 index 00000000..bfaf6415 --- /dev/null +++ b/pkg/consts/protection/protection.go @@ -0,0 +1,10 @@ +package protection + +type Type byte + +const ( + Print Type = 4 + Modify Type = 8 + Copy Type = 16 + AnnotForms Type = 32 +) diff --git a/pkg/core/provider.go b/pkg/core/provider.go index b6d0ba19..bb1d6f4c 100644 --- a/pkg/core/provider.go +++ b/pkg/core/provider.go @@ -26,4 +26,6 @@ type Provider interface { GenerateFile(file string) error GenerateBytes() ([]byte, error) SetCache(cache cache.Cache) + + SetProtection(protection *config.Protection) } diff --git a/pkg/providers/gofpdf/gofpdf.go b/pkg/providers/gofpdf/gofpdf.go index 9f34776f..6f302f80 100644 --- a/pkg/providers/gofpdf/gofpdf.go +++ b/pkg/providers/gofpdf/gofpdf.go @@ -141,6 +141,10 @@ func (g *gofpdfProvider) CreateRow(height float64) { g.fpdf.Ln(height) } +func (g *gofpdfProvider) SetProtection(protection *config.Protection) { + g.fpdf.SetProtection(byte(protection.Type), protection.UserPassword, protection.OwnerPassword) +} + func (g *gofpdfProvider) GenerateFile(file string) error { return g.fpdf.OutputFileAndClose(file) } diff --git a/pkg/providers/html/html.go b/pkg/providers/html/html.go index 04922166..5016d6d8 100644 --- a/pkg/providers/html/html.go +++ b/pkg/providers/html/html.go @@ -119,6 +119,10 @@ func (h *html) SetCache(cache cache.Cache) { h.imageCache = cache } +func (g *html) SetProtection(_ *config.Protection) { + +} + func (h *html) CreateCol(width, height float64, config *config.Config, prop *props.Cell) { var row *tree.Node[Div] From 8ad27083df237ce8b13d75be3890b7e1832beac8 Mon Sep 17 00:00:00 2001 From: Johnathan Fercher Date: Fri, 22 Sep 2023 19:41:27 -0300 Subject: [PATCH 2/8] keep --- docs/_sidebar.md | 1 + docs/assets/examples/compression/v2/main.go | 107 ++++++++++++++++++++ docs/assets/examples/list/v2/main.go | 7 +- docs/assets/examples/protection/v2/main.go | 6 +- docs/v2/features/protection.md | 11 ++ pkg/config/builder.go | 8 ++ pkg/config/config.go | 1 + pkg/consts/protection/protection.go | 1 + pkg/maroto.go | 1 + 9 files changed, 136 insertions(+), 7 deletions(-) create mode 100644 docs/assets/examples/compression/v2/main.go create mode 100644 docs/v2/features/protection.md diff --git a/docs/_sidebar.md b/docs/_sidebar.md index 8354cbaf..740f7c2a 100644 --- a/docs/_sidebar.md +++ b/docs/_sidebar.md @@ -17,6 +17,7 @@ * [Max Grid Sum](v2/features/maxgridsum.md?id=max-grid-sum) * [Page Number](v2/features/pagenumber.md?id=page-number) * [Parallelism](v2/features/parallelism.md?id=parallelism) + * [Protection](v2/features/protection.md?id=protection) * [QR Code](v2/features/qrcode.md?id=qrcode) * [Signature](v2/features/signature.md?id=signature) * [Text](v2/features/text.md?id=text) diff --git a/docs/assets/examples/compression/v2/main.go b/docs/assets/examples/compression/v2/main.go new file mode 100644 index 00000000..bf77722f --- /dev/null +++ b/docs/assets/examples/compression/v2/main.go @@ -0,0 +1,107 @@ +package main + +import ( + "encoding/base64" + "fmt" + "log" + "os" + + "github.com/johnfercher/maroto/v2/pkg/components/code" + "github.com/johnfercher/maroto/v2/pkg/components/image" + "github.com/johnfercher/maroto/v2/pkg/components/row" + "github.com/johnfercher/maroto/v2/pkg/components/signature" + "github.com/johnfercher/maroto/v2/pkg/components/text" + + "github.com/johnfercher/maroto/v2/pkg/consts/align" + "github.com/johnfercher/maroto/v2/pkg/consts/extension" + + "github.com/johnfercher/maroto/v2/pkg" + "github.com/johnfercher/maroto/v2/pkg/config" + "github.com/johnfercher/maroto/v2/pkg/core" + "github.com/johnfercher/maroto/v2/pkg/props" +) + +var dummyText = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac condimentum sem." + +func main() { + cfg := config.NewBuilder(). + WithPageNumber("Page {current} of {total}", props.South). + Build() + + mrt := pkg.NewMaroto(cfg) + m := pkg.NewMetricsDecorator(mrt) + + m.AddRows( + text.NewRow(20, "Main features", props.Text{Size: 15, Top: 6.5}), + ) + m.AddRows(buildCodesRow()...) + m.AddRows(buildImagesRow()...) + m.AddRows(buildTextsRow()...) + + document, err := m.Generate() + if err != nil { + log.Fatal(err.Error()) + } + + err = document.Save("docs/assets/pdf/compressionv2.pdf") + if err != nil { + log.Fatal(err.Error()) + } + + err = document.GetReport().Save("docs/assets/text/compressionv2.txt") + if err != nil { + log.Fatal(err.Error()) + } +} + +func buildCodesRow() []core.Row { + return []core.Row{ + row.New(20).Add( + text.NewCol(4, "Barcode:", props.Text{Size: 15, Top: 6, Align: align.Center}), + code.NewBarCol(8, "barcode", props.Barcode{Center: true, Percent: 70}), + ), + row.New(20).Add( + text.NewCol(4, "QrCode:", props.Text{Size: 15, Top: 6, Align: align.Center}), + code.NewQrCol(8, "qrcode", props.Rect{Center: true, Percent: 70}), + ), + row.New(20).Add( + text.NewCol(4, "MatrixCode:", props.Text{Size: 15, Top: 6, Align: align.Center}), + code.NewMatrixCol(8, "matrixcode", props.Rect{Center: true, Percent: 70}), + ), + } +} + +func buildImagesRow() []core.Row { + byteSlices, err := os.ReadFile("docs/assets/images/frontpage.png") + if err != nil { + fmt.Println("Got error while opening file:", err) + os.Exit(1) + } + stringBase64 := base64.StdEncoding.EncodeToString(byteSlices) + + return []core.Row{ + row.New(20).Add( + text.NewCol(4, "Image From File:", props.Text{Size: 15, Top: 6, Align: align.Center}), + image.NewFromFileCol(8, "docs/assets/images/biplane.jpg", props.Rect{Center: true, Percent: 90}), + ), + row.New(20).Add( + text.NewCol(4, "Image From Base64::", props.Text{Size: 15, Top: 6, Align: align.Center}), + image.NewFromBase64Col(8, stringBase64, extension.Png, props.Rect{Center: true, Percent: 90}), + ), + } +} + +func buildTextsRow() []core.Row { + colText := "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac condimentum sem." + + return []core.Row{ + row.New(20).Add( + text.NewCol(4, "Text:", props.Text{Size: 15, Top: 6, Align: align.Center}), + text.NewCol(8, colText, props.Text{Size: 12, Top: 5, Align: align.Center}), + ), + row.New(40).Add( + text.NewCol(4, "Signature:", props.Text{Size: 15, Top: 17, Align: align.Center}), + signature.NewCol(8, "Name", props.Font{Size: 10}), + ), + } +} diff --git a/docs/assets/examples/list/v2/main.go b/docs/assets/examples/list/v2/main.go index ed4eb515..37f9ccc0 100644 --- a/docs/assets/examples/list/v2/main.go +++ b/docs/assets/examples/list/v2/main.go @@ -2,14 +2,12 @@ package main import ( "fmt" - "log" - "math/rand" - "github.com/johnfercher/maroto/v2/pkg/components/list" "github.com/johnfercher/maroto/v2/pkg/components/row" "github.com/johnfercher/maroto/v2/pkg/consts/fontstyle" "github.com/johnfercher/maroto/v2/pkg/core" "github.com/johnfercher/maroto/v2/pkg/props" + "log" "github.com/johnfercher/maroto/v2/pkg" "github.com/johnfercher/maroto/v2/pkg/components/text" @@ -80,8 +78,7 @@ func getObjects(max int) []Object { var objects []Object for i := 0; i < max; i++ { objects = append(objects, Object{ - Key: fmt.Sprintf("Key: %d", i), - Value: fmt.Sprintf("Value: %d", rand.Intn(3000)), + Key: fmt.Sprintf("Key: %d", i), }) } return objects diff --git a/docs/assets/examples/protection/v2/main.go b/docs/assets/examples/protection/v2/main.go index c93f326c..f1e1e49d 100644 --- a/docs/assets/examples/protection/v2/main.go +++ b/docs/assets/examples/protection/v2/main.go @@ -2,6 +2,7 @@ package main import ( "github.com/johnfercher/maroto/v2/pkg/components/text" + "github.com/johnfercher/maroto/v2/pkg/consts/protection" "log" "github.com/johnfercher/maroto/v2/pkg" @@ -10,6 +11,7 @@ import ( func main() { cfg := config.NewBuilder(). + WithProtection(protection.None, "user", "owner"). Build() mrt := pkg.NewMaroto(cfg) @@ -24,12 +26,12 @@ func main() { log.Fatal(err.Error()) } - err = document.Save("docs/assets/pdf/passwordv2.pdf") + err = document.Save("docs/assets/pdf/protectionv2.pdf") if err != nil { log.Fatal(err.Error()) } - err = document.GetReport().Save("docs/assets/text/passwordv2.txt") + err = document.GetReport().Save("docs/assets/text/protectionv2.txt") if err != nil { log.Fatal(err.Error()) } diff --git a/docs/v2/features/protection.md b/docs/v2/features/protection.md new file mode 100644 index 00000000..e61c198f --- /dev/null +++ b/docs/v2/features/protection.md @@ -0,0 +1,11 @@ +# Protection + +## Code Example +[filename](../../assets/examples/protection/v2/main.go ':include :type=code') + +## PDF Generated +```pdf + assets/pdf/protectionv2.pdf +``` +## Time Execution +[filename](../../assets/text/protectionv2.txt ':include :type=code') \ No newline at end of file diff --git a/pkg/config/builder.go b/pkg/config/builder.go index cd737d5d..791801e6 100644 --- a/pkg/config/builder.go +++ b/pkg/config/builder.go @@ -23,6 +23,7 @@ type builder struct { pageNumberPattern string pageNumberPlace props.Place protection *Protection + compression bool } type Builder interface { @@ -37,6 +38,7 @@ type Builder interface { AddUTF8Font(family string, style fontstyle.Type, file string) Builder WithPageNumber(pattern string, place props.Place) Builder WithProtection(protectionType protection.Type, userPassword, ownerPassword string) Builder + WithCompression(compression bool) Builder Build() *Config } @@ -210,6 +212,11 @@ func (b *builder) WithProtection(protectionType protection.Type, userPassword, o return b } +func (b *builder) WithCompression(compression bool) Builder { + b.compression = compression + return b +} + func (b *builder) Build() *Config { return &Config{ ProviderType: b.providerType, @@ -223,6 +230,7 @@ func (b *builder) Build() *Config { PageNumberPattern: b.pageNumberPattern, PageNumberPlace: b.pageNumberPlace, Protection: b.protection, + Compression: b.compression, } } diff --git a/pkg/config/config.go b/pkg/config/config.go index 7aee85f0..e3a8d12a 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -17,4 +17,5 @@ type Config struct { PageNumberPattern string PageNumberPlace props.Place Protection *Protection + Compression bool } diff --git a/pkg/consts/protection/protection.go b/pkg/consts/protection/protection.go index bfaf6415..cbe89930 100644 --- a/pkg/consts/protection/protection.go +++ b/pkg/consts/protection/protection.go @@ -3,6 +3,7 @@ package protection type Type byte const ( + None Type = 0 Print Type = 4 Modify Type = 8 Copy Type = 16 diff --git a/pkg/maroto.go b/pkg/maroto.go index c83ad9eb..628a1ff7 100644 --- a/pkg/maroto.go +++ b/pkg/maroto.go @@ -120,6 +120,7 @@ func (m *maroto) RegisterFooter(rows ...core.Row) error { } func (m *maroto) Generate() (core.Document, error) { + m.provider.SetProtection(m.config.Protection) m.fillPageToAddNew() m.setConfig() From c6547543aef7e44279698d564d2dd948fcaf8bfe Mon Sep 17 00:00:00 2001 From: Johnathan Fercher Date: Fri, 22 Sep 2023 19:41:37 -0300 Subject: [PATCH 3/8] keep --- docs/assets/pdf/protectionv2.pdf | Bin 0 -> 1255 bytes docs/assets/text/protectionv2.txt | 2 ++ 2 files changed, 2 insertions(+) create mode 100644 docs/assets/pdf/protectionv2.pdf create mode 100644 docs/assets/text/protectionv2.txt diff --git a/docs/assets/pdf/protectionv2.pdf b/docs/assets/pdf/protectionv2.pdf new file mode 100644 index 0000000000000000000000000000000000000000..2a47dca056dd48b469d819c1a034fdfda0317acd GIT binary patch literal 1255 zcmZuxU1$_n6fTHbZ%Z3m6fLx#2Lrp(?48}6*_oBq#@)@fX<`yK+7#A^cW3Udqnnvz z=C0YK_C>)yDpgzhgP~CEk4*}SLM0Uu6(9Ts(+Wj>DB2eLpuUI%rRVN$bV)i4Gxwfz z&);{xbDMk8nU-)UN}`~Eo8L+j3A%n{kOS>uMNaVRaYsNHwOK;5+;_{K$$f~_1S!`M zsP{pY`!#C_cP!~eZtLDMc1ds#Xr{yjPjl0?(0M0!ied|dqYB#i!sBd!yr4ZczrWG_ zxa*x2t6oneD$@rKT%XDxIW)EHblZ;Ce)y(ybMC>OD}OG2>5rwM3yYtg9QyLjCHG<{ zylc+Nrr5mp^9Me@KkrP-rm-fzZ~TklBbO&TANij@VY><+HSaw;arWi##M@g&jRl!~ zts|`mgZFyqaH#2ONuAxN)aj>SBS&<`Y(S%?tY4T1fCFG?>ftQ<}!rx%7+k1hM> zn)2_WZ?7(RtMc^IS4U6KAfX!|@ca8;zw2xaT)cPd@bHg^=TFnTC8jo@q&FmiC|P9_c^a7Ccl_w>JzqUso}8N4eCz0;UvHpk3K=SF*GVIX zA@E9EBhbYsE)%v%QhCpN@mIQ*xYl5-jIv%7*^@w4TPk( zM>&>3v#u*Z!iJYmyHjvM_6*m^d2eJ;faH->r6Csx27=WY^9A!n6^Xd6lIG^N?hN@4 Dd~$)I literal 0 HcmV?d00001 diff --git a/docs/assets/text/protectionv2.txt b/docs/assets/text/protectionv2.txt new file mode 100644 index 00000000..0ca4bf45 --- /dev/null +++ b/docs/assets/text/protectionv2.txt @@ -0,0 +1,2 @@ +generate -> avg: 480.25μs, executions: [480.25μs] +add_row -> avg: 250.00ns, executions: [250.00ns] From 00474b48b88d300a715c517d00754ec372e58c5a Mon Sep 17 00:00:00 2001 From: Johnathan Fercher Date: Fri, 22 Sep 2023 20:17:51 -0300 Subject: [PATCH 4/8] keep --- docs/assets/examples/compression/v2/main.go | 2 +- pkg/core/provider.go | 1 + pkg/maroto.go | 6 +- pkg/metrics/metrics.go | 86 +++++++++++++++++---- pkg/metricsdecorator.go | 35 ++++++--- pkg/providers/gofpdf/gofpdf.go | 4 + pkg/providers/html/html.go | 4 + 7 files changed, 111 insertions(+), 27 deletions(-) diff --git a/docs/assets/examples/compression/v2/main.go b/docs/assets/examples/compression/v2/main.go index bf77722f..a53aec2a 100644 --- a/docs/assets/examples/compression/v2/main.go +++ b/docs/assets/examples/compression/v2/main.go @@ -25,7 +25,7 @@ var dummyText = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec func main() { cfg := config.NewBuilder(). - WithPageNumber("Page {current} of {total}", props.South). + WithCompression(true). Build() mrt := pkg.NewMaroto(cfg) diff --git a/pkg/core/provider.go b/pkg/core/provider.go index bb1d6f4c..4081cb31 100644 --- a/pkg/core/provider.go +++ b/pkg/core/provider.go @@ -28,4 +28,5 @@ type Provider interface { SetCache(cache cache.Cache) SetProtection(protection *config.Protection) + SetCompression(compression bool) } diff --git a/pkg/maroto.go b/pkg/maroto.go index 628a1ff7..17f73a22 100644 --- a/pkg/maroto.go +++ b/pkg/maroto.go @@ -120,7 +120,11 @@ func (m *maroto) RegisterFooter(rows ...core.Row) error { } func (m *maroto) Generate() (core.Document, error) { - m.provider.SetProtection(m.config.Protection) + if m.config.Protection != nil { + m.provider.SetProtection(m.config.Protection) + } + m.provider.SetCompression(m.config.Compression) + m.fillPageToAddNew() m.setConfig() diff --git a/pkg/metrics/metrics.go b/pkg/metrics/metrics.go index 51bf4406..66021adf 100644 --- a/pkg/metrics/metrics.go +++ b/pkg/metrics/metrics.go @@ -6,12 +6,16 @@ import ( ) type TimeScale string +type SizeScale string const ( - Thousand float64 = 1000 Nano TimeScale = "ns" Micro TimeScale = "μs" Milli TimeScale = "ms" + Byte SizeScale = "b" + KiloByte SizeScale = "Kb" + MegaByte SizeScale = "Mb" + GigaByte = "Gb" ) type Time struct { @@ -22,13 +26,13 @@ type Time struct { func (t *Time) Normalize() bool { if t.Scale == Nano { t.Scale = Micro - t.Value /= Thousand + t.Value /= 1000 return true } if t.Scale == Micro { t.Scale = Milli - t.Value /= Thousand + t.Value /= 1000 return true } @@ -39,14 +43,45 @@ func (t *Time) String() string { return fmt.Sprintf("%.2f%s", t.Value, t.Scale) } -type Metric struct { +type Size struct { + Value int + Scale SizeScale +} + +func (t *Size) Normalize() bool { + if t.Scale == Byte { + t.Scale = KiloByte + t.Value /= 1000 + return true + } + + if t.Scale == KiloByte { + t.Scale = MegaByte + t.Value /= 1000 + return true + } + + if t.Scale == MegaByte { + t.Scale = GigaByte + t.Value /= 1000 + return true + } + + return false +} + +func (t *Size) String() string { + return fmt.Sprintf("%d%s", t.Value, t.Scale) +} + +type TimeMetric struct { Key string Times []*Time Avg *Time } -func (m *Metric) Normalize() { - greaterThan1000 := hasGreaterThan1000(m.Times) +func (m *TimeMetric) Normalize() { + greaterThan1000 := m.hasGreaterThan1000(m.Times) if greaterThan1000 { for _, time := range m.Times { done := time.Normalize() @@ -61,9 +96,9 @@ func (m *Metric) Normalize() { } } -func hasGreaterThan1000(times []*Time) bool { +func (m *TimeMetric) hasGreaterThan1000(times []*Time) bool { for _, time := range times { - if time.Value > Thousand { + if time.Value > 1000 { return true } } @@ -71,7 +106,7 @@ func hasGreaterThan1000(times []*Time) bool { return false } -func (m *Metric) String() string { +func (m *TimeMetric) String() string { var content string content += m.Key + " -> avg: " + m.Avg.String() + ", executions: [" for i, time := range m.Times { @@ -84,20 +119,45 @@ func (m *Metric) String() string { return content } -type Report []Metric +type SizeMetric struct { + Key string + Size Size +} + +func (m *SizeMetric) Normalize() { + if m.Size.Value < 1000 { + return + } + + m.Size.Normalize() + m.Normalize() +} + +func (r *SizeMetric) String() string { + return r.Key + " -> " + r.Size.String() +} + +type Report struct { + TimeMetrics []TimeMetric + SizeMetric SizeMetric +} func (r *Report) Normalize() *Report { - for _, metric := range *r { + for _, metric := range r.TimeMetrics { metric.Normalize() } + + r.SizeMetric.Normalize() + return r } func (r *Report) Save(file string) error { var content string - for _, metric := range *r { + for _, metric := range r.TimeMetrics { content += metric.String() + "\n" } + content += r.SizeMetric.String() + "\n" f, err := os.Create(file) if err != nil { @@ -115,7 +175,7 @@ func (r *Report) Save(file string) error { func (r *Report) String() string { var content string - for _, metric := range *r { + for _, metric := range r.TimeMetrics { content += metric.String() } return content diff --git a/pkg/metricsdecorator.go b/pkg/metricsdecorator.go index 424d6b5b..d60f837d 100644 --- a/pkg/metricsdecorator.go +++ b/pkg/metricsdecorator.go @@ -34,12 +34,14 @@ func (m *metricsDecorator) Generate() (core.Document, error) { }) m.generateTime = timeSpent - report := m.buildMetrics().Normalize() + bytes := document.GetBytes() + + report := m.buildMetrics(len(bytes)).Normalize() if err != nil { return nil, err } - return core.NewDocument(document.GetBytes(), report), nil + return core.NewDocument(bytes, report), nil } func (m *metricsDecorator) AddPages(pages ...core.Page) { @@ -106,11 +108,11 @@ func (m *metricsDecorator) getTimeSpent(closure func()) *metrics.Time { } } -func (m *metricsDecorator) buildMetrics() *metrics.Report { - var report metrics.Report +func (m *metricsDecorator) buildMetrics(bytesSize int) *metrics.Report { + var timeMetrics []metrics.TimeMetric if m.structureTime != nil { - report = append(report, metrics.Metric{ + timeMetrics = append(timeMetrics, metrics.TimeMetric{ Key: "get_tree_structure", Times: []*metrics.Time{m.structureTime}, Avg: m.structureTime, @@ -118,7 +120,7 @@ func (m *metricsDecorator) buildMetrics() *metrics.Report { } if m.generateTime != nil { - report = append(report, metrics.Metric{ + timeMetrics = append(timeMetrics, metrics.TimeMetric{ Key: "generate", Times: []*metrics.Time{m.generateTime}, Avg: m.generateTime, @@ -126,7 +128,7 @@ func (m *metricsDecorator) buildMetrics() *metrics.Report { } if m.headerTime != nil { - report = append(report, metrics.Metric{ + timeMetrics = append(timeMetrics, metrics.TimeMetric{ Key: "header", Times: []*metrics.Time{m.headerTime}, Avg: m.headerTime, @@ -134,7 +136,7 @@ func (m *metricsDecorator) buildMetrics() *metrics.Report { } if m.footerTime != nil { - report = append(report, metrics.Metric{ + timeMetrics = append(timeMetrics, metrics.TimeMetric{ Key: "footer", Times: []*metrics.Time{m.footerTime}, Avg: m.footerTime, @@ -142,7 +144,7 @@ func (m *metricsDecorator) buildMetrics() *metrics.Report { } if len(m.addPageTime) > 0 { - report = append(report, metrics.Metric{ + timeMetrics = append(timeMetrics, metrics.TimeMetric{ Key: "add_page", Times: m.addPageTime, Avg: m.getAVG(m.addPageTime), @@ -150,7 +152,7 @@ func (m *metricsDecorator) buildMetrics() *metrics.Report { } if len(m.addRowTime) > 0 { - report = append(report, metrics.Metric{ + timeMetrics = append(timeMetrics, metrics.TimeMetric{ Key: "add_row", Times: m.addRowTime, Avg: m.getAVG(m.addRowTime), @@ -158,14 +160,23 @@ func (m *metricsDecorator) buildMetrics() *metrics.Report { } if len(m.addColTime) > 0 { - report = append(report, metrics.Metric{ + timeMetrics = append(timeMetrics, metrics.TimeMetric{ Key: "add_cols", Times: m.addColTime, Avg: m.getAVG(m.addColTime), }) } - return &report + return &metrics.Report{ + TimeMetrics: timeMetrics, + SizeMetric: metrics.SizeMetric{ + Key: "file_size", + Size: metrics.Size{ + Value: bytesSize, + Scale: metrics.Byte, + }, + }, + } } func (m *metricsDecorator) getAVG(times []*metrics.Time) *metrics.Time { diff --git a/pkg/providers/gofpdf/gofpdf.go b/pkg/providers/gofpdf/gofpdf.go index 6f302f80..a60421ed 100644 --- a/pkg/providers/gofpdf/gofpdf.go +++ b/pkg/providers/gofpdf/gofpdf.go @@ -163,3 +163,7 @@ func (g *gofpdfProvider) SetCache(cache cache.Cache) { func (g *gofpdfProvider) CreateCol(width, height float64, config *config.Config, prop *props.Cell) { g.cellWriter.Apply(width, height, config, prop) } + +func (g *gofpdfProvider) SetCompression(compression bool) { + g.fpdf.SetCompression(compression) +} diff --git a/pkg/providers/html/html.go b/pkg/providers/html/html.go index 5016d6d8..5d90b3ba 100644 --- a/pkg/providers/html/html.go +++ b/pkg/providers/html/html.go @@ -250,6 +250,10 @@ func (h *html) GenerateFile(file string) error { return nil } +func (g *html) SetCompression(_ bool) { + +} + func (h *html) GenerateBytes() ([]byte, error) { htmlTemplate := htmlTemplate() content := h.getRows() From 78f5d14a04c538a8a313edd291e957b0c68bacf4 Mon Sep 17 00:00:00 2001 From: Johnathan Fercher Date: Fri, 22 Sep 2023 20:17:57 -0300 Subject: [PATCH 5/8] keep --- docs/assets/pdf/compressionv2.pdf | Bin 0 -> 224228 bytes docs/assets/text/compressionv2.txt | 3 +++ 2 files changed, 3 insertions(+) create mode 100644 docs/assets/pdf/compressionv2.pdf create mode 100644 docs/assets/text/compressionv2.txt diff --git a/docs/assets/pdf/compressionv2.pdf b/docs/assets/pdf/compressionv2.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c59f126e0facb9170314d1830fcee122469c15aa GIT binary patch literal 224228 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
j-44O} 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%0D&u%g49E-@qvNSNyoOm6=R5=NKofnnVZo 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
  • 4<-K$|p=c5J;dAdGMVPB+I%+eN{3t7+zU$jalYV;; z&HCbJ2?B(1@gR6q!jkmDZJUw247F5~G;z{avlF9dxKmQnZ-hM_j<^L`7y6Z~$Phew z{WAfgUVcw;T5SKqSLWbV4g#cbMd=I=NA0}}=AV$x-w$tM)wtiAR;D%aCM7BU z-&Ka4fSmYW8TLO{hP}*pKArL6LBWlWTnFZO=b6JpAI;v2hOP9jZ(gQz&~aGYwK0&R zew@z6u%)+$Y33as`D|WsUyntV?DgnF9>>iu{Hn)x20|&{$4?Hh;%C*(ug(gevc2uv zwToTAs_>LJc{)_q;5>q>P1-K&d?&RjgsY#8t7n+K`uI%dT6#e_!-bB3OEob9<;?{= z+2+%!((ZoVbS;Jh7j+B`F4JRr&L;rX>gorC<_vaA|uOQU+;fhd`oi zC8WgdCB$uPU^dbyDLBj?B_jis0EHQW2OK2q5O($w4&pXaa7h^%8+)WJ!cJNoE+u0x ziLir#PX`ndj*x^({(b-q-M_^)`dy%=jjbKh!43(s%h<{wP?88~P!LK&905wUMcUce zz$Ij04loHQF+>t5P!lHO02hZ#NIJkIrBQICy$k|o3r9%UOW8OeWMDS74z@^OTu9kN ziKZa&0cl%=48j(HK-$>Lz{MqCFbM=w9Bzw}L7}7_Y-Ob2_O=KVN&*i3t)mg2kVM&m z6%r&0F5@6BEn^QC7q^kN6^GfOWNZQLAPpfQWiJjBhr)>h@pl<8goCuLEeZ+VY$t6i zDIozDcaV{hmaqe*iK8SC_EHXZ;&231>hE0mi!cP72YdlPe@24>`TiCT>UT@p`Jq6- zrt`-@HbV>`s^Aj}fkQ+gQo=x{f-q8OXHO4R5X=dBUR4$WLx{sL=w|C~<-271ju=7Ymv$p4fE2mR|G@*!YINg2>%|N1NfE+Z`k`1B8H z2sjuf|1k}LkOJ!dKjsscl=u(j0@|b`|587+j}2g@4~PK avg: 5.62ms, executions: [5.62ms] +add_row -> avg: 260.75ns, executions: [375.00ns, 292.00ns, 292.00ns, 84.00ns] +file_size -> 224Kb From 649e77e35f9ac42dbd08937b2aa150d89d9ff6dc Mon Sep 17 00:00:00 2001 From: John Fercher Date: Fri, 22 Sep 2023 20:51:51 -0300 Subject: [PATCH 6/8] Update examples --- Makefile | 4 ++++ docs/assets/pdf/addpagev2.pdf | Bin 2329 -> 3915 bytes docs/assets/pdf/barcodegridv2.pdf | Bin 4403 -> 5628 bytes docs/assets/pdf/billingv2.pdf | Bin 208820 -> 218261 bytes docs/assets/pdf/cellstylev2.pdf | Bin 3267 -> 18159 bytes docs/assets/pdf/compressionv2.pdf | Bin 224228 -> 224228 bytes docs/assets/pdf/customfontv2.pdf | Bin 181154 -> 206560 bytes docs/assets/pdf/customsizev2.pdf | Bin 204877 -> 205031 bytes docs/assets/pdf/datamatrixgridv2.pdf | Bin 3373 -> 4584 bytes docs/assets/pdf/footerv2.pdf | Bin 2691 -> 8763 bytes docs/assets/pdf/headerv2.pdf | Bin 2678 -> 8755 bytes docs/assets/pdf/imagegridv2.pdf | Bin 221100 -> 222715 bytes docs/assets/pdf/listv2.pdf | Bin 3900 -> 24629 bytes docs/assets/pdf/marginsv2.pdf | Bin 253155 -> 253315 bytes docs/assets/pdf/maxgridsumv2.pdf | Bin 1672 -> 4791 bytes docs/assets/pdf/pagenumberv2.pdf | Bin 1642 -> 3548 bytes docs/assets/pdf/parallelismv2.pdf | Bin 2362 -> 2362 bytes docs/assets/pdf/protectionv2.pdf | Bin 1255 -> 1300 bytes docs/assets/pdf/qrgridv2.pdf | Bin 4003 -> 5214 bytes docs/assets/pdf/signaturegridv2.pdf | Bin 2112 -> 2759 bytes docs/assets/pdf/textgridv2.pdf | Bin 1695 -> 4415 bytes docs/assets/text/addpagev2.txt | 5 +++-- docs/assets/text/barcodegridv2.txt | 5 +++-- docs/assets/text/billingv2.txt | 11 ++++++----- docs/assets/text/cellstylev2.txt | 5 +++-- docs/assets/text/compressionv2.txt | 6 +++--- docs/assets/text/customfontv2.txt | 5 +++-- docs/assets/text/customsizev2.txt | 5 +++-- docs/assets/text/datamatrixgridv2.txt | 5 +++-- docs/assets/text/footerv2.txt | 7 ++++--- docs/assets/text/headerv2.txt | 7 ++++--- docs/assets/text/imagegridv2.txt | 5 +++-- docs/assets/text/listv2.txt | 5 +++-- docs/assets/text/marginsv2.txt | 5 +++-- docs/assets/text/maxgridsumv2.txt | 7 ++++--- docs/assets/text/pagenumberv2.txt | 5 +++-- docs/assets/text/parallelismv2.txt | 5 +++-- docs/assets/text/protectionv2.txt | 5 +++-- docs/assets/text/qrgridv2.txt | 5 +++-- docs/assets/text/signaturegridv2.txt | 5 +++-- docs/assets/text/textgridv2.txt | 7 ++++--- pkg/metrics/metrics.go | 18 +++++++++--------- pkg/metricsdecorator.go | 2 +- 43 files changed, 81 insertions(+), 58 deletions(-) diff --git a/Makefile b/Makefile index 45b622a3..cb31bcbc 100644 --- a/Makefile +++ b/Makefile @@ -40,19 +40,23 @@ mock: .PHONY: examples examples: font + go run docs/assets/examples/addpage/v2/main.go go run docs/assets/examples/barcodegrid/v2/main.go go run docs/assets/examples/billing/v2/main.go go run docs/assets/examples/cellstyle/v2/main.go + go run docs/assets/examples/compression/v2/main.go go run docs/assets/examples/customfont/v2/main.go go run docs/assets/examples/customsize/v2/main.go go run docs/assets/examples/datamatrixgrid/v2/main.go go run docs/assets/examples/footer/v2/main.go go run docs/assets/examples/header/v2/main.go go run docs/assets/examples/imagegrid/v2/main.go + go run docs/assets/examples/list/v2/main.go go run docs/assets/examples/margins/v2/main.go go run docs/assets/examples/maxgridsum/v2/main.go go run docs/assets/examples/pagenumber/v2/main.go go run docs/assets/examples/parallelism/v2/main.go + go run docs/assets/examples/protection/v2/main.go go run docs/assets/examples/qrgrid/v2/main.go go run docs/assets/examples/signaturegrid/v2/main.go go run docs/assets/examples/textgrid/v2/main.go diff --git a/docs/assets/pdf/addpagev2.pdf b/docs/assets/pdf/addpagev2.pdf index c6a5b1cc616cad96b84547815fe4e4ac14958374..2ba28ad7e5be8d51b7c5b93a4924a51d9785a31e 100644 GIT binary patch literal 3915 zcmeHKU2oG!6wUMeiu+QjJmC5Ej8TO|(`L83uvBRzkg7g7_B6O^?aFqSExdz0#Fs;fK&o`j_`1y0<%G{&)VUPCGm8j!`BPB;;pj8JSFi;@_Wn?6i(HN+>gAW+!kb$(FAjeXo zG#z}vAl_hrVwHTfH4sS$A22W>1A$@{W;_P0gAW+kkO4=rib07cjS4p3W3+Y4MiGQ~ zSP*7-gpUz~4F%zczkndtd-!PEwfNe0jV*#0w(DLWKZ3%hL&%2(kqnRUF@oSMR75xa zEs4H4ytjkH&0xEO`)QI;4@<)L-u)vSB+(H1cab-6>ihON_>E-_-c9DonqG27hNhiw%{0UIp3wcYasCs~Ki%cOt}U{Z(36{G z+vNn$i4%HQW>sF4E1++R@WemSBToev`Qxc0Yca z%qGW^1AK=GpF|V$1Yt1Av_(}Oq^*P9gJ*&X$r2$1(~L>H;8m61cka%NL+~Pf@|vb? zdReV}_*!Aq>a*8B=@kzA8XR6NU7ovqR$O)!pzCv|1c00YVz2-DrsKAD=NPuQA{esz z7sOg)PCAFaCK7|P@h>Pp*Ce+%by&mE)^&_o6kd28mkCO3qo!iqpf+j=-@@ZbvV|v< z+WM~0*i>%dNoFy6hI2@XA!M_rFn4~bwRMV1S!4D^T^ApmUn@GVD$Kpz&x_Eb^1Q+b Z>wj5(aho=++iqQ@)|%|>9KN2B{{dMvz9;|y delta 1236 zcmX>tH&bXrQoUPdPDyH!g1%c$Vo9n?YI1%`s)D{xYF>IthJulqp`9I9aY<2XVlGz& z*So}Q_s%?>wy9oc%aM~aw_UbjuCH(Z z#&_Ios)Heim4dP1!l2`ewF{4?J`yco;@_C#q*bu* zY4U@Io98co@ToAD{Yal_9qY8YQ~tAbb6WoAKG-{JfnG|DaEeSIe+SUC^$`Dg#O|4# z%TCCDW~lzN^<#GAIr_2A@1s}HgFQbB-sCFldTjZ@boiY>rgXrp82O0`dJ{sn#eKZq zU*UaZnnu=+CCLf@59P5hUU!rI_LXZ}w>))T%eQv#=HE#(lV_@>aCJugI3n}%yK3C! zxAWdzgOt~OG0CstMQ!cHESw*`&iV^-RT6 z57jq{ia&Mc$TLda(k!vQsmt~j-^RqgFT$Yc6Q3EoeR3UVE`jJ9WZo;p3=Pc8F~kf_Fw8SFu>{$x fis~wJQ%ubk=7y7h^SN>xTAEpMsj9mAyKw;kITrF# diff --git a/docs/assets/pdf/barcodegridv2.pdf b/docs/assets/pdf/barcodegridv2.pdf index 449f05f1d3def8dee6f791d4ffe2ca022fcdd95d..6b35d98bbf226f08c02bfc0fc2a6d10d192d493f 100644 GIT binary patch delta 1366 zcmbW1(P~pc5Qf3aRcXERa!`s&=s2^xv$LyEq@)U>h%|_JS2eZ>O|b@ijly}9f{);% z_!M3^*=%BBBAA}T;heL}{AbVi|Ff5Oe)TTi>x<#&czgn!RQLAW*YWxA=+qHBx9hVb z6oqegBO-X#?#FI_0NwW+y>~pBfWap?7&xCX2xJZ@5pqFIu*>!q3Y-t&5Zo7t5p(8T zfb7gzG=&V4x|m{uOc5oe65zurbhoy8Z~JHP+A(Kjo(Z!Sl(3@AA!3S>v`YJg#TO1R zttB5pbHc=tby?gOwYr(OPX&Eh5uXm*C#tvv%#yuAtqqz9R0^gn6ldaxb>&kcN`!2G z_y0tMP_sq?!_y$GBhrL7BofV1F)k)vT{Zuf#2b+&epMogli4J3?&X^WB4S>s@mo*( zA6Cv|A_hB0FMjR1oAzc<{y4cJK3#WIMT<@oUvFg{wK&v}uwoH!El?|yp#Vu4C*hy- zUPKbLHp*s5ilDWN1vXMZ@3Vbmos~^{GbF)VIwmPx6<pclkc;FtsJp0%`8V})q|B)vjsQ5P5{n)y=&6%xr wCkKqc)dz}^LpR#aPq+~OJ;|lmMzUNWoczj|SLuFk?_Zao-tFuhyn5<>1L8LwtN;K2 delta 638 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 delta 208 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 BW3T`K delta 10276 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 delta 487 zcmaEUkmu|Ho(W0yZkahHsYMF`6;Oi`aY?7=_MHoMrIavc3j0JMX8Co zTosH{E}ZU?cI0V&SZjMUQcd9Ws-Tr#w`QpvyUF^U`^(Z>;*+*rmiYARU`m=L^X5xl z1^@a#DjTe8^wj>xrj~Z>-_v=A)*b$4{e5f5HO;8UZz^X6$+54!R3GwdUbS@g6SG~) zcK0uy{c)`|MTJXL+4RV%BW=DtPLCp_`#96hGmr#0)HCJ&)t~RD zPYz1TNb!=C)^s}sa>;)t28RFto#oROHybjw8!|BhG1GQKCT0~`WdkEaQwt*_O)h=k z{1g{pU@B<1SQ!}@85>vvNwD1X3VG&<;wDC>3I-sckf*=}qKynp3@t6ED=08q+M600 op-KYf%?vD1#ef=23@kCkOpT1D&ro1?^a}0L|~bO#lD@ diff --git a/docs/assets/pdf/datamatrixgridv2.pdf b/docs/assets/pdf/datamatrixgridv2.pdf index 01f6476f8db95a96d0dd8a9d49714f473e20ce48..cef0ffc3b0faa703fe3a2006e6e9a771fdc851f5 100644 GIT binary patch delta 1365 zcmb7EQEC)H5Cy-?BnJ?`NY&JobVVJ3|sW;WH->VQvJ#r_LdXyDIthJuNSshu5HaY<2XVlGz& zKRC_{1Sb8g8Zb|8T%S;m$5S`rkL%lE7t#FcJUE=H(U~+sCxa`}P-fl?)}@DDGwB=rVG2F-WQ~Kvg07i!M7+PS+!}$#q1cYqPtY_&)TTXEUvHl-WD&R4#8{(%T&WgDn%noOeCTm%78~xAQ{OZ7C_kwkemMHn}Mr_xn))-XLSS z&`lAGu4^yV*rJ#-uP*Rz`o?Dx^=HpU*7jG~5;Cmai&j@QJdyMHn^>T3@w8Fqq{hM% zimp{0vnFj6HffZPkVw;Y*0_Wp!VC=m|KFQi zCc>4PmjaDSAS*v9i_1{KKw+~ayFDknfsvu9g^|(ZcmYv3yINp^gn^lXk%9pTDC8+{ zff-<>la&Q691P4XEYT$m%q>jO#f&Ts%+bY+4U7yX&lYszHa0Xg=TcR5^>^a}0AR)j A6#xJL diff --git a/docs/assets/pdf/footerv2.pdf b/docs/assets/pdf/footerv2.pdf index e298dbd09004faa5b8b4e6b9daacc4692b56a4d0..a7e2c7113cd1a5ddc5fa2b85ff2eeff4c66035ba 100644 GIT binary patch literal 8763 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 diff --git a/docs/assets/pdf/headerv2.pdf b/docs/assets/pdf/headerv2.pdf index b730234afc5c8473df27c2d230f28a902a434ac3..07695b5114736002c4279fb180aa3c623866f185 100644 GIT binary patch literal 8755 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 OY;3`$s_N?R#svUpJ)1oM diff --git a/docs/assets/pdf/imagegridv2.pdf b/docs/assets/pdf/imagegridv2.pdf index fead788d9948942382b2c04b589c747dd2adc757..c18f56adefd9e5f61bb7ae405e95c7016ff2f201 100644 GIT binary patch delta 1900 zcma)-%WD)t5Qj&wKO`+TjtwXypM2oufD zW>0r_x@()6fvfU;oEhyIp2@`+16S(nMs~3S`NE=_UczDqI_ogs$tY^;A)?jZK}?zh z%%J?T33j@$0NE2@)Dh7T82R|1ec>2;4D1Yg#5yan!Y=?4L38ys1Xm) z$Vq!U!bbEOJ-S%JlhJHq2!P&bN|9I=N9|HDVTewNb&!gy!YL%V|9|P0ovg!54fIY~ zdu4@<(HL5+IHzO8n99Pf7mHG6p(i9t2qHvBL!Nqd-|4qfqg$+q@f1?1r1X%LP(uzv zVGU(dhTyf78r~wM8E&0Ct7qAWAWxl~i*XoUCdJ2~nZf#`Wlx5q^3UybQPh)je=4uS zVk2uO>8j{0T3YB1C0a2Bgi-pfzU_2e#=1pID0Ys$9}Hqoz73LcV1sb~ z8U_R8f5_oBnPQDo7K@Dky683q%^~=JdgLXXajseN)2z8(#-Y-H5o^tf!!Yz za*_pvmb#mT7r74Tq;*MSkan0xoEX-Tp=P(7pJukS7HvF9P)6aW`T~yDYO>(1L^Z+; zi%DB|@pm7`fA0U7RL9QepC^@hxu;(5sWJJE@9!yfeB)oHgzJ6(H!k&|;Q#;t delta 914 zcmex;ns?29-U&(dZkahHsYMF`6;Oi`aY?7=_MHorl#h0c3j0JMX8Co zTosH z7i|9FtM#7P2iLbda$Q{*agleGA@e>%?X1JcCF2r*h)>!$!?U5`0JH5TUXwsqFU6%7 zlzkF^vG4mIs50GZuA1@Foqi9`RlU@kf6`TbdU0G@YNP!74@L&!M)#i=o9(J&N+?T7 z*WMvyk{IO5V7;)!)5&OYX+Zq}MwXXHHdr^gEdCNMXu><$=&5ImtCNu8@je#gHIH7Y zGL?pG=lgIVBeRX;uu`GrB!>GcYd)8&s3f}|KYK9w-CONW#~9T@LwUsr*)=TIeA_s$ zaNNAi)x>do%`1U}iwLH#;`>fWfPAx#Rvb}!*#5;K2G+J z%pqNt)2V;Ub&hN;dbv;Jbiy`Zjh)VVwmTtEhUbQ_5`l531l2e##V1e$JrhLg4 zT=MA^tq=b*Ffjc8ukHQHWimVG&t^~8c28GEAZFU`>B=lFJz3J#U=x?5_4I@U=9bBu z*)$o=r!P!oHh@yoc@vopr!ys?5Ep@BsLF^?{Wh67P1(T6(A2`nSd&ZNH$TM%n7|b@ zT&#=?jEoH|fh1UNdRYqdL^a}0Mxi){Qv*} diff --git a/docs/assets/pdf/listv2.pdf b/docs/assets/pdf/listv2.pdf index d71dd5fd29709a14044aadd7469f5bd6331edae5..296768011475ccf2b56740ae05584435ffd76597 100644 GIT binary patch literal 24629 zcmchfU2ogS8HIh#UokfUvKOH^UmP+B7HB@)rrYhNj?oqfav@8!>%ft=veIVz!1F!;z23IrHev%kw9))|D2G*j|08o;_P!{`Tu27H^g}Lq(r= z!)7leJ$g|sE{6N9}7b@KGV!PSX*8VhXZub8WQudvu zAGqJ|hULeq5r3qAAF8IdPW+p`G)*IZfB1S+J--x-^JeK<*Vwh}hQ{<}y;f#*Wt|?Z zUM`zuw{o%>R(&tz`0L{GTD-apzjzne`{iJ+)VkBs^+T)H4Sl{|8L8Uz zH)Ye+y%AlbYiq>iT0H(~`0WRA`Qf{_tevTwHs11Imv^6rlT-%;PQgZ?SP&b|?}lO;JN!_IlZgW;#5IXo}%m+v4k5z?Kj zO%n@cmpFQ9X&a1SAbiTXaN9FL(lJ@XRuUgiv;gBgn?oS_7obE_4J5AxI=3o2Hg+!4cW^ zUho96#WTwbG7`!zaRAxUpNT#ikuJN?0c0cui7Cj|$-0vzLDI`T37$Z9cxIVFLMXe$ z5u|Z-dkQ#DMW0>h2oge&NI)80n?fT}j$^;oUho7`vZb9!3GOo;EV2n^WM8WuN2O$o zJ1vx8CP67}EmfH@8QeEs5GdL5P75Wt&x_L1Ukb|NFvAvjA|;raqO@IGJ68~;bzTte z*%D8r1oxRywiI3I9cg$2N$)|}B9Da<%p@pnR~uatrSXDr&z5;Cl;A!yN^NRoBb02R z$3h8a5|oY^ldW3GOqaq}T91N^p`b_E;#vOoEdBe!G&R()3>Ngi^7^ zo=6Gq^P)7))wac`RBW*)Qi7Q&O5=2``+}p=v|bP>*mmMqrFLErDA{69qy+bwQMUg25zMf~9t|a!Nl>=_ zT3tbu)(f88Yqr>Y_Uf}3GOqa zZ0Le$bS_=9#U2eMm`PC5Wnf+CWV%PGdM^l+Y_TU&g8RHEmFsI6k4m=K6Dh&W6s4kx z27SrX>55+TNf0R6Vo#(5_nA@BYq*O}r)##@qo4#c2}-)g-WDB|+6w|DTkKI#g8R%U zm8wm2I$g8H9t9jI^D3v9tkCwNl?<2cA9=z?#+m_UJxkRVo#(5 z_nA>@Kcx?5*kX@_63iqh>7u?Wc{*JxF9`Q+u_sc3`^+etew>{OGiBpPte0tq>56-9m_M>V%TQ<(b|Ne>Q-~JpX6OIoPou+g0 zp9;&C0V5>YcFeO{Dl+rYAAz(@&Z5|lKLl86|1}!3} z2)NIT5@mp3hAsBAP=c8RrS-Lef+$fR2=3WpPYWfu&x|tZ9kgt*XSR2cpj5s$P!J{R z0|6yl?3pbpWJZZLKrq7=duDqF2}-K8QE#9e%BVgN+_S}=NQrAyMs0v#hAs9)N-#4; zX`Sy46hw*oKyc3%duEFYc}Hc`1_)-@Vo#*>AWGwV0|il{KH%Luw%9XURLG1HZGd2g zE%waz4w6wxwKnPv6hw*oKyc3%duEFYc~M4ffMA9#_C!h#jY>nyP*8869LlIZ5ZtrH zo=6GqGows;2aYZF%=QkZqtaO48z_hp^?`trE%wY76*8kl8z7iri#@Zwg9Ihj+Nd{B z5GCpZ!982-nJp@0Mu|2+FvAvmW_t$-%EtEw%At(v1Kxed7JDKkt{2#-4G_$*#hyqB zW~L~|C97!Nse&j`9|-Q*V$W<*A@8V++5o`}TkMIH9z;pCHtG!&M2Y%9aL*QdW{V1$ zQKAhH%&^6t+1^1iDy8oY6hw*oKyc3%duEFYc~M4ffMA9#_C!h#jY>rq^{F>d4rNpy z2=3WpPoxC*nNcRagN`ls%=QkZqf$|=jd}wGQKCNJQTA-HXSS%2870~P!3myjnb8-VftI_-)?Ti;%~Q`-)-)1k9S1d@4kBbPo8h@*54*Fu9Y4p zZ_|3}yY1@juov$ZwD7uETn?Yf#Osf=*820q*B6JcuW5IAkI$abH($LL`nbnvrS|i$ zUIKmG1sCHkS^WK%s}I9!FGz5_`C@yw-M#&Fxf%}l082l0wEnajcH;4W|95tN_U7y* zeHLf(tUhx;&{k-<_xrJKQBMhjd7Q~`gk?0*Tee!_RilU4v)R7gs9#N+IIN=Fkk=k zZn&lu>7}e_{`=uWwARvc?6mB0zlkBSXEASfBTqOM<84zFtTF_>nRu zmbdL5t5K7&-)J=~Fg4Y79|Kl_SERwLNn26o<4$(kd-23g(e3f1PSW|_%R@s)rTP1` z+@r_dPyS>zkjL0&&sY|@gBMym`;vCrHU;LH`qnIe`R%Hik`%*3W%EOfs;U#F$Yji_ z&3`pn%{>VCR*2efy(IV{1{7L!Yg*wLqg)azP$dpO&9k_THmYQGcQkJ@WRTFv0VfZOEuX}jdJseklyz; zuAuuXz6)s1*L=wJELO-3_GaAPbl8Wn=#kCqtCpr2sKnLX>Ho{k^Ykgk2;~Nuonki{ zK6I&P{pO1PFv9398||0<-_hCw?=_LR4k?^=yOx8NT z<%s6AVOivZP`dk2=Hsd4sP!!JS^N0)T2f^)?TJ%gwa~kTatXskk<&^0%ten}QK7-8 z)`lxa_~{-(!*ybvTnFu2QM3WfBDx1JlGSiDQm1RMvVz?fxyKcKx2hJ?L7%i<&UGTg z09Z_Mudu!e6oZ|z8X%)8bi^k5P?-)*@r49?!)JR;Y~2U#`&zR|TJ>#SJy}11fNNS@Rs$ zy>>cRdjSRIA8q@aq9Xu}-)K=ZSy@7_4-L}tz6N%&5zuImN70-tbq#0+;Jz-$0IkUL zAWw^e!msgqS>(i*3ycZ)OsO~KT`@TYj#DH8WS<KT%=z=9~|Ol~)!yTKvym!d`#Mh$PN$H=rCZx1*AJG)2DuWlcM{bJ*r z$SuURDtfNDshaN`Aj81Zkkk8OBALpwbsN|cqFfgHa`=5khE!7lVw1OJy+qS?tF*nZ z*cP_@rjX!&fRHud3+Q|QKKwRfLx^w8L0|4!-Tn?ta}*$FZt!t%IZsvt(#*j;^582j zBWcQ0+yPzRzJjgyxJsF%B$bK@ODDbGNpZbDsipuzSgbDFDbcDqxT62s7F}G5dEcz; zX7pcjA7SQu*yT_j=aCN0WTzlWs?4i&hNt8eCDGtV{%LSe4#=#avwb!Z8;)m0jnnd@ z6FbJ70(_R_uT4nlJ>d2^ey! z32EZ)T9bsqKNpPUhNsou)y;=f+z?k8>T?#n>IT8UY;$4#yw>n?@8_qu(UVjNR?X{q z{Mcu+q`he#rmHgR)~&8Op9gYs_nSui{|v@r&40~cT{ESQMNk#qM7h_!+TA*LAG+aQ zuA`*ec`k-3RHb*^Kjv?~iazT9Vwhvnw9=c{C#swYKWA0)_p_2)IgB=s63$GzHt6>x z_Cj9lnD2W)Ty?{=4W&?^dZz?zYI!&(df>got!L&(2cg(w2&nr$soUN&Gp+vf?dqxm z(8#SxAeC_3eVytIHS`_glj8&{vEalXt_#nL1^oWui+3DgG-pCi^2MJkHSGO6O3Q3c zyj9_IS!ys=*dx_}2cG(fug~mN;($P&TKw`k`Bi`|XRKhJHTS;!Kpih@ofm%l6ZdjI zX64nrsdRL)YV6&1Cv3n@5yW!5%Jx(IheGw3arIXog+-EVP*k~C>@Eg7-B6cI^eb2l z*$S}=WMrH0ae9gc1aIxlht=gLraS8#8HJQm61+O8*k{IH8U+J7I z&?Bj?-ycz_j&VA9S?!Ksi?Prj9J!iK2jkNwrM!kZoD!>r{wjYJBZ}%FvyQ|-1e(fF zZskPF5rjsEWyrl&E`uqTh>Vn!YP(kFov*Gzi%v*iPnrR z-KrgtQ_#&tfnqiCm%JoCt!9_73sAd0%7bsbA0_h&{PQctB0J$VlyJ6=ZZpMjfdr&W zoh)NKp&XJ}Z!S~0ir~7Al_e)1oFDzxtr8hAd>N{nD?&^Ryh_Tw(B1Nwa%jySbsOX* zFHxldw=Xasdv3fNk!)HkS&9!pbl$RKVsbnzrQr$*ioRpzz0X(_VBlJp{8Z)oPqan~ zUE=zP=hjmU)gXkXRKER@bFvb4qyl#zhp@8r#Ze!9(^O%;r8_u;25YR}DDE)pMC)Vy z2Q3)ELk07N0L<}v_(omaJ)?wr;*vV)uBXl5+FkTq_l~BdCmlkyJxM-sX3f8MP8Y+R z_!(V`VFV#S%?RneYv@?bZPL{37ZHle>{>5XeBxp41(Fa&Y#QucWAQCxzp#sj9h}XC zi1i|5%q2#DhlCOQlB0{+8E!%D|Yl z4Q*Ycgy~>#`8R#$l~Rg`6bG54v!$mo!9fNr&hpX-MMo(48N4@IV|B>S6UXiV(bo@$ zba;CA_)PPpSj6-2*9vejaJ8RmV!P^)lEmNnK*MXItEGl0^l0dQLUoWJ^mlGZ8fTR(Y>r%@+tO$3k-cg%yuC>WLO!AL+023L`^kc2}@(hgR)QWW3YEF9Ws`SV6n4mZI3{o4i39`RcLgYDu zG%G7ZUhB`qR%g0k74CDoHP;Kwe zl#58k?`aGPkzPY0zkQ91&53)O`^o|7wG15mD$ag__IH+&#hBypX1j8Mz|H@j76xW- zMPtn^&`9*!Kt>^9|4h(0j5#{jAqWqkF=iOtue%sC3(T);SPS$2!r{<(i(hd#-2bR% khW?MU!># z8GT9Rt{-V$St5Z9m&4q1xcA)i`I4QyW*;8SQQU8juc5?Lsff{d7&m(Y;m}uCpwt#_ zJs=_+EU+#1BS<>$LGheY2BIsdMM4{C9N17xMj(UIDA*-ZQaKpLa0cQAzBTL!(7(SA zVJMBE5`#sQq-`mL%N`_8enqi5fD^%FrSkNe;lG~lh?kyxlMPE}z$zyxgs27iMswKi z^hXfIqj3SEZfagxE1h1u;O9PLNrnWa(1U|rLs}9o?h|ppHJZ#a_p?k|8_%;$FnQZy zMvZ6-Vy`i1Rh#1&^3^gUD|Eczl8cXEx@|~-585Z%2azIcHk546gYv0QW|i}_^>?MR fr5-J_4|k=fIb{8>=TtJC2lXw5N{d{sc3c-`6;Oi`aY?7=_MHoMkWS!c3j0JMX8Co zTosH{CY<+THsEQ0U)yy*kpJ|gf1bBqf8ghmOQ~&K_qL5$)coM}>AYVpK8P@J*4#f{ zQPQ(F*{enU^{?D}DzAEBgp|Po-^QR{fk0k8A`ED`@&ghM@w3NK~YFUL`LmefxN~2A4&-Z|HK~ptP-;AnW++a=EeF5yC)`#I`}=E zBx-*NCQq=5x_obT_-3ID#{%>n^XvNnM5iu@LH`yIkS?zaE z-xe&DvtJ+heL2s;9D S?8a?mVQ$K$s_N?R#svT{#;pke diff --git a/docs/assets/pdf/maxgridsumv2.pdf b/docs/assets/pdf/maxgridsumv2.pdf index dd91910d163395a0c2ab5a6b98e162dd6196f4ef..21d112f067c491b237322e25df9bfb73d606ced4 100644 GIT binary patch literal 4791 zcmcJT-*4MC5Xb$jzv5m3qz|F^QzVC=!0g0pwsj300~-+JL6&IGfg=^Nyk`63+Z}CL zmMjzqhS5kQi2W{;_H8S68g+KS3l`V*R$RT>27G_!h_*MqOqtF#mIyFX46`aYKXx z!vs+hlrTgYxH=S84j$mp^it(KcWNn8%@S)ROoGs$?;YZ^Pnr64i^ zL-)(ejAqoDz-J2!rNA5^nlv)uNRp46P9etvS)Ek4{>&)g(b{gh30&2*>Ty-CFvH z79t@Gtq}+P6Sb_rAGdF8J+Cecj&JE7|_mu0+ z0&P$Fj3O#=W8(%=)UR|eT$6!t1>qV-819}fx3%+8w}OBf!%dCLyGw4Z%o^DWLsqz_ zadCIat&LfuT4BgGAqtmvmpl-yAY?8Sp}4TSbX>l|BgHy}CvrR%8w|mWeTq(DuR3pbit%w2kJGL5-yr_rHh;N# zouyIyuv^soK--7gh`24XGG7-fh<{%fKNj2dv7pm_^5*uh#^omeZxA2aALa(b|EkO$ zTn&#g<_RF4yH^~<-3z7$#?5`w-0yI@_G7%h#xHL^8u%H*#KQE=5xJj&nV*vQk57wd zm(_qk|A?`7Sv`DCGuM=y%%b}v%6FNo;PUIY(R6e_y1^@q*ochuJ8T8h6ZN_*ZqnMp z<;@SAazQP}FbfZB{)LZa{=K>r&~$)@Y|139(@nYZ36&M5PnvwnZ|Ms@_!+x>S-3oR z`EyyiD)`LrQd7?R#~V;wURjHQ@qX|Ko5N@vJOs@Y9Bi d;jUPg;BB_I^R`Z_dOu!?eRYBh;H7~s+L&4P4)Xt8pxTGjGF_)`? zam)3yd6yjo4t%Vhm(*AA!eIXH&DX(>d-y{Wm1g$e!>m5%NY zRhzfp`NKztf_jB7JpSxXN=@I-ub_I>dii$e3b?0x&##%3`E7FF%wWyOIps#JMS8`P zI#12(6S}&R~3VytG7VOzCQ*BS10bNp7HSI>GS6gu$kYNudDt0?XfA(cm4L0 z4>ee%G9=fz7##g?(QPPJ-#Ul0dv5{s+i)LE8SwIQ!+BwZxMfTr}tdb&1kF8T`4}-y2H{$ zGGFeww2E`)?u%gtQ>XQLrAJ?jTwc3K@Wjfcr@f@LCw*V!E0S!Sz3%jxITv@==NfxA z?UFRRUYi!Uq2zYDUrVKN?mF(Xs?%!P_ zv=e@(^=mUmqBPta)+k)b5nhiBnT|9-S3YofW>uZqwyY5w}n5PWU=ed7Aotw|ie# zb>}2Sm`Uf%Uu{gb%cq2jkX&rkeUoc})gYP*@0`L2bp<*M_hiuFw2U!y5< z^Fd)-w8bAj28RFtm4bbyZGOt<#H4IsWN2z(WTMHX@0*|E0!(2F8ZK5w21dpPmOv6L zH`z;Yf`oy&p^<_C2q@$!aDf>H29}m)lRpVsI2f2)T4G3ASel}X85$XwVTc(UT29Uq Sa^f~LF*M^+Rdw}u;{pKwT}(s( diff --git a/docs/assets/pdf/pagenumberv2.pdf b/docs/assets/pdf/pagenumberv2.pdf index 2ae9bdf103ceaeda083798d67ed84ef704f7d386..c6f2cb7842aa74c7f33cf4db46ae08ce05acbd87 100644 GIT binary patch literal 3548 zcmeHKU2oeq6!kNI#eE5oJXHJ=MQR8NEKa;-UE9Dh&;mgoWQq0^#8M&AYq}rb_L5d- z$8D6YjovEQl6h$z9#P~y=N?>~PM+~d5(y0I`3*Tfrn3+4EYOQ=X$hViTRGs^J0)~# z+j`yPwgs^XjO)r_e+#j1KYvbaRd^KN?9l$S)zbY1JY@#^Ti4iZMHu{n-y6arrQtnZ z7-R5TcU_W`8PEyKbfTFmxUnow3=8nH0uGDyYV`q}y>mw}yV)|(IHpm9G0<^< z?`6PP#FN1oBx!)}W01r$iU(vM1AHF?Ws*qi!RA2e0N=|%;^H*JF%SX1k3p!5M0P#hb zyf%08+o`nLs`U40esW*)ee=HN<9>Tk^1ol={a*WN79Mp%Tf6fA%|fT#PvV%qwJ^ma z3)9=pugqvm=!>#w;mTXpDfq=Zg=<2`^%@D$-y8=E`8 z`+aj<-`36LyDYa|WIF-oKEYz0+XfClei}_i7o$@=!-$Wfkv>8cbnC9HtJBO`I6VDD zFdgMWBg7Z3Gq2TXSc+$5TD=Ca#*>FbLnRuf%$@hV$k!%x83YHo|d7L)Qe zM1XGkt_T3R287;xx3Ekm;D%43;Qw2lCQW(u6O?DnhYPk!Ey{2Vfhc{a)#wsT|4lTiKWIthJvwyft?*!aY<2XVlGz& z3w#^0gUeDF{d`Lb)_9nQxN;Pu7UI9an7PA)lEq~ zG3}gPZu_)7Hr6lRwlUyIbvV*VvAscyx`~`Cpt}i>!z`*eT zzpLsg!O5@Lv+;(lp`|5C*k0J{rQ;}Y^y8lSk6Ox`qv!ow@orv8qDT+RYt~yY@3l6% zP7wY2_GloFZ`k5hFV6Qn-?2(6716CItUi3zH2P%gty)>1;8(Uwo;rHVNJS^F_Wmey zy58hqu*VI?%{%+2?wj^j=A}TB3y`&W64w$&WdkEaQwt*#O)h=k{1g{pB2&Ay0t|%rG#pv^1W~#A^{^U}9>HA!%xCiXmoUiJ{KW c&=kX9LnAZu$$h-e+=j+xCS0njuKsRZ0L~mi-v9sr diff --git a/docs/assets/pdf/parallelismv2.pdf b/docs/assets/pdf/parallelismv2.pdf index 22d12923e8bed007bb3c953bef01d0406cf6b86d..2af6488d1d1c0254385e84059e0fe8dc9568ae50 100644 GIT binary patch delta 104 zcmdlbv`c7%3Ol=zk%6g!fyHEPb}1Npvk!YQqjRFEQBs;ws-;1ynUO`BQL<@@v4Nqn Xg`tsgN{WH0QL>$a4Iw3ynK&%~W=I-P delta 104 zcmdlbv`c7%3Ol=jk)f%Dk?CY@b}1Npvk!YQqjR!JvYD}&rDbYLnz5NtTB5OWs-cOo Xk%e(ea;m9$vZ0-V4Iw3ynK&%~c}yDY diff --git a/docs/assets/pdf/protectionv2.pdf b/docs/assets/pdf/protectionv2.pdf index 2a47dca056dd48b469d819c1a034fdfda0317acd..60e75f31d0edd4b5e902844e94ccbcf2816e4ac0 100644 GIT binary patch delta 374 zcmaFPIfZLNQoT=VUV2G}f}y3UogG(kNl|KIE|-Uh_@b3%&kyH`9K1Yb^JTSd7mnBO zsb>}4pZ45!)mQU_J6it4%<0;de9|%N+7p=t1&Ox>IAm@9ui?5;A7Z}X_;f|(g?}fU z*_y%bzhj5ZEvEE!iB+pFrDq2iam=_MvD{ScSj2Dc(_E*8Ex$jAcw|4LFZ|b;bp^dI zk85+@E!_NL!OUq-x+kyapCGvA%vP-*&LJDqXEj#n9z8j?!f3*;nRT&t6VA?<@mK#) zLq)#um+iNo=7+}oXSKd6DdigdQYOvf*14+CTdy|rG8!={K3%dk)y+tgOW!v?#U-&M zRY60l%u0{LU}vF<$^N4!_ccsTV4fsyY;34t00Ihm3S3}@fq|)^$z)CzOM4ST3k*3k fb5jg43j<7bmPUq?8(Ctw4Gjz}xKveL{oS|#E#Z_Y delta 311 zcmbQj^_+7;QoUPdPDyH!g1%c$Vo9n?YI1%`s)D{xYF>IthJvB7ft?*!aY<2XVlEeh z>Cfa9H~fG4*{fIy+t^h6o;UT%)uh!+uVx=`tr1$e&?h1KWB>WbqTIJ7^iGKW+f_JA zR_wLewxWx9S^{Rwp2w!veqcVN8#iAdb@JMo<*U!_@%dgn{jW}9b6U0Pgd^*Y@EESs z$*8hmbDQi?=`c_8!}`s~sy-ey(hGmyF3_BoKJE9@^39fvMog^F)^1LBnOwju&bsH! z`8`dOdzdGQ8(Eku7=VC6o&pz`VPIflZZO%D#nRr`+yq0;%-9e^%-jr9orSsi!%AYr2-iim4OJVjk2LJ|@eJo^TLeFPuD z$M79|27Lp2dVZ2@5@Z;LnVRbQruyses~@+2ubsTNXS0L7`DY+C-Q29c&W~ri`xU~| ze1ECXiNUx0Kty=lKKH7vDJ)h;>+h&e!1NPrPb(iC3q)ck0b+8dut7QE1jjRY1=SIR z;9{hh0Q1!cbz#t;U>cn&1rHzgVe$R?`kToiysU_#BkGXJk`ulF9mOFhwgTM;O)2^S zmj5DoMd+~K7Hpr)X>Paa+G}z?UBE88h!VMgpGKvaEg~4ABe4)W^l5`$C@D!DM2VoY zXaPYzIrOZTQ_><2qeLa2Q(y+oO{WlI-}E_3TI_+8u!)m|A|O$n8L4!XygoxolY}e4 zMV%&}sLS}sA2zzngJtGm;GFybRZzF6lW`eMtBtM^A`!%}bJqlvFSKWVp_;Ip3 zpTXMXfzNKidWQoUPdPDyH!g1%c$Vo9n?YI1%`s)D{xYF>IthJuNSshu5HaY<2XVlGz& zUYgy_l z(Td53b6d-|FI4Gr+_XS5QbqAkyUvOJ`_DL^{h77B_@zf5hKN0WlnwhM2PG8DHc{|Vx7 zlaTa!&^ocJ;$`H1>&iF##hRqMR&rPfhFyJQoWTF^-GQS5Dm-f^Nk&+?ZHVsYuIBhH zn6Efv@%5mcvCYLdro7dhA#h2|#TfiLeQ?D3mi`@IR4egvAtdG zV#a=Mq2}Eq4%rI1awU-$?lroto^PIa@a3;Cw&w>Hy~vVNs1ymVm%PKNm#UC%?4?oU zF;TARS&9tH*$3@rS@HiTHnJoe1&2$%k?h$1pJTF%cZHCUNYi!JxP%|F3=IGOKb=)_ zfh#pH1sat=R(?_zm!X1z!e&YKt=!56Muw&qMy8rv`o8%oF2IDKpy6U=WME`$U+B~q>eTiTW7Htol^9a^#z zJ1%Nu4O=pY;>^(*&f%QgUX9Nf5s3f_P5zjipQqD5KL9(^Pq80+m*J&t;J-ErJrxQD+LxXeg`&7MH`cgzIU-4G{_q6GTZc zmgo%5Ffw-337ScgahQ5Iom8{hbt??b-of-SB4o@E#x@YqBT-@xBjc7xwE?vN zZZab1X1oQ-w6ZeeS?LPxN^7XigYw1)@166GmP{4K<@+F+L6rE)hfwkjN^UjDkiniv zp4mv(9+T7%Yc{ABpp+tNOYIh=%Du)Z>4nS`XIe;)I9--&$IBuYg)X%-9AoWJDKV=G z-}w+qu|>Jgwx*P@3=V@_r#nM0mSVaGCWrABqtzu*|9+lQ4aZjGs+kF{sIgUQ|NV|zqT`o6@_@P%nnkV4cOu5q3jjb z2^O;w2-Lut66i?}bsv>!5T8M#qNcr4yk(O9Q28a?M?JiQha|mhR#5dD zSoW(Tv~c?OKcn&Jc65bT7_ku<>38S`yN#}D>MPd;IKBFYQ!c3GoKqAQiw}Hi{C~~8 zi1;iO$t<7j;W7mcwq;=nBFqykHCa_7_x5?N3n9|tJ z?XAVm?3GPxq+$0tWcpQHF64{ny4E2@E%u#Q)zx3vC~@pFn+7F!AoW9CHrS_acFMAI RZMWu&OJS3flk1yt@-HpI!yEtr delta 817 zcmX>udO%=8QoUPdPDyH!g1%c$Vo9n?YI1%`s)D{xYF>IthJuN?p`9I9aY<2XVlGz& zoptG-)yXn<(#l%;Wt*bnJ2qMT^BKZ{H1YMrNn#UgGnda zGwOc*Kd$)0K){B-CF?`7f{Ieb{(bY?jw|n}bidj)(d?U_(53pQNtq$1V~f{@)EX_b zb7jz(DZ!HMei(;y=NvDXg%=QBKNm~B~^qm`QW4nHy-RiynMO-*W2HV+5gG+ zo$sD-b7H0PCf2NdhDBT=^>+i*J>m>5o4xliyD#;Q^_ zf8v{-r0-KRgO?fTY|;$wR9!b)<)mRv@LY$`z~tHGOZ(1-ghowU)T!&;z45wHl<#Mg zXD8EE&tr*m*YsIY5C#+fC%t-yxL0~Q5?{1Wmfq`4G=6E(pSot+nw|9~rKcXM z`N^2{&Rgzu@xj)Ks=C+L2qaIMy)V^#pUO_9_uuxa?Of%j;Ck`1+51!b_f47e;a6Ci z=oTKSZ`Q%)%VsFvKDKAO<)eKjo3yX*yZ-b3)bPkU)_s2%U%aZUYf4?*VKDW#;Pk6} z^4GV9@7LL!=3ZKH!N-H`IUl=39UB9~|NkteA#7JBzhs#_Ie^V<@;+AW$s5_MCabY2 zPUc~En%u^wKe>_BcJgZ=|30hxWIuM7$%olB87(KjWjA0noh-*;z-TtvpTmI7T){vg zh--2Jlg{J@jxuEfBSTXQBU4Q-ec${P7huX#&~ULbGB7eWumqA|xyh28lOznxj4Tuk zKtLf+feXwqFf=kUo_v_oqTayV&=g(Lz{1cFL(J092wlw308^czp`j&)I#UY+3^6lH X6QJ1SDlR8(Lvu?bE>%@me>W}w*qS^h diff --git a/docs/assets/pdf/textgridv2.pdf b/docs/assets/pdf/textgridv2.pdf index 84ad1b23eb8da78385ad78093cefd03fec4433da..782202170b4a4f4afc8330cebab81a84649e6ae8 100644 GIT binary patch literal 4415 zcmcIoZExa65azRg#e9jB`;hg%+UqJh=|Vz#?WGqHq*jXZ!Qh2BHFji7llI5AowYZ{ zyo5_zK!EY??0EK>nP+D>xw#yiF(Nzx6pHbqcYf}V{&+Ir-^4TH;dg2B3K-4~J%4Bx z#j>231@LB|U*r|eFF@M+j~_jgCsvESb=tm|d{#YxkXqyXqAE>1_bB{`pGS`p6~Z%K zD5dbdyUx6e5%>cdhe1eH!nC0>l1aklWUNAAl!#**>q*F{nM4sVyBtPSxEgs}6QMve zL6ig?kuZQWhIb-@(!eeJ57lUt2uXn2X{~*f!08t=tEF#^%x!GnnK=#XYegqZQJ8N+n;up5%bH6f*h z1)zi`O2b(*cmUUMsff@JM74VBn@`Ry%RJ2!3(mTSnkNS#BO3j5@JI=WRuCwRJO=NH z6lciMBBf)>zDRLq93xUF33wNgZ$*kynn-bkND+0UC|RrTMv6^fcutY6nuv+3w8&pG zx``JhkZknf zG4Y)E*uc0felt1lvnsYlB_@#*oiDR0eaZ}EX^ylXqfOP01-f036eyM#6--gER$o1s z9V^0i#iYoV^BfA4E1%PaA+59{QHS{vQiCg^BT#!#-+?Tm*YO3z#R8*r<%}-0JK<{~ z>Z*~#5~*4_X$`-(F>(y=FgkqR3OqXGf5B)c44oYdh0MDKTsOp8jNS`FeeO#ZkN}N6 z_~C*FC(^m3wR)SL*ETP#!E2{}lbAv`MaXf^6k%l(-w}n|NypKQJ#%L?-a$`#$k6MwpxyAYF2;3sLb<;j? zt$SpXwV4nkQqb|>$|dWtccJZ|z+^x|frWPq!``IouGE5r6vWEUI{M zZba>7hW6q9uV2THW>NvJx3~QwE6Ura7%Q}9WCcL5ZeX&UV6Auh*WbNC@1}Q&-_T<{ z(hEPJ7HpkuMS2-m22L-(<IthJv|?g`FK&aY<2XVlGz& z%kEI3l;_(0?rlt~GqgKda>Gygf=B0I^4#}+Pfw|aPN!PTWx=hvA3I4y40 zV!YyMigQN$A=^uBTljWrAt& zolkD%+ga}<9-Of@`M1eTM)!U~kVzD4l%P<5-o05#fYg zGu8z--!50LZ#;Rt*tD}!EdFpsIXnO1oqXmQw?!>af7;vrcj^Dr){*y?ay8r zt`6={dnUc6Eg(bo&f0GP&E*(nl6ma?>z<%P>Tdn_ zqaU?=`fm_*G~mt*5qE3m@V!0p7x)Utgj+Lyv z$a*v5*~j($KYSNHaCH;@Zlu&X^{~o3|4&aWY_g7RGSbdhw6{w?666&r^;wz!XOQM5 zqYbk@Dc75oYd(vt(YK!zJMCzux!Bj1)05Vxd%wEMcGF2|!v5=PE8Ug8J`$S4F}G<^ z^ZaO|<8h00xjlN@7G&f+*_W{U$#LCNS;4Ug_Y}LJY(I#6$c!> z7R~v1rZ}4EPnetL2ku?jJxKx_$`^A#K2dd2c6bp{H`6O$+9tK-%8E)p?>t#6K5>5e zgzxzb3=IGO+lO=sZx-iU!>DXvWN2z(WTwfb@0*|E0?Z@|8ZK5w21dpPmOv6LH~AU= z1aSjP15*V95Kzcd-~uxY3=J$M_X=2Q8(3NzVaOSoSYn77n@#>G;LL4kVrt2ys_N?R G#svV0Or!+> diff --git a/docs/assets/text/addpagev2.txt b/docs/assets/text/addpagev2.txt index 5dc84e69..068dd9f4 100644 --- a/docs/assets/text/addpagev2.txt +++ b/docs/assets/text/addpagev2.txt @@ -1,2 +1,3 @@ -generate -> avg: 3.61ms, executions: [3.61ms] -add_page -> avg: 1519.00ns, executions: [1.52μs] +generate -> avg: 2.49ms, executions: [2.49ms] +add_page -> avg: 1427.00ns, executions: [1.43μs] +file_size -> 3.92Kb diff --git a/docs/assets/text/barcodegridv2.txt b/docs/assets/text/barcodegridv2.txt index cb73d60e..1fab87d5 100644 --- a/docs/assets/text/barcodegridv2.txt +++ b/docs/assets/text/barcodegridv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 2.11ms, executions: [2.11ms] -add_cols -> avg: 161.75ns, executions: [308.00ns, 141.00ns, 123.00ns, 75.00ns] +generate -> avg: 1.70ms, executions: [1.70ms] +add_cols -> avg: 193.00ns, executions: [436.00ns, 137.00ns, 125.00ns, 74.00ns] +file_size -> 5.63Kb diff --git a/docs/assets/text/billingv2.txt b/docs/assets/text/billingv2.txt index 7c65d075..3c857155 100644 --- a/docs/assets/text/billingv2.txt +++ b/docs/assets/text/billingv2.txt @@ -1,5 +1,6 @@ -generate -> avg: 17.09ms, executions: [17.09ms] -header -> avg: 251.00ns, executions: [251.00ns] -footer -> avg: 59.00ns, executions: [59.00ns] -add_row -> avg: 213.50ns, executions: [133.00ns, 294.00ns] -add_cols -> avg: 160.50ns, executions: [150.00ns, 171.00ns] +generate -> avg: 16.76ms, executions: [16.76ms] +header -> avg: 329.00ns, executions: [329.00ns] +footer -> avg: 60.00ns, executions: [60.00ns] +add_row -> avg: 209.00ns, executions: [120.00ns, 298.00ns] +add_cols -> avg: 149.50ns, executions: [134.00ns, 165.00ns] +file_size -> 218.26Kb diff --git a/docs/assets/text/cellstylev2.txt b/docs/assets/text/cellstylev2.txt index 80d044de..50f01b3f 100644 --- a/docs/assets/text/cellstylev2.txt +++ b/docs/assets/text/cellstylev2.txt @@ -1,2 +1,3 @@ -generate -> avg: 18.87ms, executions: [18.87ms] -add_row -> avg: 119.37ns, executions: [0.55μs, 0.23μs, 0.14μs, 0.07μs, 0.15μs, 0.05μs, 0.03μs, 0.03μs, 0.15μs, 0.04μs, 0.04μs, 0.04μs, 0.05μs, 0.03μs, 0.04μs, 0.03μs, 1.72μs, 0.04μs, 0.04μs, 0.04μs, 0.05μs, 0.04μs, 0.04μs, 0.04μs, 0.05μs, 0.03μs, 0.78μs, 0.14μs, 0.15μs, 0.03μs, 0.17μs, 0.05μs, 0.07μs, 0.03μs, 0.12μs, 0.04μs, 0.04μs, 0.04μs, 0.06μs, 0.04μs, 0.04μs, 0.04μs, 0.14μs, 0.04μs, 0.07μs, 0.03μs, 0.05μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.03μs, 0.54μs, 0.10μs, 0.12μs, 0.04μs, 0.17μs, 0.05μs, 0.05μs, 0.04μs] +generate -> avg: 15.59ms, executions: [15.59ms] +add_row -> avg: 118.85ns, executions: [0.36μs, 0.13μs, 0.08μs, 0.03μs, 0.08μs, 0.02μs, 0.02μs, 0.02μs, 0.07μs, 0.04μs, 0.02μs, 0.02μs, 0.02μs, 0.02μs, 0.02μs, 0.02μs, 0.99μs, 0.02μs, 0.02μs, 0.02μs, 0.03μs, 0.02μs, 0.02μs, 0.02μs, 0.03μs, 0.02μs, 0.48μs, 0.07μs, 0.07μs, 0.02μs, 0.10μs, 0.03μs, 0.03μs, 0.02μs, 0.07μs, 0.02μs, 0.02μs, 0.02μs, 0.03μs, 0.02μs, 0.02μs, 0.02μs, 0.08μs, 0.02μs, 0.02μs, 0.02μs, 0.03μs, 0.02μs, 0.02μs, 0.02μs, 0.02μs, 0.02μs, 3.37μs, 0.07μs, 0.06μs, 0.02μs, 0.08μs, 0.03μs, 0.03μs, 0.02μs] +file_size -> 18.16Kb diff --git a/docs/assets/text/compressionv2.txt b/docs/assets/text/compressionv2.txt index e694cb29..4f4eb030 100644 --- a/docs/assets/text/compressionv2.txt +++ b/docs/assets/text/compressionv2.txt @@ -1,3 +1,3 @@ -generate -> avg: 5.62ms, executions: [5.62ms] -add_row -> avg: 260.75ns, executions: [375.00ns, 292.00ns, 292.00ns, 84.00ns] -file_size -> 224Kb +generate -> avg: 4.06ms, executions: [4.06ms] +add_row -> avg: 138.75ns, executions: [258.00ns, 165.00ns, 101.00ns, 31.00ns] +file_size -> 224.23Kb diff --git a/docs/assets/text/customfontv2.txt b/docs/assets/text/customfontv2.txt index d4ca1493..85e7aae4 100644 --- a/docs/assets/text/customfontv2.txt +++ b/docs/assets/text/customfontv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 33.68ms, executions: [33.68ms] -add_cols -> avg: 105.56ns, executions: [0.78μs, 0.15μs, 0.12μs, 0.10μs, 0.11μs, 0.06μs, 0.06μs, 0.05μs, 0.13μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.08μs, 0.05μs, 0.14μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.06μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.19μs, 0.05μs, 0.05μs, 0.06μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.06μs, 0.05μs, 0.06μs, 0.04μs, 0.05μs, 0.05μs, 2.62μs, 0.10μs, 0.11μs, 0.12μs, 0.15μs, 0.06μs, 0.05μs, 0.05μs, 0.12μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.06μs, 0.05μs, 0.11μs, 0.06μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 1.23μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.12μs, 0.05μs, 0.05μs, 0.09μs, 0.05μs, 0.05μs, 0.05μs, 0.04μs, 0.05μs, 0.05μs, 0.05μs, 0.04μs, 0.04μs, 0.05μs, 0.06μs, 0.04μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.39μs, 0.09μs, 0.09μs, 0.06μs, 0.10μs] +generate -> avg: 32.24ms, executions: [32.24ms] +add_cols -> avg: 97.92ns, executions: [0.67μs, 0.18μs, 0.13μs, 0.07μs, 0.10μs, 0.07μs, 0.06μs, 0.05μs, 0.11μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.07μs, 0.05μs, 0.05μs, 0.14μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.07μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.05μs, 0.19μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.06μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 2.31μs, 0.13μs, 0.15μs, 0.09μs, 0.14μs, 0.05μs, 0.06μs, 0.05μs, 0.10μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.07μs, 0.05μs, 0.05μs, 0.10μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.69μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.14μs, 0.05μs, 0.05μs, 0.09μs, 0.06μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.07μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.05μs, 0.06μs, 0.36μs, 0.09μs, 0.10μs, 0.05μs, 0.10μs] +file_size -> 206.56Kb diff --git a/docs/assets/text/customsizev2.txt b/docs/assets/text/customsizev2.txt index 40c2afbb..e6e3b3f0 100644 --- a/docs/assets/text/customsizev2.txt +++ b/docs/assets/text/customsizev2.txt @@ -1,2 +1,3 @@ -generate -> avg: 2.19ms, executions: [2.19ms] -add_cols -> avg: 394.00ns, executions: [394.00ns] +generate -> avg: 4.35ms, executions: [4.35ms] +add_cols -> avg: 319.00ns, executions: [319.00ns] +file_size -> 205.03Kb diff --git a/docs/assets/text/datamatrixgridv2.txt b/docs/assets/text/datamatrixgridv2.txt index 11c8e937..590c113d 100644 --- a/docs/assets/text/datamatrixgridv2.txt +++ b/docs/assets/text/datamatrixgridv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 2.92ms, executions: [2.92ms] -add_cols -> avg: 306.75ns, executions: [623.00ns, 241.00ns, 222.00ns, 141.00ns] +generate -> avg: 1.14ms, executions: [1.14ms] +add_cols -> avg: 208.00ns, executions: [469.00ns, 145.00ns, 136.00ns, 82.00ns] +file_size -> 4.58Kb diff --git a/docs/assets/text/footerv2.txt b/docs/assets/text/footerv2.txt index 252a2f96..06e9758e 100644 --- a/docs/assets/text/footerv2.txt +++ b/docs/assets/text/footerv2.txt @@ -1,3 +1,4 @@ -generate -> avg: 9.91ms, executions: [9.91ms] -footer -> avg: 163.00ns, executions: [163.00ns] -add_row -> avg: 59.92ns, executions: [109.00ns, 89.00ns, 62.00ns, 26.00ns, 61.00ns, 22.00ns, 22.00ns, 16.00ns, 66.00ns, 16.00ns, 15.00ns, 14.00ns, 15.00ns, 15.00ns, 15.00ns, 16.00ns, 914.00ns, 16.00ns, 16.00ns, 16.00ns, 17.00ns, 16.00ns, 18.00ns, 17.00ns, 432.00ns, 70.00ns, 50.00ns, 15.00ns, 57.00ns, 16.00ns, 15.00ns, 15.00ns, 60.00ns, 28.00ns, 15.00ns, 15.00ns, 15.00ns, 16.00ns, 16.00ns, 14.00ns, 70.00ns, 16.00ns, 16.00ns, 16.00ns, 15.00ns, 15.00ns, 28.00ns, 18.00ns, 287.00ns, 57.00ns] +generate -> avg: 10.80ms, executions: [10.80ms] +footer -> avg: 216.00ns, executions: [216.00ns] +add_row -> avg: 58.04ns, executions: [108.00ns, 86.00ns, 67.00ns, 24.00ns, 65.00ns, 22.00ns, 16.00ns, 18.00ns, 65.00ns, 16.00ns, 14.00ns, 15.00ns, 16.00ns, 16.00ns, 16.00ns, 14.00ns, 944.00ns, 16.00ns, 15.00ns, 16.00ns, 15.00ns, 14.00ns, 16.00ns, 16.00ns, 401.00ns, 60.00ns, 51.00ns, 17.00ns, 54.00ns, 16.00ns, 16.00ns, 16.00ns, 51.00ns, 16.00ns, 15.00ns, 16.00ns, 15.00ns, 16.00ns, 16.00ns, 15.00ns, 61.00ns, 16.00ns, 16.00ns, 16.00ns, 15.00ns, 15.00ns, 15.00ns, 22.00ns, 255.00ns, 50.00ns] +file_size -> 8.76Kb diff --git a/docs/assets/text/headerv2.txt b/docs/assets/text/headerv2.txt index 00b93abc..9b649302 100644 --- a/docs/assets/text/headerv2.txt +++ b/docs/assets/text/headerv2.txt @@ -1,3 +1,4 @@ -generate -> avg: 10.13ms, executions: [10.13ms] -header -> avg: 226.00ns, executions: [226.00ns] -add_row -> avg: 59.20ns, executions: [136.00ns, 84.00ns, 28.00ns, 69.00ns, 24.00ns, 15.00ns, 26.00ns, 76.00ns, 16.00ns, 14.00ns, 14.00ns, 16.00ns, 15.00ns, 14.00ns, 14.00ns, 867.00ns, 17.00ns, 16.00ns, 17.00ns, 16.00ns, 20.00ns, 16.00ns, 17.00ns, 17.00ns, 495.00ns, 73.00ns, 17.00ns, 62.00ns, 16.00ns, 16.00ns, 15.00ns, 56.00ns, 15.00ns, 16.00ns, 16.00ns, 15.00ns, 14.00ns, 17.00ns, 15.00ns, 59.00ns, 15.00ns, 15.00ns, 15.00ns, 15.00ns, 15.00ns, 15.00ns, 15.00ns, 14.00ns, 292.00ns, 68.00ns] +generate -> avg: 13.87ms, executions: [13.87ms] +header -> avg: 830.00ns, executions: [830.00ns] +add_row -> avg: 141.86ns, executions: [0.37μs, 0.16μs, 0.06μs, 0.16μs, 0.05μs, 0.04μs, 0.05μs, 0.15μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 2.09μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 1.30μs, 0.18μs, 0.04μs, 0.15μs, 0.04μs, 0.04μs, 0.04μs, 0.13μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.16μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 0.61μs, 0.14μs] +file_size -> 8.76Kb diff --git a/docs/assets/text/imagegridv2.txt b/docs/assets/text/imagegridv2.txt index 1c198d47..0582298e 100644 --- a/docs/assets/text/imagegridv2.txt +++ b/docs/assets/text/imagegridv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 8.86ms, executions: [8.86ms] -add_cols -> avg: 198.00ns, executions: [501.00ns, 190.00ns, 185.00ns, 88.00ns, 148.00ns, 76.00ns] +generate -> avg: 5.46ms, executions: [5.46ms] +add_cols -> avg: 168.83ns, executions: [518.00ns, 129.00ns, 131.00ns, 68.00ns, 103.00ns, 64.00ns] +file_size -> 222.72Kb diff --git a/docs/assets/text/listv2.txt b/docs/assets/text/listv2.txt index e104d6f4..5c6aa55f 100644 --- a/docs/assets/text/listv2.txt +++ b/docs/assets/text/listv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 33.05ms, executions: [33.05ms] -add_row -> avg: 1607.00ns, executions: [1.61μs] +generate -> avg: 38.96ms, executions: [38.96ms] +add_row -> avg: 4202.00ns, executions: [4.20μs] +file_size -> 24.63Kb diff --git a/docs/assets/text/marginsv2.txt b/docs/assets/text/marginsv2.txt index 0f4d0a72..a6bee05f 100644 --- a/docs/assets/text/marginsv2.txt +++ b/docs/assets/text/marginsv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 194.50ms, executions: [194.50ms] -add_cols -> avg: 429.00ns, executions: [429.00ns] +generate -> avg: 187.20ms, executions: [187.20ms] +add_cols -> avg: 384.00ns, executions: [384.00ns] +file_size -> 253.31Kb diff --git a/docs/assets/text/maxgridsumv2.txt b/docs/assets/text/maxgridsumv2.txt index 5819b73a..0fb4a11f 100644 --- a/docs/assets/text/maxgridsumv2.txt +++ b/docs/assets/text/maxgridsumv2.txt @@ -1,3 +1,4 @@ -generate -> avg: 8.30ms, executions: [8.30ms] -add_row -> avg: 335.00ns, executions: [335.00ns] -add_cols -> avg: 264.00ns, executions: [337.00ns, 191.00ns] +generate -> avg: 4.81ms, executions: [4.81ms] +add_row -> avg: 458.00ns, executions: [458.00ns] +add_cols -> avg: 209.00ns, executions: [263.00ns, 155.00ns] +file_size -> 4.79Kb diff --git a/docs/assets/text/pagenumberv2.txt b/docs/assets/text/pagenumberv2.txt index 2f1da94b..1104c69e 100644 --- a/docs/assets/text/pagenumberv2.txt +++ b/docs/assets/text/pagenumberv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 7.75ms, executions: [7.75ms] -add_row -> avg: 196.60ns, executions: [0.62μs, 0.22μs, 0.14μs, 0.06μs, 0.16μs, 0.05μs, 0.04μs, 0.04μs, 0.17μs, 0.04μs, 0.04μs, 0.04μs, 0.04μs, 1.09μs, 0.18μs] +generate -> avg: 4.34ms, executions: [4.34ms] +add_row -> avg: 111.80ns, executions: [357.00ns, 177.00ns, 96.00ns, 43.00ns, 110.00ns, 32.00ns, 22.00ns, 30.00ns, 130.00ns, 23.00ns, 22.00ns, 22.00ns, 23.00ns, 506.00ns, 84.00ns] +file_size -> 3.55Kb diff --git a/docs/assets/text/parallelismv2.txt b/docs/assets/text/parallelismv2.txt index 39ed3db9..7676a93f 100644 --- a/docs/assets/text/parallelismv2.txt +++ b/docs/assets/text/parallelismv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 9.35ms, executions: [9.35ms] -add_row -> avg: 118.66ns, executions: [0.37μs, 0.16μs, 0.10μs, 0.05μs, 0.12μs, 0.04μs, 0.03μs, 0.04μs, 0.12μs, 0.03μs, 0.02μs, 0.02μs, 0.03μs, 0.03μs, 0.02μs, 0.02μs, 1.94μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs, 0.02μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs, 0.70μs, 0.12μs, 0.09μs, 0.03μs, 0.10μs, 0.03μs, 0.03μs, 0.03μs, 0.10μs, 0.03μs, 0.90μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs, 0.11μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs, 0.03μs] +generate -> avg: 8.51ms, executions: [8.51ms] +add_row -> avg: 67.46ns, executions: [245.00ns, 131.00ns, 86.00ns, 28.00ns, 83.00ns, 28.00ns, 22.00ns, 22.00ns, 100.00ns, 21.00ns, 19.00ns, 19.00ns, 20.00ns, 19.00ns, 20.00ns, 19.00ns, 999.00ns, 21.00ns, 18.00ns, 18.00ns, 19.00ns, 21.00ns, 20.00ns, 22.00ns, 29.00ns, 20.00ns, 498.00ns, 92.00ns, 91.00ns, 18.00ns, 75.00ns, 20.00ns, 21.00ns, 20.00ns, 66.00ns, 36.00ns, 20.00ns, 20.00ns, 25.00ns, 28.00ns, 20.00ns, 19.00ns, 74.00ns, 20.00ns, 20.00ns, 19.00ns, 19.00ns, 20.00ns, 26.00ns, 37.00ns] +file_size -> 2.36Kb diff --git a/docs/assets/text/protectionv2.txt b/docs/assets/text/protectionv2.txt index 0ca4bf45..40a5c01f 100644 --- a/docs/assets/text/protectionv2.txt +++ b/docs/assets/text/protectionv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 480.25μs, executions: [480.25μs] -add_row -> avg: 250.00ns, executions: [250.00ns] +generate -> avg: 218.17μs, executions: [218.17μs] +add_row -> avg: 217.00ns, executions: [217.00ns] +file_size -> 1.30Kb diff --git a/docs/assets/text/qrgridv2.txt b/docs/assets/text/qrgridv2.txt index ba592846..a116e799 100644 --- a/docs/assets/text/qrgridv2.txt +++ b/docs/assets/text/qrgridv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 23.17ms, executions: [23.17ms] -add_cols -> avg: 161.75ns, executions: [357.00ns, 123.00ns, 100.00ns, 67.00ns] +generate -> avg: 48.63ms, executions: [48.63ms] +add_cols -> avg: 166.25ns, executions: [366.00ns, 138.00ns, 97.00ns, 64.00ns] +file_size -> 5.21Kb diff --git a/docs/assets/text/signaturegridv2.txt b/docs/assets/text/signaturegridv2.txt index d109065b..10babd9e 100644 --- a/docs/assets/text/signaturegridv2.txt +++ b/docs/assets/text/signaturegridv2.txt @@ -1,2 +1,3 @@ -generate -> avg: 2.00ms, executions: [2.00ms] -add_cols -> avg: 475.00ns, executions: [715.00ns, 235.00ns] +generate -> avg: 1.21ms, executions: [1.21ms] +add_cols -> avg: 250.50ns, executions: [371.00ns, 130.00ns] +file_size -> 2.76Kb diff --git a/docs/assets/text/textgridv2.txt b/docs/assets/text/textgridv2.txt index 771de991..d1613250 100644 --- a/docs/assets/text/textgridv2.txt +++ b/docs/assets/text/textgridv2.txt @@ -1,3 +1,4 @@ -generate -> avg: 2.86ms, executions: [2.86ms] -add_row -> avg: 54.75ns, executions: [139.00ns, 33.00ns, 23.00ns, 24.00ns] -add_cols -> avg: 182.25ns, executions: [402.00ns, 142.00ns, 112.00ns, 73.00ns] +generate -> avg: 3.72ms, executions: [3.72ms] +add_row -> avg: 70.00ns, executions: [151.00ns, 54.00ns, 37.00ns, 38.00ns] +add_cols -> avg: 256.50ns, executions: [529.00ns, 202.00ns, 165.00ns, 130.00ns] +file_size -> 4.42Kb diff --git a/pkg/metrics/metrics.go b/pkg/metrics/metrics.go index 66021adf..eb1e429e 100644 --- a/pkg/metrics/metrics.go +++ b/pkg/metrics/metrics.go @@ -26,13 +26,13 @@ type Time struct { func (t *Time) Normalize() bool { if t.Scale == Nano { t.Scale = Micro - t.Value /= 1000 + t.Value /= 1000.0 return true } if t.Scale == Micro { t.Scale = Milli - t.Value /= 1000 + t.Value /= 1000.0 return true } @@ -44,26 +44,26 @@ func (t *Time) String() string { } type Size struct { - Value int + Value float64 Scale SizeScale } func (t *Size) Normalize() bool { if t.Scale == Byte { t.Scale = KiloByte - t.Value /= 1000 + t.Value /= 1000.0 return true } if t.Scale == KiloByte { t.Scale = MegaByte - t.Value /= 1000 + t.Value /= 1000.0 return true } if t.Scale == MegaByte { t.Scale = GigaByte - t.Value /= 1000 + t.Value /= 1000.0 return true } @@ -71,7 +71,7 @@ func (t *Size) Normalize() bool { } func (t *Size) String() string { - return fmt.Sprintf("%d%s", t.Value, t.Scale) + return fmt.Sprintf("%.2f%s", t.Value, t.Scale) } type TimeMetric struct { @@ -98,7 +98,7 @@ func (m *TimeMetric) Normalize() { func (m *TimeMetric) hasGreaterThan1000(times []*Time) bool { for _, time := range times { - if time.Value > 1000 { + if time.Value > 1000.0 { return true } } @@ -125,7 +125,7 @@ type SizeMetric struct { } func (m *SizeMetric) Normalize() { - if m.Size.Value < 1000 { + if m.Size.Value < 1000.0 { return } diff --git a/pkg/metricsdecorator.go b/pkg/metricsdecorator.go index d60f837d..eeb03982 100644 --- a/pkg/metricsdecorator.go +++ b/pkg/metricsdecorator.go @@ -172,7 +172,7 @@ func (m *metricsDecorator) buildMetrics(bytesSize int) *metrics.Report { SizeMetric: metrics.SizeMetric{ Key: "file_size", Size: metrics.Size{ - Value: bytesSize, + Value: float64(bytesSize), Scale: metrics.Byte, }, }, From 49cd2f870c1ea0cc28c08982fb316c87332ae685 Mon Sep 17 00:00:00 2001 From: John Fercher Date: Fri, 22 Sep 2023 20:55:11 -0300 Subject: [PATCH 7/8] Update examples --- README.md | 2 +- docs/README.md | 4 ++-- docs/_sidebar.md | 1 + docs/v2/features/compression.md | 11 +++++++++++ 4 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 docs/v2/features/compression.md diff --git a/README.md b/README.md index 03960a6c..28f9d2c6 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ always when a new page appear, in this case, a header may have many rows, lines * With `go get`: ```bash -go get github.com/johnfercher/maroto/v2/pkg@v2.0.0-alpha.15 +go get github.com/johnfercher/maroto/v2/pkg@v2.0.0-alpha.16 ``` diff --git a/docs/README.md b/docs/README.md index 068e8ead..da429aab 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,12 +2,12 @@ [![Mentioned in Awesome Go](https://awesome.re/mentioned-badge.svg)](https://github.com/avelino/awesome-go#template-engines) [![Roadmap](https://img.shields.io/badge/V2-Roadmap-purple)](https://github.com/users/johnfercher/projects/1) [![Discussion](https://img.shields.io/badge/V2-Discussion-blue)](https://github.com/johnfercher/maroto/issues/257) [![Release Notes](https://img.shields.io/badge/Release-Notes-cyan)](https://github.com/johnfercher/maroto/releases) [![Visits Badge](https://badges.pufler.dev/visits/johnfercher/maroto)](https://badges.pufler.dev) -#### Maroto`v2.0.0-alpha.15`is here! Try out: +#### Maroto`v2.0.0-alpha.16`is here! Try out: * Installation with`go get`: ```bash -go get github.com/johnfercher/maroto/v2/pkg@v2.0.0-alpha.15 +go get github.com/johnfercher/maroto/v2/pkg@v2.0.0-alpha.16 ``` The public API was completely redesigned with the aim of enhancing the diff --git a/docs/_sidebar.md b/docs/_sidebar.md index 740f7c2a..3982dc9f 100644 --- a/docs/_sidebar.md +++ b/docs/_sidebar.md @@ -6,6 +6,7 @@ * [Add Page](v2/features/addpage.md?id=addpage) * [Barcode](v2/features/barcode.md?id=barcode) * [Cell Style](v2/features/cellstyle.md?id=cell-style) + * [Compression](v2/features/compression.md?id=compression) * [Custom Font](v2/features/customfont.md?id=custom-font) * [Custom Size](v2/features/customsize.md?id=custom-size) * [Data Matrix](v2/features/datamatrix.md?id=data-matrix) diff --git a/docs/v2/features/compression.md b/docs/v2/features/compression.md new file mode 100644 index 00000000..f206bfcc --- /dev/null +++ b/docs/v2/features/compression.md @@ -0,0 +1,11 @@ +# Compression + +## Code Example +[filename](../../assets/examples/compression/v2/main.go ':include :type=code') + +## PDF Generated +```pdf + assets/pdf/compressionv2.pdf +``` +## Time Execution +[filename](../../assets/text/compressionv2.txt ':include :type=code') \ No newline at end of file From 938130a3630d030c7545d79642c5a4e79cfb9271 Mon Sep 17 00:00:00 2001 From: John Fercher Date: Fri, 22 Sep 2023 20:57:00 -0300 Subject: [PATCH 8/8] Update examples --- docs/assets/examples/list/v2/main.go | 3 ++- docs/assets/examples/protection/v2/main.go | 3 ++- pkg/config/builder.go | 3 ++- pkg/metrics/metrics.go | 18 ++++++++++-------- pkg/providers/html/html.go | 6 ++---- 5 files changed, 18 insertions(+), 15 deletions(-) diff --git a/docs/assets/examples/list/v2/main.go b/docs/assets/examples/list/v2/main.go index 37f9ccc0..8bf838ba 100644 --- a/docs/assets/examples/list/v2/main.go +++ b/docs/assets/examples/list/v2/main.go @@ -2,12 +2,13 @@ package main import ( "fmt" + "log" + "github.com/johnfercher/maroto/v2/pkg/components/list" "github.com/johnfercher/maroto/v2/pkg/components/row" "github.com/johnfercher/maroto/v2/pkg/consts/fontstyle" "github.com/johnfercher/maroto/v2/pkg/core" "github.com/johnfercher/maroto/v2/pkg/props" - "log" "github.com/johnfercher/maroto/v2/pkg" "github.com/johnfercher/maroto/v2/pkg/components/text" diff --git a/docs/assets/examples/protection/v2/main.go b/docs/assets/examples/protection/v2/main.go index f1e1e49d..2ef033e9 100644 --- a/docs/assets/examples/protection/v2/main.go +++ b/docs/assets/examples/protection/v2/main.go @@ -1,9 +1,10 @@ package main import ( + "log" + "github.com/johnfercher/maroto/v2/pkg/components/text" "github.com/johnfercher/maroto/v2/pkg/consts/protection" - "log" "github.com/johnfercher/maroto/v2/pkg" "github.com/johnfercher/maroto/v2/pkg/config" diff --git a/pkg/config/builder.go b/pkg/config/builder.go index 791801e6..484267b7 100644 --- a/pkg/config/builder.go +++ b/pkg/config/builder.go @@ -1,9 +1,10 @@ package config import ( - "github.com/johnfercher/maroto/v2/pkg/consts/protection" "strings" + "github.com/johnfercher/maroto/v2/pkg/consts/protection" + "github.com/johnfercher/maroto/v2/pkg/consts/fontfamily" "github.com/johnfercher/maroto/v2/pkg/consts/fontstyle" "github.com/johnfercher/maroto/v2/pkg/consts/pagesize" diff --git a/pkg/metrics/metrics.go b/pkg/metrics/metrics.go index eb1e429e..ca3f69fa 100644 --- a/pkg/metrics/metrics.go +++ b/pkg/metrics/metrics.go @@ -5,8 +5,10 @@ import ( "os" ) -type TimeScale string -type SizeScale string +type ( + TimeScale string + SizeScale string +) const ( Nano TimeScale = "ns" @@ -124,17 +126,17 @@ type SizeMetric struct { Size Size } -func (m *SizeMetric) Normalize() { - if m.Size.Value < 1000.0 { +func (s *SizeMetric) Normalize() { + if s.Size.Value < 1000.0 { return } - m.Size.Normalize() - m.Normalize() + s.Size.Normalize() + s.Normalize() } -func (r *SizeMetric) String() string { - return r.Key + " -> " + r.Size.String() +func (s *SizeMetric) String() string { + return s.Key + " -> " + s.Size.String() } type Report struct { diff --git a/pkg/providers/html/html.go b/pkg/providers/html/html.go index 5d90b3ba..8c81be71 100644 --- a/pkg/providers/html/html.go +++ b/pkg/providers/html/html.go @@ -119,8 +119,7 @@ func (h *html) SetCache(cache cache.Cache) { h.imageCache = cache } -func (g *html) SetProtection(_ *config.Protection) { - +func (h *html) SetProtection(_ *config.Protection) { } func (h *html) CreateCol(width, height float64, config *config.Config, prop *props.Cell) { @@ -250,8 +249,7 @@ func (h *html) GenerateFile(file string) error { return nil } -func (g *html) SetCompression(_ bool) { - +func (h *html) SetCompression(_ bool) { } func (h *html) GenerateBytes() ([]byte, error) {