From e914c59514da0d291277444b0de1b572fb9544d9 Mon Sep 17 00:00:00 2001 From: estenssoros Date: Thu, 18 Jul 2019 15:25:55 -0600 Subject: added imageoptionsreader --- fpdf_test.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'fpdf_test.go') diff --git a/fpdf_test.go b/fpdf_test.go index 7ee0831..5ef88aa 100644 --- a/fpdf_test.go +++ b/fpdf_test.go @@ -858,6 +858,29 @@ func ExampleFpdf_ImageOptions() { // Successfully generated pdf/Fpdf_ImageOptions.pdf } +// ImageOption struct can be used to affect horizontal image placement. +func ExampleFpdf_ImageOptionsReader() { + var opt gofpdf.ImageOptions + + pdf := gofpdf.New("P", "mm", "A4", "") + pdf.AddPage() + pdf.SetFont("Arial", "", 11) + pdf.SetX(60) + opt.ImageType = "png" + bytes, err := ioutil.ReadAll(example.ImageFile("logo.png")) + if err!=nil{ + t.Fatal(err) + } + pdf.ImageOptionsReader(example.ImageFile("logo.png"), bytes.NewReader(bytes),-10, 10, 30, 0, false, opt, 0, "") + opt.AllowNegativePosition = true + pdf.ImageOptionsReader(example.ImageFile("logo.png"),bytes.NewReader(bytes), -10, 50, 30, 0, false, opt, 0, "") + fileStr := example.Filename("Fpdf_ImageOptionsReader") + err := pdf.OutputFileAndClose(fileStr) + example.Summary(err, fileStr) + // Output: + // Successfully generated pdf/Fpdf_ImageOptionsReader.pdf +} + // This examples demonstrates Landscape mode with images. func ExampleFpdf_SetAcceptPageBreakFunc() { var y0 float64 -- cgit v1.2.1-24-ge1ad From 19ac748275dda1bd9cb6a618c380a18482a2da71 Mon Sep 17 00:00:00 2001 From: Kurt Date: Sat, 20 Jul 2019 10:10:49 -0400 Subject: Use file as reader for ImageOptionsReader --- fpdf_test.go | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) (limited to 'fpdf_test.go') diff --git a/fpdf_test.go b/fpdf_test.go index 5ef88aa..54de6c2 100644 --- a/fpdf_test.go +++ b/fpdf_test.go @@ -861,22 +861,29 @@ func ExampleFpdf_ImageOptions() { // ImageOption struct can be used to affect horizontal image placement. func ExampleFpdf_ImageOptionsReader() { var opt gofpdf.ImageOptions + var pdfStr, imgStr string + var fl *os.File + var err error + pdfStr = example.Filename("Fpdf_ImageOptionsReader") pdf := gofpdf.New("P", "mm", "A4", "") pdf.AddPage() pdf.SetFont("Arial", "", 11) pdf.SetX(60) opt.ImageType = "png" - bytes, err := ioutil.ReadAll(example.ImageFile("logo.png")) - if err!=nil{ - t.Fatal(err) + imgStr = example.ImageFile("logo.png") + fl, err = os.Open(imgStr) + if err == nil { + pdf.ImageOptionsReader(imgStr, fl, -10, 10, 30, 0, false, opt, 0, "") + opt.AllowNegativePosition = true + _, err = fl.Seek(0, 0) + if err == nil { + pdf.ImageOptionsReader(imgStr, fl, -10, 50, 30, 0, false, opt, 0, "") + err = pdf.OutputFileAndClose(pdfStr) + } + fl.Close() } - pdf.ImageOptionsReader(example.ImageFile("logo.png"), bytes.NewReader(bytes),-10, 10, 30, 0, false, opt, 0, "") - opt.AllowNegativePosition = true - pdf.ImageOptionsReader(example.ImageFile("logo.png"),bytes.NewReader(bytes), -10, 50, 30, 0, false, opt, 0, "") - fileStr := example.Filename("Fpdf_ImageOptionsReader") - err := pdf.OutputFileAndClose(fileStr) - example.Summary(err, fileStr) + example.Summary(err, pdfStr) // Output: // Successfully generated pdf/Fpdf_ImageOptionsReader.pdf } -- cgit v1.2.1-24-ge1ad From d17d13df9df41d4505501e831ff0ada5b2222ff8 Mon Sep 17 00:00:00 2001 From: Kurt Date: Sat, 20 Jul 2019 12:23:47 -0400 Subject: Remove ImageOptionsReader and rework example to demonstrate RegisterImageOptionsReader() --- fpdf_test.go | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) (limited to 'fpdf_test.go') diff --git a/fpdf_test.go b/fpdf_test.go index 54de6c2..63c28c5 100644 --- a/fpdf_test.go +++ b/fpdf_test.go @@ -858,37 +858,37 @@ func ExampleFpdf_ImageOptions() { // Successfully generated pdf/Fpdf_ImageOptions.pdf } -// ImageOption struct can be used to affect horizontal image placement. -func ExampleFpdf_ImageOptionsReader() { - var opt gofpdf.ImageOptions - var pdfStr, imgStr string - var fl *os.File - var err error +// ExampleFpdf_RegisterImageOptionsReader demonstrates how to load an image +// from a io.Reader (in this case, a file) and register it with options. +func ExampleFpdf_RegisterImageOptionsReader() { + var ( + opt gofpdf.ImageOptions + pdfStr string + fl *os.File + err error + ) - pdfStr = example.Filename("Fpdf_ImageOptionsReader") + pdfStr = example.Filename("Fpdf_RegisterImageOptionsReader") pdf := gofpdf.New("P", "mm", "A4", "") pdf.AddPage() pdf.SetFont("Arial", "", 11) - pdf.SetX(60) - opt.ImageType = "png" - imgStr = example.ImageFile("logo.png") - fl, err = os.Open(imgStr) + fl, err = os.Open(example.ImageFile("logo.png")) if err == nil { - pdf.ImageOptionsReader(imgStr, fl, -10, 10, 30, 0, false, opt, 0, "") + opt.ImageType = "png" opt.AllowNegativePosition = true - _, err = fl.Seek(0, 0) - if err == nil { - pdf.ImageOptionsReader(imgStr, fl, -10, 50, 30, 0, false, opt, 0, "") - err = pdf.OutputFileAndClose(pdfStr) - } + _ = pdf.RegisterImageOptionsReader("logo", opt, fl) fl.Close() + for x := -20.0; x <= 40.0; x += 5 { + pdf.ImageOptions("logo", x, x+30, 0, 0, false, opt, 0, "") + } + err = pdf.OutputFileAndClose(pdfStr) } example.Summary(err, pdfStr) // Output: - // Successfully generated pdf/Fpdf_ImageOptionsReader.pdf + // Successfully generated pdf/Fpdf_RegisterImageOptionsReader.pdf } -// This examples demonstrates Landscape mode with images. +// This example demonstrates Landscape mode with images. func ExampleFpdf_SetAcceptPageBreakFunc() { var y0 float64 var crrntCol int @@ -948,7 +948,7 @@ func ExampleFpdf_SetAcceptPageBreakFunc() { // Successfully generated pdf/Fpdf_SetAcceptPageBreakFunc_landscape.pdf } -// This examples tests corner cases as reported by the gocov tool. +// This example tests corner cases as reported by the gocov tool. func ExampleFpdf_SetKeywords() { var err error fileStr := example.Filename("Fpdf_SetKeywords") -- cgit v1.2.1-24-ge1ad