func (p *PDF) SetColor(nameOrHTMLColor string) *PDF {
	color, err := p.init().ToColor(nameOrHTMLColor)
	if err, isT := err.(pdfError); isT {
		p.putError(0xE5B3A5, err.msg, nameOrHTMLColor)
	}
	p.color = color
	return p
}
SetColor sets the current color using a web/X11 color name
(e.g. "HONEY DEW") or HTML color value such as "#191970"
for midnight blue (#RRGGBB). The current color is used
for subsequent text and line drawing and fills.
If the name is unknown or invalid, sets color to black.
package pdf
import (
	"bytes"
	"compress/zlib"
	"crypto/sha512"
	"fmt"
	"image"
	"image/color"
	_ "image/gif"
	_ "image/jpeg"
	_ "image/png"  
	"io"
	"os"
	"reflect"
	"runtime"
	"strconv"
	"strings"
	"unicode"  
)
type PDF struct {
	paperSize    pdfPaperSize  
	pageNo       int           
	page         *pdfPage      
	pages        []pdfPage     
	fonts        []pdfFont     
	images       []pdfImage    
	columnWidths []float64     
	columnNo     int           
	units        string        
	ptPerUnit    float64       
	color        color.RGBA    
	lineWidth    float64       
	font         *pdfFont      
	fontName     string        
	fontSizePt   float64       
	horzScaling  uint16        
	compression  bool          
	content      bytes.Buffer  
	writer       io.Writer     
	objOffsets   []int         
	objIndex     int           
	errors       []error       
	isInit       bool          
	docAuthor, docCreator, docKeywords, docSubject, docTitle string
}  
func NewPDF(paperSize string) PDF {
	var p PDF
	size, err := p.init().getPaperSize(paperSize)
	if err, isT := err.(pdfError); isT {
		p.putError(0xE52F92, err.msg, paperSize)
		p.paperSize, _ = p.getPaperSize("A4")
	}
	p.paperSize = size
	return p
}  
var pdfNewFontHandler func() pdfFontHandler
type pdfFontHandler interface {
	readFont(owner *PDF, font interface{}) bool
	textWidthPt(s string) float64
	writeText(s string)
	writeFontObjects(font *pdfFont)
}  
func (p *PDF) PageCount() int { p.reservePage(); return len(p.pages) }
func (p *PDF) PageHeight() float64 { return p.ToUnits(p.paperSize.heightPt) }
func (p *PDF) PageWidth() float64 { return p.ToUnits(p.paperSize.widthPt) }
func (p *PDF) Color() color.RGBA { p.init(); return p.color }