summaryrefslogtreecommitdiff
path: root/fpdf.go
diff options
context:
space:
mode:
authorKurt Jung <kurt.w.jung@gmail.com>2015-10-10 06:23:36 -0400
committerKurt Jung <kurt.w.jung@gmail.com>2015-10-10 06:23:36 -0400
commitcae789a4e309eb39bd6145f93361a3745effbb2d (patch)
treefd7a9790cc398b0511d633a3950b5988606f19c3 /fpdf.go
parentb0f3b60a71b8ca327da859e5f4a7cd8eb5bea4e7 (diff)
Add method to fix document creation date
Diffstat (limited to 'fpdf.go')
-rw-r--r--fpdf.go16
1 files changed, 15 insertions, 1 deletions
diff --git a/fpdf.go b/fpdf.go
index f1c6b58..efe5274 100644
--- a/fpdf.go
+++ b/fpdf.go
@@ -2986,6 +2986,14 @@ func (f *Fpdf) outf(fmtStr string, args ...interface{}) {
f.out(sprintf(fmtStr, args...))
}
+// SetCreationDate fixes the document's internal CreationDate value. By
+// default, the time when the document is generated is used for this value.
+// This method is typically only used for testing purposes. Specify a
+// zero-value time to revert to the default behavior
+func (f *Fpdf) SetCreationDate(tm time.Time) {
+ f.creationDate = tm
+}
+
func (f *Fpdf) putpages() {
var wPt, hPt float64
var pageSize SizeType
@@ -3400,6 +3408,7 @@ func (f *Fpdf) putresources() {
}
func (f *Fpdf) putinfo() {
+ var tm time.Time
f.outf("/Producer %s", f.textstring("FPDF "+cnFpdfVersion))
if len(f.title) > 0 {
f.outf("/Title %s", f.textstring(f.title))
@@ -3416,7 +3425,12 @@ func (f *Fpdf) putinfo() {
if len(f.creator) > 0 {
f.outf("/Creator %s", f.textstring(f.creator))
}
- f.outf("/CreationDate %s", f.textstring("D:"+time.Now().Format("20060102150405")))
+ if f.creationDate.IsZero() {
+ tm = time.Now()
+ } else {
+ tm = f.creationDate
+ }
+ f.outf("/CreationDate %s", f.textstring("D:"+tm.Format("20060102150405")))
}
func (f *Fpdf) putcatalog() {