Creating PDF documents including links, bookmarks

advertisement
Creating PDF documents including
hyper-links, bookmarks and a table of

contents with the SAS software.
Lex Jansen
NV Organon
Oss, The Netherlands
abcd
Contents
•
•
•
•
•
•
•
•
•
Data flow
Why PDF ?
Types of appendices
From SAS to Postscript to PDF
SAS output conventions
Postscript
PDF mark operator
%_SAS2PS
Demo
abcd
The Data Flow
Investigator
Data Entry
(ClinTrial)
Electronic
Submission
SAS Clinical
Data Warehouse
Document Management
System (Documentum)
abcd
The Data Flow
SAS
SAS Clinical
Data Warehouse
PDF
Electronic
Submission
Document Management
System (Documentum)
abcd
Why the PDF Format ?
•
•
•
•
Independent of environment
Easy navigation (hyperlinks, bookmarks)
Easy distribution (free acrobat reader)
The FDA wants it
abcd
Types of Appendices
• Statistical analyses (STAT)
(different sections with:
tables, analyses, graphics, listings)
• Individual data listings (IDL)
• Case report form tabulations (CRF)
abcd
Statistical Analysis
abcd
Individual Data Listing
abcd
Case Report Form Tabulation
abcd
Environment
• Windows NT, SP 4
• Sas 6.12, TS045, only SAS/base
• Acrobat distiller 3.02 / 4.05
abcd
How Do We Get From SAS to PDF?
• Install complete acrobat package and use the
acrobat pdfwriter printerdriver
But, no bookmarks and hyperlinks
• SAS version 8 can generate PDF output for graphics
output
• The future might bring PDF output with the output
delivery system (ODS)
Bookmarks and hyperlinks ???
• Solution: create postscript with SAS and use
acrobat distiller and the pdfmark operator!!
abcd
How to Get From SAS to PDF
Tables
Analyses
Postscript
file
%_sas2ps
Graphics
Listings
%_ps2pdf +
Acrobat Distiller
SAS output
PDF file
abcd
From Postscript to PDF
Convert!!
IN
X
PS2PDF
Acrobat
Distiller
watches
OUT
Acrobat
Distiller
converts
abcd
SAS Output Conventions
• Portrait
linesize=94
pagesize=87
landscape linesize=145
pagesize=56
• Options NOCENTER NODATE NONUMBER
• Conventions for TITLES and FOOTNOTES
• Graphic output uses postscript DEVICE=PSL
abcd
SAS Output Conventions
- Titles
Table 2.8-1.B
Summary statistics of minimum cycle length.
All-Subjects-Treated Group.
Restricted to subjects with irregular cycle length < 41 days.
__________________________________________________________
|Minimum cycle length (days) |
Puregon
|
Table, Analysis, Listing, Figure
<section>-<number>
or <number>
#Table 2.8-1.B
#Table 2.8-1.B
Summary statistics of minimum cycle length.
All-Subjects-Treated Group.
Restricted to subjects with irregular cycle length < 41 days.
__________________________________________________________
|Minimum cycle length (days) |
Puregon
|
abcd
Table of
Contents
abcd
SAS Output Conventions
- Footnotes
|
SD
|
|
|
3.54|
|
Minimum
|
20|
25|
20|
|____________________________|_________|_________|_________|
(CONTINUED)
Compound: Puregon (E1650), SAS program: tab_cycle
/Date:21MAR2000 16:23
abcd
SAS Output Conventions
- Graphics
• Graphics are generated with a postscript
device (PSL)
• Every graphic has a corresponding text
file with the title in it
Postscript file
Text file with title
abcd
SAS Output Conventions
- Graphics
• Graphics are generated with a postscript
device (PSL)
#Figure 6.1.E
ANCOVA model check: normal Q-Q plot of studentized residuals
• EveryOutcome
graphic
a corresponding
text
variable:has
(Prothrombin)
Fragment 1+2 [nmol/L]
Outliers excluded
Per Protocol
group in it
file with
the title
Postscript file
Text file with title
abcd
abcd
What Is Postscript?
• Page description language
• A page is a graphic that can contain:
Lines, rectangles, curves
Text in various typefaces of any
size and orientation
• Device independent
• Closely related to PDF (both adobe)
abcd
Postscript - Coordinate System
1 inch
(595,842)
=
=
72 points
A4
8,3 inch x
11,7 inch
(0,0)
abcd
Postscript - Coordinate System
1 inch
(612,792)
=
=
72 points
Letter
8,5 inch x
11 inch
(0,0)
abcd
Postscript - Adding Text
Listing 4
Dosing Compliance.
Descriptives per Subject and per Cycle.
Intent-to-Treat Group.
Choose font
X-coordinate Y-coordinate moveto (text to show) show
/Helvetica-Bold findfont 8 scalefont setfont
108 730 moveto (Listing 4) ushow
205 730 moveto (Dosing Compliance.) show
/Helvetica findfont 8 scalefont setfont
205 723 moveto (Descriptives per Subject and per Cycle.) show
205 716 moveto (Intent-to-Treat Group.) show
abcd
Postscript - Document Structuring
Conventions
%!PS-Adobe-3.0
%%Title: Protocol 068004 Appendix F
%%CreationDate: 29MAR2000 18:31
%%Generated by: _SAS2PS 1.0 May 1999 ((c) NV Organon, SAS 6.12, WIN_NT)
...
%%EndComments
%%BeginProlog
…
Define procedures and fonts
%%EndProlog
%%BeginSetup
...
Define Hyperlinks and Bookmarks
%%EndSetup
%%Page: 1
Describe page 1
…
%%Page: 2
…
Describe page 2
%%Trailer
%%DocumentFonts: Courier Helvetica-Bold Helvetica
%%Pages: 474
%%EOF
abcd
How to Use the Pdfmark Operator ?
• Used in postscript files to represent PDF
features.
• General syntax:
[
…. Various key-value pairs…
kind pdfmark
abcd
How to Define PDF Bookmarks?
[ /Title string
/Count int
…action-specific key-value pairs
/OUT pdfmark
abcd
How to Define PDF Bookmarks?
[/Title (F.3 Extent of Exposure)
/Count 3
/Page 121
/View [/XYZ 103 775 null]
/OUT pdfmark
[/Title (TAB 3.A Summary statistics of extent of exposure*Per Protocol group)
/Page 122
/View [/XYZ 144.6 116.68 null]
/OUT pdfmark
[/Title (TAB 3.B Summary statistics of extent of exposure*All-Subjects-Treated group)
/Page 125
/View [/XYZ 144.6 116.68 null]
/OUT pdfmark
[/Title (LIS 3.A Extent of exposure \(treatment duration in days\)*All-Subjects-Treated group)
/Page 128
/View [/XYZ 144.6 116.68 null]
/OUT pdfmark
abcd
How to Define PDF Hyperlinks?
[ /Rect [llx lly urx ury]
/Border [bx by c [d]]
/SrcPg pagenum
/Color array
/Subtype /Link
…action-specific key-value pairs
/ANN pdfmark
abcd
How to Define PDF Hyperlinks?
108 291 moveto (Listing 1.3-A) ushow
205 291 moveto (Subjects for whom the blind was broken during the study) show
205 283 moveto (All-Subjects-Randomized group) show
(F-26) Calc Dots
[ /Rect [ 106 581 528 601 ]
/Color [0 0 1]
/Page 25
/View [/XYZ 144 117 null]
/Subtype /Link
/ANN pdfmark
abcd
From SAS to Postscript
• SAS macro %_SAS2PS
• Parameters:
Author
Apptype
creator of the appendix
type of appendix (STAT, IDL or CRF)
Apptype=stat, sections will be generated.
Apptype=idl, no sections will be generated.
Apptype=crf, no sections will be generated.
No table of contents will be generated.
Special formatting can be applied with tags:
<1> and <2> for bookmarks,
<u>=underline, <b>=bold, <h>=helvetica
abcd
From SAS to Postscript
• SAS macro %_SAS2PS
• Parameters:
Pagetext
Filemask
Maketoc
T1, ..., t24
Watermrk
Wmtext
Bookmark
text in pagenumber
selection of files to include
generate table of contents (Y/N) ?
character strings with section titles.
generate watermark (Y/N) ?
watermark text in case watermrk=y
generate bookmarks (Y/N) ?
abcd
From SAS to Postscript
• SAS macro %_SAS2PS
• Parameters:
Firstpag
Inlib
Outlib
Outfile
starting pagenumber in output file.
libname of library with input SAS files
libname of library where postscript file will be
written.
name of postscript file.
abcd
%_SAS2PS Macro
•
•
•
•
Read in all text files
Sort by section, type and number
Generate table of contents
Generate postscript, including:
– Bookmark / hyperlink information
– Graphics
abcd
Conclusion
• With SAS/Base and Acrobat Distiller it is
possible to create PDF documents from
SAS output.
• This process is completely automated
abcd
Where to Get the Info?
• First guide to postscript:
http://www.Cs.Indiana.Edu/docproject/
programming/postscript/postscript.Html
• Pdfmark reference manual:
http://partners.Adobe.Com/asn/developer/
technotes.Html
• Pdfmark primer by thomas merz:
http://www.Pdflib.Com/pdfmark/index.Html
• Get ghostscript/ghostview:
http://www.Cs.Wisc.Edu/~ghost/index.Html
abcd
abcd
Questions ?
PDF ??
Postscript ??
PDFMark ??
SAS ??
abcd
Thank
You !!
Contact:
lex.jansen@organon.com
abcd
Download