This commit is contained in:
John Whitington 2022-03-09 13:07:27 +01:00
parent 1c7199feb0
commit 4163dd60cf
20 changed files with 212 additions and 455 deletions

View File

@ -4,7 +4,8 @@ The Coherent PDF Library for .NET
Cpdf.Pdf Cpdf.Pdf
PDF document. Use the 'using' keyword, or call Dispose to make sure PDFs are deallocated. PDF document. Use the 'using' keyword, or call Dispose to make sure PDFs are
deallocated.
Cpdf.Pdf.Dispose Cpdf.Pdf.Dispose
@ -21,6 +22,3 @@ Any function in this library may raise the CPDFError exception.
Cpdf.CPDFError.#ctor(String) Cpdf.CPDFError.#ctor(String)
Construct a CPDFError which carries a string. Construct a CPDFError which carries a string.
Cpdf.dummych0

View File

@ -10,15 +10,15 @@ Returns a string giving the version number of the CPDF library.
Cpdf.setFast Cpdf.setFast
Some operations have a fast mode. The default is 'slow' mode, which works Some operations have a fast mode. The default is 'slow' mode, which works even
even on old-fashioned files. For more details, see section 1.13 of the on old-fashioned files. For more details, see section 1.13 of the CPDF manual.
CPDF manual. This function sets the mode to fast globally. This function sets the mode to fast globally.
Cpdf.setSlow Cpdf.setSlow
Some operations have a fast mode. The default is 'slow' mode, which works Some operations have a fast mode. The default is 'slow' mode, which works even
even on old-fashioned files. For more details, see section 1.13 of the on old-fashioned files. For more details, see section 1.13 of the CPDF manual.
CPDF manual. This functions sets the mode to slow globally. This functions sets the mode to slow globally.
Cpdf.lastError Cpdf.lastError
@ -34,9 +34,6 @@ Not to be called directly. Errors in .NET cpdf are raised by exceptions.
Cpdf.onExit Cpdf.onExit
A debug function which prints some information about A debug function which prints some information about resource usage. This can
resource usage. This can be used to detect if PDFs or ranges are being be used to detect if PDFs or ranges are being deallocated properly. Contrary to
deallocated properly. Contrary to its name, it may be run at any time. its name, it may be run at any time.
Cpdf.dummych1

View File

