From 82d91844d1ecb3bcde2c088f6738c29979c0f0f9 Mon Sep 17 00:00:00 2001 From: Gunnsteinn Hall Date: Wed, 12 Apr 2017 22:26:12 +0000 Subject: [PATCH] annotation fixes for circle, rectangle (fill, stroke) --- pdf/annotator/circle.go | 8 +++++++- pdf/annotator/rectangle.go | 9 ++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/pdf/annotator/circle.go b/pdf/annotator/circle.go index 3b893d80..53863311 100644 --- a/pdf/annotator/circle.go +++ b/pdf/annotator/circle.go @@ -102,7 +102,13 @@ func drawPdfCircle(circDef CircleAnnotationDef, gsName string) ([]byte, *pdf.Pdf drawBezierPathWithCreator(bpath, creator) - creator.Add_B() // fill and stroke. + if circDef.FillEnabled && circDef.BorderEnabled { + creator.Add_B() // fill and stroke. + } else if circDef.FillEnabled { + creator.Add_f() // Fill. + } else if circDef.BorderEnabled { + creator.Add_S() // Stroke. + } creator.Add_Q() // Offsets (needed for placement of annotations bbox). diff --git a/pdf/annotator/rectangle.go b/pdf/annotator/rectangle.go index e23e4224..e7aee4f2 100644 --- a/pdf/annotator/rectangle.go +++ b/pdf/annotator/rectangle.go @@ -76,7 +76,14 @@ func drawPdfRectangle(rectDef RectangleAnnotationDef, gsName string) ([]byte, *p creator.Add_gs(pdfcore.PdfObjectName(gsName)) } drawPathWithCreator(path, creator) - creator.Add_B() // fill and stroke. + + if rectDef.FillEnabled && rectDef.BorderEnabled { + creator.Add_B() // fill and stroke. + } else if rectDef.FillEnabled { + creator.Add_f() // Fill. + } else if rectDef.BorderEnabled { + creator.Add_S() // Stroke. + } creator.Add_Q() // Offsets (needed for placement of annotations bbox).