func main() { f, err := os.Create(name) if err != nil { panic(err) } doc := pdf.NewDocWriter() afmfc, err := pdf.NewAfmFontCollection("../../afm/data/fonts/*.afm") if err != nil { panic(err) } doc.AddFontSource(afmfc) doc.SetUnits("in") doc.SetLineSpacing(1.5) doc.MoveTo(1, 1) for _, info := range afmfc.FontInfos { if doc.Y() > 10 { doc.NewPage() doc.MoveTo(1, 1) } _, err = doc.SetFont(info.PostScriptName(), 12, pdf.Options{}) if err != nil { panic(err) } fmt.Fprintln(doc, info.FullName()) } doc.WriteTo(f) f.Close() exec.Command("open", name).Start() }
func main() { f, err := os.Create(name) if err != nil { panic(err) } doc := pdf.NewDocWriter() ttfc, err := pdf.NewTtfFontCollection("/Library/Fonts/*.ttf") if err != nil { panic(err) } doc.AddFontSource(ttfc) doc.SetUnits("in") doc.NewPage() doc.MoveTo(1, 1) doc.SetFont("Courier New", 12, pdf.Options{}) doc.SetUnderline(true) doc.Print("Rich Text\n\n") doc.SetUnderline(false) doc.SetLineSpacing(1.2) lines := []*pdf.RichText{ makeRtLine(doc, line1), makeRtLine(doc, line2), makeRtLine(doc, line3), makeRtLine(doc, line4), makeRtLine(doc, line5), makeRtLine(doc, line6), } doc.PrintParagraph(lines) doc.WriteTo(f) f.Close() exec.Command("open", name).Start() }
func main() { f, err := os.Create(name) if err != nil { panic(err) } doc := pdf.NewDocWriter() ttfc, err := pdf.NewTtfFontCollection("/Library/Fonts/*.ttf") if err != nil { panic(err) } doc.AddFontSource(ttfc) doc.SetUnits("in") doc.SetLineSpacing(1.5) doc.MoveTo(1, 1) for _, info := range ttfc.FontInfos { if doc.Y() > 10 { doc.NewPage() doc.MoveTo(1, 1) } _, err = doc.SetFont(info.Family(), 12, pdf.Options{"style": info.Style()}) if err != nil { panic(err) } fmt.Fprintln(doc, info.FullName()) } doc.WriteTo(f) f.Close() exec.Command("open", name).Start() }
func main() { f, err := os.Create(name) if err != nil { panic(err) } doc := pdf.NewDocWriter() doc.NewPage() doc.SetLineColor(pdf.Blue) doc.SetLineWidth(3, "pt") doc.SetLineDashPattern("dashed") doc.SetUnits("in") doc.MoveTo(1, 1) doc.LineTo(2, 2) doc.WriteTo(f) f.Close() exec.Command("open", name).Start() }
func main() { f, err := os.Create(name) if err != nil { panic(err) } doc := pdf.NewDocWriter() afmfc, err := pdf.NewAfmFontCollection("../../afm/data/fonts/*.afm") if err != nil { panic(err) } doc.AddFontSource(afmfc) ttfc, err := pdf.NewTtfFontCollection("/Library/Fonts/*.ttf") if err != nil { panic(err) } doc.AddFontSource(ttfc) doc.NewPage() doc.SetUnits("in") _, err = doc.SetFont("Helvetica", 12, pdf.Options{}) if err != nil { panic(err) } doc.MoveTo(1, 1) doc.Print("Hello, World!") _, err = doc.SetFont("Arial", 14, pdf.Options{}) if err != nil { panic(err) } doc.MoveTo(2, 2) doc.Print("Goodbye, cruel world...") doc.WriteTo(f) f.Close() exec.Command("open", name).Start() }
func main() { doc := pdf.NewDocWriter() afmfc, err := pdf.NewAfmFontCollection("../../afm/data/fonts/*.afm") if err != nil { panic(err) } doc.AddFontSource(afmfc) doc.SetUnits("in") doc.NewPage() doc.MoveTo(1, 1) _, err = doc.SetFont("Helvetica", 12, pdf.Options{}) if err != nil { panic(err) } doc.SetUnderline(true) doc.Print("I18N Text\n\n") doc.SetUnderline(false) doc.SetLineSpacing(1.2) for _, k := range i18nKeys { // fmt.Println(i18nText[k]) if doc.Y() > 10 { doc.NewPage() doc.MoveTo(1, 1) } fmt.Fprintf(doc, "%s:\n", k) doc.PrintWithOptions(i18nText[k], pdf.Options{"width": 6.5}) fmt.Fprintln(doc) } f, err := os.Create(name) if err != nil { panic(err) } doc.WriteTo(f) f.Close() exec.Command("open", name).Start() }