@ -2,17 +2,17 @@ CHAPTER 1. Basics
Cpdf.fromFile(String, String) Cpdf.fromFile(String, String)
Loads a PDF file from a given file. Supply Loads a PDF file from a given file. Supply a user password (possibly blank) in
a user password (possibly blank) in case the file is encrypted. It won't be case the file is encrypted. It won't be decrypted, but sometimes the password
decrypted, but sometimes the password is needed just to load the file. is needed just to load the file.
Cpdf.fromFileLazy(String, String) Cpdf.fromFileLazy(String, String)
Loads a PDF from a file, doing only minimal Loads a PDF from a file, doing only minimal parsing. The objects will be read
parsing. The objects will be read and parsed when they are actually and parsed when they are actually needed. Use this when the whole file won't be
needed. Use this when the whole file won't be required. Also supply a user required. Also supply a user password (possibly blank) in case the file is
password (possibly blank) in case the file is encrypted. It won't be encrypted. It won't be decrypted, but sometimes the password is needed just to
decrypted, but sometimes the password is needed just to load the file. load the file.
Cpdf.fromMemory(Byte[], String) Cpdf.fromMemory(Byte[], String)
@ -20,38 +20,22 @@ Loads a file from memory given any user password.
Cpdf.fromMemoryLazy(IntPtr, Int32, String) Cpdf.fromMemoryLazy(IntPtr, Int32, String)
Loads a file from memory, given a Loads a file from memory, given a pointer and a length, and the user password,
pointer and a length, and the user password, but lazily like but lazily like fromFileLazy. The caller must use AllocHGlobal / Marshal.Copy /
fromFileLazy. The caller must use AllocHGlobal / Marshal.Copy / FreeHGlobal FreeHGlobal itself. It must not free the memory until the PDF is also gone.
itself. It must not free the memory until the PDF is also gone.
Cpdf.startEnumeratePDFs Cpdf.startEnumeratePDFs
To enumerate the list of currently allocated PDFs, call
startEnumeratePDFs which gives the number, n, of PDFs allocated, then
enumeratePDFsInfo and enumeratePDFsKey with index numbers from
0...(n - 1). Call endEnumeratePDFs to clean up.
Cpdf.enumeratePDFsKey(Int32) Cpdf.enumeratePDFsKey(Int32)
To enumerate the list of currently allocated PDFs, call
startEnumeratePDFs which gives the number, n, of PDFs allocated, then
enumeratePDFsInfo and enumeratePDFsKey with index numbers from
0...(n - 1). Call endEnumeratePDFs to clean up.
Cpdf.enumeratePDFsInfo(Int32) Cpdf.enumeratePDFsInfo(Int32)
To enumerate the list of currently allocated PDFs, call
startEnumeratePDFs which gives the number, n, of PDFs allocated, then
enumeratePDFsInfo and enumeratePDFsKey with index numbers from
0...(n - 1). Call endEnumeratePDFs to clean up.
Cpdf.endEnumeratePDFs Cpdf.endEnumeratePDFs
To enumerate the list of currently allocated PDFs, call To enumerate the list of currently allocated PDFs, call startEnumeratePDFs
startEnumeratePDFs which gives the number, n, of PDFs allocated, then which gives the number, n, of PDFs allocated, then enumeratePDFsInfo and
enumeratePDFsInfo and enumeratePDFsKey with index numbers from enumeratePDFsKey with index numbers from 0...(n - 1). Call endEnumeratePDFs to
0...(n - 1). Call endEnumeratePDFs to clean up. clean up.
Cpdf.ptOfCm(Double) Cpdf.ptOfCm(Double)
@ -79,20 +63,18 @@ Converts a figure in points to inches (72 points to 1 inch)
Cpdf.parsePagespec(Cpdf.Pdf, String) Cpdf.parsePagespec(Cpdf.Pdf, String)
Parses a page specification with reference Parses a page specification with reference to a given PDF (the PDF is supplied
to a given PDF (the PDF is supplied so that page ranges which reference so that page ranges which reference pages which do not exist are rejected).
pages which do not exist are rejected).
Cpdf.validatePagespec(String) Cpdf.validatePagespec(String)
Validates a page specification so far as is Validates a page specification so far as is possible in the absence of the
possible in the absence of the actual document. Result is true if valid. actual document. Result is true if valid.
Cpdf.stringOfPagespec(Cpdf.Pdf, List{Int32}) Cpdf.stringOfPagespec(Cpdf.Pdf, List{Int32})
Builds a page specification from a page Builds a page specification from a page range. For example, the range
range. For example, the range containing 1, 2, 3, 6, 7, 8 in a document of 8 containing 1, 2, 3, 6, 7, 8 in a document of 8 pages might yield "1-3, 6-end"
pages might yield "1-3, 6-end"
Cpdf.blankRange Cpdf.blankRange
@ -100,8 +82,8 @@ Creates a range with no pages in.
Cpdf.range(Int32, Int32) Cpdf.range(Int32, Int32)
Builds a range from one page to another inclusive. For Builds a range from one page to another inclusive. For example, range(3, 7)
example, range(3, 7) gives the range 3, 4, 5, 6, 7 gives the range 3, 4, 5, 6, 7
Cpdf.all(Cpdf.Pdf) Cpdf.all(Cpdf.Pdf)
@ -109,23 +91,21 @@ The range containing all the pages in a given document.
Cpdf.even(List{Int32}) Cpdf.even(List{Int32})
Makes a range which contains just the even pages of Makes a range which contains just the even pages of another range.
another range.
Cpdf.odd(List{Int32}) Cpdf.odd(List{Int32})
Makes a range which contains just the odd pages of another Makes a range which contains just the odd pages of another range.
range.
Cpdf.rangeUnion(List{Int32}, List{Int32}) Cpdf.rangeUnion(List{Int32}, List{Int32})
Makes the union of two ranges giving a range Makes the union of two ranges giving a range containing the pages in range a
containing the pages in range a and range b. and range b.
Cpdf.difference(List{Int32}, List{Int32}) Cpdf.difference(List{Int32}, List{Int32})
Makes the difference of two ranges, giving a range Makes the difference of two ranges, giving a range containing all the pages in
containing all the pages in a except for those which are also in b. a except for those which are also in b.
Cpdf.removeDuplicates(List{Int32}) Cpdf.removeDuplicates(List{Int32})
@ -156,45 +136,41 @@ Returns the number of pages in a PDF.
Cpdf.pagesFast(String, String) Cpdf.pagesFast(String, String)
Returns the number of pages in a given Returns the number of pages in a given PDF, with given user password. It tries
PDF, with given user password. It tries to do this as fast as to do this as fast as possible, without loading the whole file.
possible, without loading the whole file.
Cpdf.toFile(Cpdf.Pdf, String, Boolean, Boolean) Cpdf.toFile(Cpdf.Pdf, String, Boolean, Boolean)
Writes the file to a given Writes the file to a given filename. If linearize is true, it will be
filename. If linearize is true, it will be linearized if a linearizer is linearized if a linearizer is available. If make_id is true, it will be given a
available. If make_id is true, it will be given a new ID. new ID.
Cpdf.toFileExt(Cpdf.Pdf, String, Boolean, Boolean, Boolean, Boolean, Boolean) Cpdf.toFileExt(Cpdf.Pdf, String, Boolean, Boolean, Boolean, Boolean, Boolean)
Writes the file to a given filename. If Writes the file to a given filename. If make_id is true, it will be given a new
make_id is true, it will be given a new ID. If preserve_objstm is true, ID. If preserve_objstm is true, existing object streams will be preserved. If
existing object streams will be preserved. If generate_objstm is true, generate_objstm is true, object streams will be generated even if not
object streams will be generated even if not originally present. If originally present. If compress_objstm is true, object streams will be
compress_objstm is true, object streams will be compressed (what we compressed (what we usually want). WARNING: the pdf argument will be invalid
usually want). WARNING: the pdf argument will be invalid after this call, after this call, and should be not be used again.
and should be not be used again.
Cpdf.toMemory(Cpdf.Pdf, Boolean, Boolean) Cpdf.toMemory(Cpdf.Pdf, Boolean, Boolean)
Writes a PDF file Writes a PDF file and returns as an array of bytes.
and returns as an array of bytes.
Cpdf.isEncrypted(Cpdf.Pdf) Cpdf.isEncrypted(Cpdf.Pdf)
Returns true if a documented is encrypted, false Returns true if a documented is encrypted, false otherwise.
otherwise.
Cpdf.decryptPdf(Cpdf.Pdf, String) Cpdf.decryptPdf(Cpdf.Pdf, String)
Attempts to decrypt a PDF using the given Attempts to decrypt a PDF using the given user password. An exception is raised
user password. An exception is raised if the decryption fails. if the decryption fails.
Cpdf.decryptPdfOwner(Cpdf.Pdf, String) Cpdf.decryptPdfOwner(Cpdf.Pdf, String)
Attempts to decrypt a PDF using the Attempts to decrypt a PDF using the given owner password. Raises an exception
given owner password. Raises an exception if the decryption fails. if the decryption fails.
Cpdf.Permission Cpdf.Permission
@ -268,14 +244,16 @@ Cpdf.EncryptionMethod.Aes256bitiosotrue
256 bit AES encryption, encrypt metadata 256 bit AES encryption, encrypt metadata
Cpdf.toFileEncrypted(Cpdf.Pdf, Cpdf.EncryptionMethod, List{Cpdf.Permission}, String, String, Boolean, Boolean, String) Cpdf.toFileEncrypted(Cpdf.Pdf, Cpdf.EncryptionMethod, List{Cpdf.Permission},
String, String, Boolean, Boolean, String)
Writes a file as encrypted. Writes a file as encrypted.
Cpdf.toFileEncryptedExt(Cpdf.Pdf, Cpdf.EncryptionMethod, List{Cpdf.Permission}, String, String, Boolean, Boolean, Boolean, Boolean, Boolean, String) Cpdf.toFileEncryptedExt(Cpdf.Pdf, Cpdf.EncryptionMethod, List{Cpdf.Permission},
String, String, Boolean, Boolean, Boolean, Boolean, Boolean, String)
Writes a file as encrypted with extra parameters. WARNING: the Writes a file as encrypted with extra parameters. WARNING: the pdf argument
pdf argument will be invalid after this call, and should not be used again. will be invalid after this call, and should not be used again.
Cpdf.hasPermission(Cpdf.Pdf, Cpdf.Permission) Cpdf.hasPermission(Cpdf.Pdf, Cpdf.Permission)
@ -286,6 +264,3 @@ Cpdf.encryptionKind(Cpdf.Pdf)
Returns the encryption method currently in use on Returns the encryption method currently in use on
a document. a document.
Cpdf.dummych2

View File

