github.com/signintech/pdft@v0.5.0/minigopdf/gopdf_test.go (about)

     1  package gopdf
     2  
     3  import (
     4  	"io/ioutil"
     5  	"log"
     6  	"os"
     7  	"testing"
     8  )
     9  
    10  func BenchmarkPdfWithImageHolder(b *testing.B) {
    11  
    12  	err := initTesting()
    13  	if err != nil {
    14  		b.Error(err)
    15  		return
    16  	}
    17  
    18  	pdf := GoPdf{}
    19  	pdf.Start(Config{PageSize: Rect{W: 595.28, H: 841.89}}) //595.28, 841.89 = A4
    20  	pdf.AddPage()
    21  	err = pdf.AddTTFFont("loma", "./test/res/times.ttf")
    22  	if err != nil {
    23  		b.Error(err)
    24  		return
    25  	}
    26  
    27  	err = pdf.SetFont("loma", "", 14)
    28  	if err != nil {
    29  		log.Print(err.Error())
    30  		return
    31  	}
    32  
    33  	bytesOfImg, err := ioutil.ReadFile("./test/res/chilli.jpg")
    34  	if err != nil {
    35  		b.Error(err)
    36  		return
    37  	}
    38  
    39  	imgH, err := ImageHolderByBytes(bytesOfImg)
    40  	if err != nil {
    41  		b.Error(err)
    42  		return
    43  	}
    44  	for i := 0; i < b.N; i++ {
    45  		pdf.ImageByHolder(imgH, 20.0, float64(i)*2.0, nil)
    46  	}
    47  
    48  	pdf.SetX(250)
    49  	pdf.SetY(200)
    50  	pdf.Cell(nil, "gopher and gopher")
    51  
    52  	pdf.WritePdf("./test/out/image_bench.pdf")
    53  }
    54  
    55  func initTesting() error {
    56  	err := os.MkdirAll("./test/out", 0777)
    57  	if err != nil {
    58  		return err
    59  	}
    60  	return nil
    61  }
    62  
    63  func _TestPdfWithImageHolder(t *testing.T) {
    64  	err := initTesting()
    65  	if err != nil {
    66  		t.Error(err)
    67  		return
    68  	}
    69  
    70  	pdf := GoPdf{}
    71  	pdf.Start(Config{PageSize: Rect{W: 595.28, H: 841.89}}) //595.28, 841.89 = A4
    72  	pdf.AddPage()
    73  	err = pdf.AddTTFFont("loma", "./test/res/times.ttf")
    74  	if err != nil {
    75  		t.Error(err)
    76  		return
    77  	}
    78  
    79  	err = pdf.SetFont("loma", "", 14)
    80  	if err != nil {
    81  		log.Print(err.Error())
    82  		return
    83  	}
    84  
    85  	bytesOfImg, err := ioutil.ReadFile("./test/res/gopher02.png")
    86  	if err != nil {
    87  		t.Error(err)
    88  		return
    89  	}
    90  
    91  	imgH, err := ImageHolderByBytes(bytesOfImg)
    92  	if err != nil {
    93  		t.Error(err)
    94  		return
    95  	}
    96  
    97  	err = pdf.ImageByHolder(imgH, 20.0, 20, nil)
    98  	if err != nil {
    99  		t.Error(err)
   100  		return
   101  	}
   102  
   103  	err = pdf.ImageByHolder(imgH, 20.0, 200, nil)
   104  	if err != nil {
   105  		t.Error(err)
   106  		return
   107  	}
   108  
   109  	pdf.SetX(250)
   110  	pdf.SetY(200)
   111  	pdf.Cell(nil, "gopher and gopher")
   112  
   113  	pdf.WritePdf("./test/out/image_test.pdf")
   114  }
   115  
   116  /*
   117  func TestBuffer(t *testing.T) {
   118  	b := bytes.NewReader([]byte("ssssssss"))
   119  
   120  	b1, err := ioutil.ReadAll(b)
   121  	if err != nil {
   122  		t.Error(err)
   123  		return
   124  	}
   125  	fmt.Printf("->%s\n", string(b1))
   126  	b.Seek(0, 0)
   127  	b2, err := ioutil.ReadAll(b)
   128  	if err != nil {
   129  		t.Error(err)
   130  		return
   131  	}
   132  
   133  	fmt.Printf("+>%s\n", string(b2))
   134  }*/