Skip to content
Snippets Groups Projects
Select Git revision
  • f985c814d9403be00c9337db2411cb47a932d400
  • master default protected
2 results

Makefile

Blame
  • pdf-notes 3.20 KiB
    Name trees:
    
    	/Kids [references]
    	/Limits [(min-name) (max-name)]
    
    	/Names [(key1) val1 (key2) val2 ... (keyN) valN]
    	/Limits [(key1) (keyN)]
    
    Number trees are like name trees but:
    
    	/Nums [key1 val1 ...]	instead of /Names
    	/Limits [key1 keyN]
    
    Destinations:
    
    [page-object /XYZ left top zoom]
    [page-object /Fit]
    [page-object /FitV]
    [page-object /FitH]
    [page-object /FitR left bottom right top]
    named dest
    	-> either /Dests in document catalog (a dictionary)
    	-> or via document name dictionary:
    		catalog -> /Names -> /Dests -> name tree
    
    ## \pdfdest name{<name>} (xyz [zoom <mag>] | fitr <rule> | fitv ...)
    ##	-> fitb, fitbv, fitbh: bounding box of the page
    ## \pdfdestmargin=<dimen>
    
    Actions: (dictionaries)
    
    	/Type /Action		optional
    	/S action-type
    	/Next dict-or-array	chaining	
    
    	/S /GoTo
    	/D destination
    
    	/S /URI
    	/URI (uri)
    
    	/S /Named
    	/N /NextPage
    
    Outline:
    
    catalog -> /Outlines -> dictionary
    
    	/Type /Outlines
    	/First -> first top-level item
    	/Last -> last top-level item
    	/Count number-of-open-items-on-all-levels
    
    item:
    
    	/Title (string)
    	/Parent -> parent item
    	/Prev -> previous item
    	/Next -> next item
    	/First -> first child
    	/Last -> last child
    	/Count num-of-open-descendants
    	/Dest name-string-or-array
    	/A action-on-activate
    	/C [r g b]		color
    	/F flags		style flags (b0=italic, b1=bold)
    
    ## \pdfoutline [attr <text>] <action> [count <integer>] <text>
    ##	action:
    ##		- goto page N, goto name X
    ##		- user { ... }
    ##	count > 0: open subentries
    ##	count < 0: closed subentries
    
    Page labels:
    
    catalog -> /PageLabels -> number tree -> page label dict
    (for each range, the number tree contains the first page number in the range)
    
    	/Type /PageLabel	optional
    	/S style		D=decimal, R=ROMAN, r=roman, A=upcase (A..Z, AA,BB..ZZ, ...), a=lowcase
    				no style -> no numbers, only prefix
    	/P (prefix)
    	/St start-number	default=1
    
    Annotations: (section 8.4, page 604)
    
    page -> /Annots -> array of annotation dictionaries
    
    	/Type /Annot		optional
    	/Subtype xxx
    	/Rect [rectangle]	location on page
    	/Contents (string)
    	/P -> page containing this annot
    	/NM (optional annotation name)
    	/M (datetime of last modification)
    	/F flags		not interesting
    	/AP -> appearance dict
    	/AS /selected-appearance
    	/Border [horiz-corner-radius vert-corner-radius width optional-dash-array]
    	/BS -> border style dict	preferred
    		/Type /Border
    		/W width
    		/S style		/S=solid /D=dashed /B=beveled etc.
    		/D dash-array
    	/C [gray / r g b / c m y k]
    
    annotation subtypes:
    
    	/Text			ikonka, vyvolava pop-up text
    		/Name icon		(/Comment /Help apod.)
    	/Link			link or action
    		/A action	one of these
    		/Dest (dest)
    	/FreeText		text rendered inside page, possibly with callout
    	/Line			usecka nebo kota
    	/Highlight		zvyrazneny kus textu, vyvolava pop-up text
    
    pdftex:
    	\pdfannot [reserveobjnum | useobjnum <N>] [<rule-spec>] <raw-PDF>
    				rule-spec describes annot size, default is all dimensions running
    				(inherits dimensions of enclosing box)
    	\pdflastannot		returns object number
    
    	\pdfstartlink [<rule-spec>] [attr <text>] (<action> ::= user <user-action> | goto name{<destination>} | goto page <num> {/Fit})
    	\pdfendlink
    	\pdflastlink
    	\pdflinkmargin=<dimen>
    
    	\pdfstartthread [<rule>] [attr <text>] name{<name>}
    	\pdfendthread
    
    	\pdfpageresources{ /ExtGState << /key value ... >> }