@ -2,27 +2,21 @@ CHAPTER 2. Merging and Splitting
Cpdf.mergeSimple(List{Cpdf.Pdf}) Cpdf.mergeSimple(List{Cpdf.Pdf})
Given a list of PDFs, Given a list of PDFs, merges the files into a new one, which is returned.
merges the files into a new one, which is returned.
Cpdf.merge(List{Cpdf.Pdf}, Boolean, Boolean) Cpdf.merge(List{Cpdf.Pdf}, Boolean, Boolean)
Merges the Merges the PDFs. If retain_numbering is true page labels are not rewritten. If
PDFs. If retain_numbering is true page labels are not rewritten. If remove_duplicate_fonts is true, duplicate fonts are merged. This is useful when
remove_duplicate_fonts is true, duplicate fonts are merged. This is useful the source documents for merging originate from the same source.
when the source documents for merging originate from the same source.
Cpdf.mergeSame(List{Cpdf.Pdf}, Boolean, Boolean, List{List{Int32}}) Cpdf.mergeSame(List{Cpdf.Pdf}, Boolean, Boolean, List{List{Int32}})
The same as merge, except that it has an additional The same as merge, except that it has an additional argument - a list of page
argument - a list of page ranges. This is used to select the pages to ranges. This is used to select the pages to pick from each PDF. This avoids
pick from each PDF. This avoids duplication of information when multiple duplication of information when multiple discrete parts of a source PDF are
discrete parts of a source PDF are included. included.
Cpdf.selectPages(Cpdf.Pdf, List{Int32}) Cpdf.selectPages(Cpdf.Pdf, List{Int32})
Returns a new document which just those pages Returns a new document which just those pages in the page range.
in the page range.
Cpdf.dummych3

View File

@ -2,15 +2,13 @@ CHAPTER 3. Pages
Cpdf.scalePages(Cpdf.Pdf, List{Int32}, Double, Double) Cpdf.scalePages(Cpdf.Pdf, List{Int32}, Double, Double)
Scales the page dimensions Scales the page dimensions and content by the given scale, about (0, 0). Other
and content by the given scale, about (0, 0). Other boxes (crop etc. are boxes (crop etc. are altered as appropriate)
altered as appropriate)
Cpdf.scaleToFit(Cpdf.Pdf, List{Int32}, Double, Double, Double) Cpdf.scaleToFit(Cpdf.Pdf, List{Int32}, Double, Double, Double)
Scales the content to fit Scales the content to fit new page dimensions (width x height) multiplied by
new page dimensions (width x height) multiplied by scale (typically 1.0). scale (typically 1.0). Other boxes (crop etc. are altered as appropriate)
Other boxes (crop etc. are altered as appropriate)
Cpdf.Papersize Cpdf.Papersize
@ -82,8 +80,8 @@ US Legal Landscape paper
Cpdf.scaleToFitPaper(Cpdf.Pdf, List{Int32}, Cpdf.Papersize, Double) Cpdf.scaleToFitPaper(Cpdf.Pdf, List{Int32}, Cpdf.Papersize, Double)
Scales the page content Scales the page content to fit the given page size, possibly multiplied by
to fit the given page size, possibly multiplied by scale (typically 1.0) scale (typically 1.0)
Cpdf.Anchor Cpdf.Anchor
@ -169,37 +167,32 @@ Build a position with two parameters
Cpdf.scaleContents(Cpdf.Pdf, List{Int32}, Cpdf.Position, Double) Cpdf.scaleContents(Cpdf.Pdf, List{Int32}, Cpdf.Position, Double)
Scales the contents of the Scales the contents of the pages in the range about the point given by the
pages in the range about the point given by the position, by the position, by the scale given.
scale given.
Cpdf.shiftContents(Cpdf.Pdf, List{Int32}, Double, Double) Cpdf.shiftContents(Cpdf.Pdf, List{Int32}, Double, Double)
Shifts the content of the pages in Shifts the content of the pages in the range.
the range.
Cpdf.rotate(Cpdf.Pdf, List{Int32}, Int32) Cpdf.rotate(Cpdf.Pdf, List{Int32}, Int32)
Changes the viewing rotation to an Changes the viewing rotation to an absolute value. Appropriate rotations are 0,
absolute value. Appropriate rotations are 0, 90, 180, 270. 90, 180, 270.
Cpdf.rotateBy(Cpdf.Pdf, List{Int32}, Int32) Cpdf.rotateBy(Cpdf.Pdf, List{Int32}, Int32)
Rotates the content about the Rotates the content about the centre of the page by the given number of
centre of the page by the given number of degrees, in a clockwise degrees, in a clockwise direction.
direction.
Cpdf.rotateContents(Cpdf.Pdf, List{Int32}, Double) Cpdf.rotateContents(Cpdf.Pdf, List{Int32}, Double)
Rotates the content about the Rotates the content about the centre of the page by the given number of
centre of the page by the given number of degrees, in a clockwise degrees, in a clockwise direction.
direction.
Cpdf.upright(Cpdf.Pdf, List{Int32}) Cpdf.upright(Cpdf.Pdf, List{Int32})
Changes the viewing rotation of the pages in the Changes the viewing rotation of the pages in the range, counter-rotating the
range, counter-rotating the dimensions and content such that there is no dimensions and content such that there is no visual change.
visual change.
Cpdf.hFlip(Cpdf.Pdf, List{Int32}) Cpdf.hFlip(Cpdf.Pdf, List{Int32})
@ -211,8 +204,7 @@ Flips vertically the pages in the range.
Cpdf.crop(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double) Cpdf.crop(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double)
Crops a page, replacing any existing Crops a page, replacing any existing crop box. The dimensions are in points.
crop box. The dimensions are in points.
Cpdf.removeCrop(Cpdf.Pdf, List{Int32}) Cpdf.removeCrop(Cpdf.Pdf, List{Int32})
@ -232,8 +224,7 @@ Removes any bleed box from pages in the range.
Cpdf.trimMarks(Cpdf.Pdf, List{Int32}) Cpdf.trimMarks(Cpdf.Pdf, List{Int32})
Adds trim marks to the given pages, if the Adds trim marks to the given pages, if the trimbox exists.
trimbox exists.
Cpdf.showBoxes(Cpdf.Pdf, List{Int32}) Cpdf.showBoxes(Cpdf.Pdf, List{Int32})
@ -242,6 +233,3 @@ Shows the boxes on the given pages, for debug.
Cpdf.hardBox(Cpdf.Pdf, List{Int32}, String) Cpdf.hardBox(Cpdf.Pdf, List{Int32}, String)
Makes a given box a 'hard box' i.e clips it explicitly. Makes a given box a 'hard box' i.e clips it explicitly.
Cpdf.dummych4

View File

@ -1,4 +1,3 @@
CHAPTER 4. Encryption CHAPTER 4. Encryption
Cpdf.dummych5 Encryption covered in Chapter 1.

View File

@ -2,17 +2,13 @@ CHAPTER 5. Compression
Cpdf.compress(Cpdf.Pdf) Cpdf.compress(Cpdf.Pdf)
Compresses any uncompressed streams in the given PDF Compresses any uncompressed streams in the given PDF using the Flate algorithm.
using the Flate algorithm.
Cpdf.decompress(Cpdf.Pdf) Cpdf.decompress(Cpdf.Pdf)
Decompresses any streams in the given PDF, so long as Decompresses any streams in the given PDF, so long as the compression method is
the compression method is supported. supported.
Cpdf.squeezeInMemory(Cpdf.Pdf) Cpdf.squeezeInMemory(Cpdf.Pdf)
Squeezes a pdf in memory. Squeezes a pdf in memory.
Cpdf.dummych6

View File

@ -2,24 +2,20 @@ CHAPTER 6. Bookmarks
Cpdf.startGetBookmarkInfo(Cpdf.Pdf) Cpdf.startGetBookmarkInfo(Cpdf.Pdf)
Starts the bookmark retrieval process for a Starts the bookmark retrieval process for a given PDF.
given PDF.
Cpdf.numberBookmarks Cpdf.numberBookmarks
Gets the number of bookmarks for the PDF given to Gets the number of bookmarks for the PDF given to startGetBookmarkInfo.
startGetBookmarkInfo.
Cpdf.getBookmarkLevel(Int32) Cpdf.getBookmarkLevel(Int32)
Gets the bookmark level for the given bookmark Gets the bookmark level for the given bookmark (0...(n - 1)).
(0...(n - 1)).
Cpdf.getBookmarkPage(Cpdf.Pdf, Int32) Cpdf.getBookmarkPage(Cpdf.Pdf, Int32)
Gets the bookmark target page for the given PDF Gets the bookmark target page for the given PDF (which must be the same as the
(which must be the same as the PDF passed to startSetBookmarkInfo) PDF passed to startSetBookmarkInfo) and bookmark (0...(n - 1)).
and bookmark (0...(n - 1)).
Cpdf.getBookmarkText(Int32) Cpdf.getBookmarkText(Int32)
@ -35,19 +31,16 @@ Ends the bookmark retrieval process, cleaning up.
Cpdf.startSetBookmarkInfo(Int32) Cpdf.startSetBookmarkInfo(Int32)
Starts the bookmark setting process for n Starts the bookmark setting process for n bookmarks.
bookmarks.
Cpdf.setBookmarkLevel(Int32, Int32) Cpdf.setBookmarkLevel(Int32, Int32)
Set bookmark level for the given bookmark Set bookmark level for the given bookmark (0...(n - 1)).
(0...(n - 1)).
Cpdf.setBookmarkPage(Cpdf.Pdf, Int32, Int32) Cpdf.setBookmarkPage(Cpdf.Pdf, Int32, Int32)
Sets the bookmark target Sets the bookmark target page for the given PDF (which must be the same as the
page for the given PDF (which must be the same as the PDF to be passed to PDF to be passed to endSetBookmarkInfo) and bookmark (0...(n - 1)).
endSetBookmarkInfo) and bookmark (0...(n - 1)).
Cpdf.setBookmarkOpenStatus(Int32, Boolean) Cpdf.setBookmarkOpenStatus(Int32, Boolean)
@ -59,8 +52,7 @@ Sets the text of bookmark (0...(n - 1)).
Cpdf.endSetBookmarkInfo(Cpdf.Pdf) Cpdf.endSetBookmarkInfo(Cpdf.Pdf)
Ends the bookmark setting process, writing the Ends the bookmark setting process, writing the bookmarks to the given PDF.
bookmarks to the given PDF.
Cpdf.getBookmarksJSON(Cpdf.Pdf) Cpdf.getBookmarksJSON(Cpdf.Pdf)
@ -72,9 +64,5 @@ Sets the bookmarks from JSON bookmark data.
Cpdf.tableOfContents(Cpdf.Pdf, Cpdf.Font, Double, String, Boolean) Cpdf.tableOfContents(Cpdf.Pdf, Cpdf.Font, Double, String, Boolean)
Typesets a table Typesets a table of contents from existing bookmarks and prepends it to the
of contents from existing bookmarks and prepends it to the document. If document. If bookmark is set, the table of contents gets its own bookmark.
bookmark is set, the table of contents gets its own bookmark.
Cpdf.dummych7

View File

@ -1,4 +1,3 @@
CHAPTER 7. Presentations CHAPTER 7. Presentations
Cpdf.dummych8 Not included in the library version of cpdf.

View File

@ -2,28 +2,27 @@ CHAPTER 8. Logos, Watermarks and Stamps
Cpdf.stampOn(Cpdf.Pdf, Cpdf.Pdf, List{Int32}) Cpdf.stampOn(Cpdf.Pdf, Cpdf.Pdf, List{Int32})
Stamps stamp_pdf on top of all the Stamps stamp_pdf on top of all the pages in the document which are in the
pages in the document which are in the range. The stamp is placed with its range. The stamp is placed with its origin at the origin of the target
origin at the origin of the target document. document.
Cpdf.stampUnder(Cpdf.Pdf, Cpdf.Pdf, List{Int32}) Cpdf.stampUnder(Cpdf.Pdf, Cpdf.Pdf, List{Int32})
Stamps stamp_pdf under all the Stamps stamp_pdf under all the pages in the document which are in the range.
pages in the document which are in the range. The stamp is placed with its The stamp is placed with its origin at the origin of the target document.
origin at the origin of the target document.
Cpdf.stampExtended(Cpdf.Pdf, Cpdf.Pdf, List{Int32}, Boolean, Boolean, Cpdf.Position, Boolean) Cpdf.stampExtended(Cpdf.Pdf, Cpdf.Pdf, List{Int32}, Boolean, Boolean,
Cpdf.Position, Boolean)
A stamping function with extra features. - isover A stamping function with extra features. - isover true, pdf goes over pdf2,
true, pdf goes over pdf2, isover false, pdf goes under pdf2 - isover false, pdf goes under pdf2 - scale_stamp_to_fit scales the stamp to fit
scale_stamp_to_fit scales the stamp to fit the page - pos gives the the page - pos gives the position to put the stamp - relative_to_cropbox: if
position to put the stamp - relative_to_cropbox: if true, pos is relative true, pos is relative to cropbox not mediabox.
to cropbox not mediabox.
Cpdf.combinePages(Cpdf.Pdf, Cpdf.Pdf) Cpdf.combinePages(Cpdf.Pdf, Cpdf.Pdf)
Combines the PDFs page-by-page, putting Combines the PDFs page-by-page, putting each page of 'over' over each page of
each page of 'over' over each page of 'under'. 'under'.
Cpdf.Font Cpdf.Font
@ -93,18 +92,20 @@ Cpdf.Justification.RightJustify
Right justify Right justify
Cpdf.addText(Boolean, Cpdf.Pdf, List{Int32}, String, Cpdf.Position, Double, Int32, Cpdf.Font, Double, Double, Double, Double, Boolean, Boolean, Boolean, Double, Cpdf.Justification, Boolean, Boolean, String, Double, Boolean) Cpdf.addText(Boolean, Cpdf.Pdf, List{Int32}, String, Cpdf.Position, Double,
Int32, Cpdf.Font, Double, Double, Double, Double, Boolean, Boolean, Boolean,
Double, Cpdf.Justification, Boolean, Boolean, String, Double, Boolean)
Adds text to the pages in the given range. Adds text to the pages in the given range.
Cpdf.addTextSimple(Cpdf.Pdf, List{Int32}, String, Cpdf.Position, Cpdf.Font, Double) Cpdf.addTextSimple(Cpdf.Pdf, List{Int32}, String, Cpdf.Position, Cpdf.Font,
Double)
Adds text with most parameters default. Adds text with most parameters default.
Cpdf.removeText(Cpdf.Pdf, List{Int32}) Cpdf.removeText(Cpdf.Pdf, List{Int32})
Removes any text added by cpdf from the Removes any text added by cpdf from the given pages.
given pages.
Cpdf.textWidth(Cpdf.Font, String) Cpdf.textWidth(Cpdf.Font, String)
@ -113,15 +114,10 @@ point.
Cpdf.addContent(String, Boolean, Cpdf.Pdf, List{Int32}) Cpdf.addContent(String, Boolean, Cpdf.Pdf, List{Int32})
Adds page content before (if Adds page content before (if true) or after (if false) the existing content to
true) or after (if false) the existing content to pages in the given range pages in the given range in the given PDF.
in the given PDF.
Cpdf.stampAsXObject(Cpdf.Pdf, List{Int32}, Cpdf.Pdf) Cpdf.stampAsXObject(Cpdf.Pdf, List{Int32}, Cpdf.Pdf)
Stamps stamp_pdf onto the pages Stamps stamp_pdf onto the pages in the given range in pdf as a shared Form
in the given range in pdf as a shared Form XObject. The name of the XObject. The name of the newly-created XObject is returned.
newly-created XObject is returned.
Cpdf.dummych9

View File

@ -1,32 +1,31 @@
CHAPTER 9. Multipage facilities CHAPTER 9. Multipage facilities
Cpdf.impose(Cpdf.Pdf, Double, Double, Boolean, Boolean, Boolean, Boolean, Boolean, Double, Double, Double) Cpdf.impose(Cpdf.Pdf, Double, Double, Boolean, Boolean, Boolean, Boolean,
Boolean, Double, Double, Double)
Imposes a PDF. There are two modes: imposing x * y, or imposing Imposes a PDF. There are two modes: imposing x * y, or imposing to fit a page
to fit a page of size x * y. This is controlled by fit. Columns imposes by of size x * y. This is controlled by fit. Columns imposes by columns rather
columns rather than rows. rtl is right-to-left, btt bottom-to-top. Center is than rows. rtl is right-to-left, btt bottom-to-top. Center is unused for now.
unused for now. Margin is the margin around the output, spacing the spacing Margin is the margin around the output, spacing the spacing between imposed
between imposed inputs. inputs.
Cpdf.twoUp(Cpdf.Pdf) Cpdf.twoUp(Cpdf.Pdf)
Imposes a document two up. twoUpStack does so by doubling the Imposes a document two up. twoUpStack does so by doubling the page size, to fit
page size, to fit two pages on one. two pages on one.
Cpdf.twoUpStack(Cpdf.Pdf) Cpdf.twoUpStack(Cpdf.Pdf)
Impose a document two up. twoUpStack does so by doubling the Impose a document two up. twoUpStack does so by doubling the page size, to fit
page size, to fit two pages on one. two pages on one.
Cpdf.padBefore(Cpdf.Pdf, List{Int32}) Cpdf.padBefore(Cpdf.Pdf, List{Int32})
Adds a blank page before each page in the given Adds a blank page before each page in the given range.
range.
Cpdf.padAfter(Cpdf.Pdf, List{Int32}) Cpdf.padAfter(Cpdf.Pdf, List{Int32})
Adds a blank page after each page in the given Adds a blank page after each page in the given range.
range.
Cpdf.padEvery(Cpdf.Pdf, Int32) Cpdf.padEvery(Cpdf.Pdf, Int32)
@ -34,13 +33,8 @@ Adds a blank page after every n pages.
Cpdf.padMultiple(Cpdf.Pdf, Int32) Cpdf.padMultiple(Cpdf.Pdf, Int32)
Adds pages at the end to pad the file to a Adds pages at the end to pad the file to a multiple of n pages in length.
multiple of n pages in length.
Cpdf.padMultipleBefore(Cpdf.Pdf, Int32) Cpdf.padMultipleBefore(Cpdf.Pdf, Int32)
Adds pages at the beginning to pad the file to a Adds pages at the beginning to pad the file to a multiple of n pages in length.
multiple of n pages in length.
Cpdf.dummych10

View File

@ -3,6 +3,3 @@ CHAPTER 10. Annotations
Cpdf.annotationsJSON(Cpdf.Pdf) Cpdf.annotationsJSON(Cpdf.Pdf)
Returns the annotations from a PDF in JSON format Returns the annotations from a PDF in JSON format
Cpdf.dummych11

View File

@ -2,8 +2,8 @@ CHAPTER 11. Document Information and Metadata
Cpdf.isLinearized(String) Cpdf.isLinearized(String)
Finds out if a document is linearized as Finds out if a document is linearized as quickly as possible without loading
quickly as possible without loading it. it.
Cpdf.getVersion(Cpdf.Pdf) Cpdf.getVersion(Cpdf.Pdf)
@ -141,49 +141,32 @@ Cpdf.setModificationDateXMP(Cpdf.Pdf, String)
Sets the XMP modification date of a document. Sets the XMP modification date of a document.
Cpdf.getDateComponents(String, Int32@, Int32@, Int32@, Int32@, Int32@, Int32@, Int32@, Int32@) Cpdf.getDateComponents(String, Int32@, Int32@, Int32@, Int32@, Int32@, Int32@,
Int32@, Int32@)
Returns the components from a PDF date string. Returns the components from a PDF date string.
Cpdf.dateStringOfComponents(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32) Cpdf.dateStringOfComponents(Int32, Int32, Int32, Int32, Int32, Int32, Int32,
Int32)
Builds a PDF date string from individual Builds a PDF date string from individual components.
components.
Cpdf.getPageRotation(Cpdf.Pdf, Int32) Cpdf.getPageRotation(Cpdf.Pdf, Int32)
Gets the viewing rotation for a Gets the viewing rotation for a given page.
given page.
Cpdf.hasBox(Cpdf.Pdf, Int32, String) Cpdf.hasBox(Cpdf.Pdf, Int32, String)
Returns true, if that page has the Returns true, if that page has the given box. E.g "/CropBox".
given box. E.g "/CropBox".
Cpdf.getMediaBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@) Cpdf.getMediaBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@)
These functions get a box given the document, page number, min x, max x,
min y, max y in points. Only succeeds if such a box exists, as checked by
hasBox.
Cpdf.getCropBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@) Cpdf.getCropBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@)
These functions get a box given the document, page number, min x, max x,
min y, max y in points. Only succeeds if such a box exists, as checked by
hasBox.
Cpdf.getTrimBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@) Cpdf.getTrimBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@)
These functions get a box given the document, page number, min x, max x,
min y, max y in points. Only succeeds if such a box exists, as checked by
hasBox.
Cpdf.getArtBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@) Cpdf.getArtBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@)
These functions get a box given the document, page number, min x, max x,
min y, max y in points. Only succeeds if such a box exists, as checked by
hasBox.
Cpdf.getBleedBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@) Cpdf.getBleedBox(Cpdf.Pdf, Int32, Double@, Double@, Double@, Double@)
These functions get a box given the document, page number, min x, max x, These functions get a box given the document, page number, min x, max x,
@ -192,24 +175,12 @@ hasBox.
Cpdf.setMediabox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double) Cpdf.setMediabox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double)
These functions set a box given the document, page range, min x, max x,
min y, max y in points.
Cpdf.setCropBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double) Cpdf.setCropBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double)
These functions set a box given the document, page range, min x, max x,
min y, max y in points.
Cpdf.setTrimBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double) Cpdf.setTrimBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double)
These functions set a box given the document, page range, min x, max x,
min y, max y in points.
Cpdf.setArtBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double) Cpdf.setArtBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double)
These functions set a box given the document, page range, min x, max x,
min y, max y in points.
Cpdf.setBleedBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double) Cpdf.setBleedBox(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double)
These functions set a box given the document, page range, min x, max x, These functions set a box given the document, page range, min x, max x,
@ -317,18 +288,15 @@ Sets the display doc title flag.
Cpdf.openAtPage(Cpdf.Pdf, Boolean, Int32) Cpdf.openAtPage(Cpdf.Pdf, Boolean, Int32)
Sets the PDF to open, possibly with Sets the PDF to open, possibly with zoom-to-fit, at the given page number.
zoom-to-fit, at the given page number.
Cpdf.setMetadataFromFile(Cpdf.Pdf, String) Cpdf.setMetadataFromFile(Cpdf.Pdf, String)
Sets the XMP metadata of a Sets the XMP metadata of a document, given a file name.
document, given a file name.
Cpdf.setMetadataFromByteArray(Cpdf.Pdf, Byte[]) Cpdf.setMetadataFromByteArray(Cpdf.Pdf, Byte[])
Sets the XMP metadata from Sets the XMP metadata from an array of bytes.
an array of bytes.
Cpdf.removeMetadata(Cpdf.Pdf) Cpdf.removeMetadata(Cpdf.Pdf)
@ -345,9 +313,8 @@ existing metadata in the document.
Cpdf.setMetadataDate(Cpdf.Pdf, String) Cpdf.setMetadataDate(Cpdf.Pdf, String)
Sets the metadata date for a PDF. The date Sets the metadata date for a PDF. The date is given in PDF date format -- cpdf
is given in PDF date format -- cpdf will convert it to XMP format. The will convert it to XMP format. The date 'now' means now.
date 'now' means now.
Cpdf.PageLabelStyle Cpdf.PageLabelStyle
@ -373,10 +340,12 @@ Cpdf.PageLabelStyle.LowercaseLetters
a, b, c... a, b, c...
Cpdf.addPageLabels(Cpdf.Pdf, Cpdf.PageLabelStyle, String, Int32, List{Int32}, Boolean) Cpdf.addPageLabels(Cpdf.Pdf, Cpdf.PageLabelStyle, String, Int32, List{Int32},
Boolean)
Adds page labels. The prefix is prefix text for each label. The range is the page range the Adds page labels. The prefix is prefix text for each label. The range is the
labels apply to. Offset can be used to shift the numbering up or down. page range the labels apply to. Offset can be used to shift the numbering up or
down.
Cpdf.removePageLabels(Cpdf.Pdf) Cpdf.removePageLabels(Cpdf.Pdf)
@ -384,8 +353,7 @@ Removes the page labels from the document.
Cpdf.getPageLabelStringForPage(Cpdf.Pdf, Int32) Cpdf.getPageLabelStringForPage(Cpdf.Pdf, Int32)
Calculates the full label Calculates the full label string for a given page, and returns it.
string for a given page, and returns it.
Cpdf.startGetPageLabels(Cpdf.Pdf) Cpdf.startGetPageLabels(Cpdf.Pdf)
@ -398,6 +366,3 @@ Cpdf.getPageLabelOffset(Int32)
Cpdf.getPageLabelRange(Int32) Cpdf.getPageLabelRange(Int32)
Cpdf.endGetPageLabels Cpdf.endGetPageLabels
Cpdf.dummych12

View File

@ -2,18 +2,16 @@ CHAPTER 12. File Attachments
Cpdf.attachFile(String, Cpdf.Pdf) Cpdf.attachFile(String, Cpdf.Pdf)
Attaches a file to the pdf. It is attached Attaches a file to the pdf. It is attached at document level.
at document level.
Cpdf.attachFileToPage(String, Cpdf.Pdf, Int32) Cpdf.attachFileToPage(String, Cpdf.Pdf, Int32)
Attaches a file, given Attaches a file, given its file name, pdf, and the page number to which it
its file name, pdf, and the page number to which it should be attached. should be attached.
Cpdf.attachFileFromMemory(Byte[], String, Cpdf.Pdf) Cpdf.attachFileFromMemory(Byte[], String, Cpdf.Pdf)
Attaches data from Attaches data from memory, just like attachFile.
memory, just like attachFile.
Cpdf.attachFileToPageFromMemory(Byte[], String, Cpdf.Pdf, Int32) Cpdf.attachFileToPageFromMemory(Byte[], String, Cpdf.Pdf, Int32)
@ -25,17 +23,12 @@ Removes all page- and document-level attachments from a document.
Cpdf.startGetAttachments(Cpdf.Pdf) Cpdf.startGetAttachments(Cpdf.Pdf)
Lists information about attachments. Call startGetAttachments(pdf)
first, then numberGetAttachments to find out how many there are. Then
getAttachmentName etc. to return each one 0...(n - 1). Finally, call
endGetAttachments to clean up.
Cpdf.numberGetAttachments Cpdf.numberGetAttachments
Lists information about attachments. Call startGetAttachments(pdf) Lists information about attachments. Call startGetAttachments(pdf) first, then
first, then numberGetAttachments to find out how many there are. Then numberGetAttachments to find out how many there are. Then getAttachmentName
getAttachmentName etc. to return each one 0...(n - 1). Finally, call etc. to return each one 0...(n - 1). Finally, call endGetAttachments to clean
endGetAttachments to clean up. up.
Cpdf.getAttachmentName(Int32) Cpdf.getAttachmentName(Int32)
@ -52,6 +45,3 @@ Gets the attachment data itself.
Cpdf.endGetAttachments Cpdf.endGetAttachments
Cleans up after getting attachments. Cleans up after getting attachments.
Cpdf.dummych13

View File

@ -2,74 +2,18 @@ CHAPTER 13. Images.
Cpdf.startGetImageResolution(Cpdf.Pdf, Double) Cpdf.startGetImageResolution(Cpdf.Pdf, Double)
Gets image data, including resolution at all points of use. Call
startGetImageResolution(pdf, min_required_resolution) will begin the
process of obtaining data on all image uses below min_required_resolution,
returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up.
Cpdf.getImageResolutionPageNumber(Int32) Cpdf.getImageResolutionPageNumber(Int32)
Gets image data, including resolution at all points of use. Call
startGetImageResolution(pdf, min_required_resolution) will begin the
process of obtaining data on all image uses below min_required_resolution,
returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up.
Cpdf.getImageResolutionImageName(Int32) Cpdf.getImageResolutionImageName(Int32)
Gets image data, including resolution at all points of use. Call
startGetImageResolution(pdf, min_required_resolution) will begin the
process of obtaining data on all image uses below min_required_resolution,
returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up.
Cpdf.getImageResolutionXPixels(Int32) Cpdf.getImageResolutionXPixels(Int32)
Gets image data, including resolution at all points of use. Call
startGetImageResolution(pdf, min_required_resolution) will begin the
process of obtaining data on all image uses below min_required_resolution,
returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up.
Cpdf.getImageResolutionYPixels(Int32) Cpdf.getImageResolutionYPixels(Int32)
Gets image data, including resolution at all points of use. Call
startGetImageResolution(pdf, min_required_resolution) will begin the
process of obtaining data on all image uses below min_required_resolution,
returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up.
Cpdf.getImageResolutionXRes(Int32) Cpdf.getImageResolutionXRes(Int32)
Gets image data, including resolution at all points of use. Call
startGetImageResolution(pdf, min_required_resolution) will begin the
process of obtaining data on all image uses below min_required_resolution,
returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up.
Cpdf.getImageResolutionYRes(Int32) Cpdf.getImageResolutionYRes(Int32)
Gets image data, including resolution at all points of use. Call
startGetImageResolution(pdf, min_required_resolution) will begin the
process of obtaining data on all image uses below min_required_resolution,
returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up.
Cpdf.endGetImageResolution Cpdf.endGetImageResolution
Gets image data, including resolution at all points of use. Call Gets image data, including resolution at all points of use. Call
@ -79,6 +23,3 @@ returning the total number. So, to return all image uses, specify a very
high min_required_resolution. Then, call the other functions giving a high min_required_resolution. Then, call the other functions giving a
serial number 0..n - 1, to retrieve the data. Finally, call serial number 0..n - 1, to retrieve the data. Finally, call
endGetImageResolution to clean up. endGetImageResolution to clean up.
Cpdf.dummych14

View File

@ -2,59 +2,23 @@ CHAPTER 14. Fonts.
Cpdf.startGetFontInfo(Cpdf.Pdf) Cpdf.startGetFontInfo(Cpdf.Pdf)
Retrieves font information. First, call startGetFontInfo(pdf). Now
call numberFonts to return the number of fonts. For each font, call
one or more of getFontPage, getFontName, getFontType, and
getFontEncoding giving a serial number 0..n - 1 to
return information. Finally, call endGetFontInfo to clean up.
Cpdf.numberFonts Cpdf.numberFonts
Retrieves font information. First, call startGetFontInfo(pdf). Now
call numberFonts to return the number of fonts. For each font, call
one or more of getFontPage, getFontName, getFontType, and
getFontEncoding giving a serial number 0..n - 1 to
return information. Finally, call endGetFontInfo to clean up.
Cpdf.getFontPage(Int32) Cpdf.getFontPage(Int32)
Retrieves font information. First, call startGetFontInfo(pdf). Now
call numberFonts to return the number of fonts. For each font, call
one or more of getFontPage, getFontName, getFontType, and
getFontEncoding giving a serial number 0..n - 1 to
return information. Finally, call endGetFontInfo to clean up.
Cpdf.getFontName(Int32) Cpdf.getFontName(Int32)
Retrieves font information. First, call startGetFontInfo(pdf). Now
call numberFonts to return the number of fonts. For each font, call
one or more of getFontPage, getFontName, getFontType, and
getFontEncoding giving a serial number 0..n - 1 to
return information. Finally, call endGetFontInfo to clean up.
Cpdf.getFontType(Int32) Cpdf.getFontType(Int32)
Retrieves font information. First, call startGetFontInfo(pdf). Now
call numberFonts to return the number of fonts. For each font, call
one or more of getFontPage, getFontName, getFontType, and
getFontEncoding giving a serial number 0..n - 1 to
return information. Finally, call endGetFontInfo to clean up.
Cpdf.getFontEncoding(Int32) Cpdf.getFontEncoding(Int32)
Retrieves font information. First, call startGetFontInfo(pdf). Now
call numberFonts to return the number of fonts. For each font, call
one or more of getFontPage, getFontName, getFontType, and
getFontEncoding giving a serial number 0..n - 1 to
return information. Finally, call endGetFontInfo to clean up.
Cpdf.endGetFontInfo Cpdf.endGetFontInfo
Retrieves font information. First, call startGetFontInfo(pdf). Now Retrieves font information. First, call startGetFontInfo(pdf). Now call
call numberFonts to return the number of fonts. For each font, call numberFonts to return the number of fonts. For each font, call one or more of
one or more of getFontPage, getFontName, getFontType, and getFontPage, getFontName, getFontType, and getFontEncoding giving a serial
getFontEncoding giving a serial number 0..n - 1 to number 0..n - 1 to return information. Finally, call endGetFontInfo to clean
return information. Finally, call endGetFontInfo to clean up. up.
Cpdf.removeFonts(Cpdf.Pdf) Cpdf.removeFonts(Cpdf.Pdf)
@ -62,9 +26,5 @@ Removes all font data from a file.
Cpdf.copyFont(Cpdf.Pdf, Cpdf.Pdf, List{Int32}, Int32, String) Cpdf.copyFont(Cpdf.Pdf, Cpdf.Pdf, List{Int32}, Int32, String)
Copies the given font Copies the given font from the given page in the 'from' PDF to every page in
from the given page in the 'from' PDF to every page in the 'to' PDF. The the 'to' PDF. The new font is stored under its font name.
new font is stored under its font name.
Cpdf.dummych15

View File

@ -2,14 +2,13 @@ CHAPTER 15. PDF and JSON
Cpdf.outputJSON(String, Boolean, Boolean, Boolean, Cpdf.Pdf) Cpdf.outputJSON(String, Boolean, Boolean, Boolean, Cpdf.Pdf)
Outputs a PDF Outputs a PDF in JSON format to the given filename. If parse_content is true,
in JSON format to the given filename. If parse_content is true, page content page content is parsed. If no_stream_data is true, all stream data is
is parsed. If no_stream_data is true, all stream data is suppressed entirely. suppressed entirely.
Cpdf.outputJSONMemory(Cpdf.Pdf, Boolean, Boolean, Boolean) Cpdf.outputJSONMemory(Cpdf.Pdf, Boolean, Boolean, Boolean)
Like Like outputJSON, but it writes to a byte array in memory.
outputJSON, but it writes to a byte array in memory.
Cpdf.fromJSON(String) Cpdf.fromJSON(String)
@ -18,6 +17,3 @@ Loads a PDF from a JSON file given its filename.
Cpdf.fromJSONMemory(Byte[]) Cpdf.fromJSONMemory(Byte[])
Loads a PDF from a JSON file in memory Loads a PDF from a JSON file in memory
Cpdf.dummych16

View File

@ -2,8 +2,8 @@ CHAPTER 16. Optional Content Groups
Cpdf.startGetOCGList(Cpdf.Pdf) Cpdf.startGetOCGList(Cpdf.Pdf)
Begins retrieving optional content group names. The serial number 0..n - 1 Begins retrieving optional content group names. The serial number 0..n - 1 is
is returned. returned.
Cpdf.OCGListEntry(Int32) Cpdf.OCGListEntry(Int32)
@ -23,10 +23,6 @@ Ensures that every optional content group appears in the OCG order list.
Cpdf.OCGCoalesce(Cpdf.Pdf) Cpdf.OCGCoalesce(Cpdf.Pdf)
Coalesces optional content groups. For example, if we merge or stamp two Coalesces optional content groups. For example, if we merge or stamp two files
files both with an OCG called "Layer 1", we will have two different optional both with an OCG called "Layer 1", we will have two different optional content
content groups. This function will merge the two into a single optional groups. This function will merge the two into a single optional content group.
content group.
Cpdf.dummych17

View File

@ -2,25 +2,19 @@ CHAPTER 17. Creating New PDFs
Cpdf.blankDocument(Double, Double, Int32) Cpdf.blankDocument(Double, Double, Int32)
Creates a blank document with Creates a blank document with pages of the given width (in points), height (in
pages of the given width (in points), height (in points), and number of points), and number of pages.
pages.
Cpdf.blankDocumentPaper(Cpdf.Papersize, Int32) Cpdf.blankDocumentPaper(Cpdf.Papersize, Int32)
Makes a blank document given Makes a blank document given a page size and number of pages.
a page size and number of pages.
Cpdf.textToPDF(Double, Double, Cpdf.Font, Double, String) Cpdf.textToPDF(Double, Double, Cpdf.Font, Double, String)
Typesets a UTF8 text file Typesets a UTF8 text file ragged right on a page of size w * h in points in the
ragged right on a page of size w * h in points in the given font and font given font and font size.
size.
Cpdf.textToPDFPaper(Cpdf.Papersize, Cpdf.Font, Double, String) Cpdf.textToPDFPaper(Cpdf.Papersize, Cpdf.Font, Double, String)
Typesets a UTF8 text file Typesets a UTF8 text file ragged right on a page of the given size in the given
ragged right on a page of the given size in the given font and font size. font and font size.
Cpdf.dummych18

View File

@ -2,13 +2,12 @@ CHAPTER 18. Miscellaneous
Cpdf.draft(Cpdf.Pdf, List{Int32}, Boolean) Cpdf.draft(Cpdf.Pdf, List{Int32}, Boolean)
Removes images on the given pages, replacing Removes images on the given pages, replacing them with crossed boxes if 'boxes'
them with crossed boxes if 'boxes' is true. is true.
Cpdf.removeAllText(Cpdf.Pdf, List{Int32}) Cpdf.removeAllText(Cpdf.Pdf, List{Int32})
Removes all text from the given pages in a Removes all text from the given pages in a given document.
given document.
Cpdf.blackText(Cpdf.Pdf, List{Int32}) Cpdf.blackText(Cpdf.Pdf, List{Int32})
@ -24,8 +23,8 @@ Blackens all fills on the given pages.
Cpdf.thinLines(Cpdf.Pdf, List{Int32}, Double) Cpdf.thinLines(Cpdf.Pdf, List{Int32}, Double)
Thickens every line less than Thickens every line less than min_thickness to min_thickness. Thickness given
min_thickness to min_thickness. Thickness given in points. in points.
Cpdf.copyId(Cpdf.Pdf, Cpdf.Pdf) Cpdf.copyId(Cpdf.Pdf, Cpdf.Pdf)
@ -41,36 +40,31 @@ Sets the minor version number of a document.
Cpdf.setFullVersion(Cpdf.Pdf, Int32, Int32) Cpdf.setFullVersion(Cpdf.Pdf, Int32, Int32)
Sets the full version Sets the full version number of a document.
number of a document.
Cpdf.removeDictEntry(Cpdf.Pdf, String) Cpdf.removeDictEntry(Cpdf.Pdf, String)
Removes any dictionary entry with the given Removes any dictionary entry with the given key anywhere in the document.
key anywhere in the document.
Cpdf.removeDictEntrySearch(Cpdf.Pdf, String, String) Cpdf.removeDictEntrySearch(Cpdf.Pdf, String, String)
Removes any dictionary entry Removes any dictionary entry with the given key whose value matches the given
with the given key whose value matches the given search term. search term.
Cpdf.replaceDictEntry(Cpdf.Pdf, String, String) Cpdf.replaceDictEntry(Cpdf.Pdf, String, String)
Replaces the value associated with Replaces the value associated with the given key.
the given key.
Cpdf.replaceDictEntrySearch(Cpdf.Pdf, String, String, String) Cpdf.replaceDictEntrySearch(Cpdf.Pdf, String, String, String)
Replaces the value Replaces the value associated with the given key if the existing value matches
associated with the given key if the existing value matches the search term. the search term.
Cpdf.removeClipping(Cpdf.Pdf, List{Int32}) Cpdf.removeClipping(Cpdf.Pdf, List{Int32})
Removes all clipping from pages in the Removes all clipping from pages in the given range.
given range.
Cpdf.getDictEntries(Cpdf.Pdf, String) Cpdf.getDictEntries(Cpdf.Pdf, String)
Returns a JSON array containing any Returns a JSON array containing any and all values associated with the given
and all values associated with the given key, and fills in its length. key, and fills in its length.