diff --git a/dotnetsplits/c00.tex b/dotnetsplits/c00.tex new file mode 100644 index 0000000..333950d --- /dev/null +++ b/dotnetsplits/c00.tex @@ -0,0 +1,26 @@ +Cpdf + +The Coherent PDF Library for .NET + +Cpdf.Pdf + +PDF document. Use the 'using' keyword, or call Dispose to make sure PDFs are deallocated. + +Cpdf.Pdf.Dispose + +Force disposal of the PDF. + +Cpdf.Pdf.Finalize + +Class destructor + +Cpdf.CPDFError + +Any function in this library may raise the CPDFError exception. + +Cpdf.CPDFError.#ctor(String) + +Construct a CPDFError which carries a string. + +Cpdf.dummych0 + diff --git a/dotnetsplits/c01.tex b/dotnetsplits/c01.tex new file mode 100644 index 0000000..202b1d1 --- /dev/null +++ b/dotnetsplits/c01.tex @@ -0,0 +1,58 @@ +CHAPTER 0. Preliminaries + +Cpdf.startup + + +Initialises the library. Must be called before any other function. + + +Cpdf.version + + +Returns a string giving the version number of the CPDF library. + + +Cpdf.setFast + + +Some operations have a fast mode. The default is 'slow' mode, which works +even on old-fashioned files. For more details, see section 1.13 of the +CPDF manual. This function sets the mode to fast globally. + + +Cpdf.setSlow + + +Some operations have a fast mode. The default is 'slow' mode, which works +even on old-fashioned files. For more details, see section 1.13 of the +CPDF manual. This functions sets the mode to slow globally. + + +Cpdf.lastError + + +Not to be called directly. Errors in .NET cpdf are raised by exceptions. + + +Cpdf.lastErrorString + + +Not to be called directly. Errors in .NET cpdf are raised by exceptions. + + +Cpdf.clearError + + +Not to be called directly. Errors in .NET cpdf are raised by exceptions. + + +Cpdf.onExit + + +A debug function which prints some information about +resource usage. This can be used to detect if PDFs or ranges are being +deallocated properly. Contrary to its name, it may be run at any time. + + +Cpdf.dummych1 + diff --git a/dotnetsplits/c02.tex b/dotnetsplits/c02.tex new file mode 100644 index 0000000..fa1a17e --- /dev/null +++ b/dotnetsplits/c02.tex @@ -0,0 +1,373 @@ +CHAPTER 1. Basics + +Cpdf.fromFile(String, String) + + +Loads a PDF file from a given file. Supply +a user password (possibly blank) in case the file is encrypted. It won't be +decrypted, but sometimes the password is needed just to load the file. + + +Cpdf.fromFileLazy(String, String) + + +Loads a PDF from a file, doing only minimal +parsing. The objects will be read and parsed when they are actually +needed. Use this when the whole file won't be required. Also supply a user +password (possibly blank) in case the file is encrypted. It won't be +decrypted, but sometimes the password is needed just to load the file. + + +Cpdf.fromMemory(Byte[], String) + + +Loads a file from memory given any user password. + + +Cpdf.fromMemoryLazy(IntPtr, Int32, String) + + +Loads a file from memory, given a +pointer and a length, and the user password, but lazily like +fromFileLazy. The caller must use AllocHGlobal / Marshal.Copy / FreeHGlobal +itself. It must not free the memory until the PDF is also gone. + + +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) + + +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) + + +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 + + +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.ptOfCm(Double) + + +Converts a figure in centimetres to points (72 points to 1 inch) + + +Cpdf.ptOfMm(Double) + + +Converts a figure in millimetres to points (72 points to 1 inch) + + +Cpdf.ptOfIn(Double) + + +Converts a figure in inches to points (72 points to 1 inch) + + +Cpdf.cmOfPt(Double) + + +Converts a figure in points to centimetres (72 points to 1 inch) + + +Cpdf.mmOfPt(Double) + + +Converts a figure in points to millimetres (72 points to 1 inch) + + +Cpdf.inOfPt(Double) + + +Converts a figure in points to inches (72 points to 1 inch) + + +Cpdf.parsePagespec(Cpdf.Pdf, String) + + +Parses a page specification with reference +to a given PDF (the PDF is supplied so that page ranges which reference +pages which do not exist are rejected). + + +Cpdf.validatePagespec(String) + + +Validates a page specification so far as is +possible in the absence of the actual document. Result is true if valid. + + +Cpdf.stringOfPagespec(Cpdf.Pdf, List{Int32}) + + +Builds a page specification from a page +range. For example, the range containing 1, 2, 3, 6, 7, 8 in a document of 8 +pages might yield "1-3, 6-end" + + +Cpdf.blankRange + + +Creates a range with no pages in. + + +Cpdf.range(Int32, Int32) + + +Builds a range from one page to another inclusive. For +example, range(3, 7) gives the range 3, 4, 5, 6, 7 + + +Cpdf.all(Cpdf.Pdf) + + +The range containing all the pages in a given document. + + +Cpdf.even(List{Int32}) + + +Makes a range which contains just the even pages of +another range. + + +Cpdf.odd(List{Int32}) + + +Makes a range which contains just the odd pages of another +range. + + +Cpdf.rangeUnion(List{Int32}, List{Int32}) + + +Makes the union of two ranges giving a range +containing the pages in range a and range b. + + +Cpdf.difference(List{Int32}, List{Int32}) + + +Makes the difference of two ranges, giving a range +containing all the pages in a except for those which are also in b. + + +Cpdf.removeDuplicates(List{Int32}) + + +Deduplicates a range, making a new one. + + +Cpdf.rangeLength(List{Int32}) + + +Gives the number of pages in a range. + + +Cpdf.rangeGet(List{Int32}, Int32) + + +Gets the page number at position n in a range, +where n runs from 0 to rangeLength - 1. + + +Cpdf.rangeAdd(List{Int32}, Int32) + + +Adds the page to a range, if it is not already +there. + + +Cpdf.isInRange(List{Int32}, Int32) + + +Returns true if the page is in the range, +false otherwise. + + +Cpdf.pages(Cpdf.Pdf) + + +Returns the number of pages in a PDF. + + +Cpdf.pagesFast(String, String) + + +Returns the number of pages in a given +PDF, with given user password. It tries to do this as fast as +possible, without loading the whole file. + + +Cpdf.toFile(Cpdf.Pdf, String, Boolean, Boolean) + + +Writes the file to a given +filename. If linearize is true, it will be linearized if a linearizer is +available. If make_id is true, it will be given a new ID. + + +Cpdf.toFileExt(Cpdf.Pdf, String, Boolean, Boolean, Boolean, Boolean, Boolean) + + +Writes the file to a given filename. If +make_id is true, it will be given a new ID. If preserve_objstm is true, +existing object streams will be preserved. If generate_objstm is true, +object streams will be generated even if not originally present. If +compress_objstm is true, object streams will be compressed (what we +usually want). WARNING: the pdf argument will be invalid after this call, +and should be not be used again. + + +Cpdf.toMemory(Cpdf.Pdf, Boolean, Boolean) + + +Writes a PDF file +and returns as an array of bytes. + + +Cpdf.isEncrypted(Cpdf.Pdf) + + +Returns true if a documented is encrypted, false +otherwise. + + +Cpdf.decryptPdf(Cpdf.Pdf, String) + + +Attempts to decrypt a PDF using the given +user password. An exception is raised if the decryption fails. + + +Cpdf.decryptPdfOwner(Cpdf.Pdf, String) + + +Attempts to decrypt a PDF using the +given owner password. Raises an exception if the decryption fails. + + +Cpdf.Permission + +Permissions + +Cpdf.Permission.NoEdit + +Cannot edit the document + +Cpdf.Permission.NoPrint + +Cannot print the document + +Cpdf.Permission.NoCopy + +Cannot copy the document + +Cpdf.Permission.NoAnnot + +Cannot annotate the document + +Cpdf.Permission.NoForms + +Cannot edit forms in the document + +Cpdf.Permission.NoExtract + +Cannot extract information + +Cpdf.Permission.NoAssemble + +Cannot assemble into a bigger document + +Cpdf.Permission.NoHqPrint + +Cannot print high quality + +Cpdf.EncryptionMethod + +Encryption methods + +Cpdf.EncryptionMethod.Pdf40bit + +40 bit RC4 encryption + +Cpdf.EncryptionMethod.Pdf128bit + +128 bit RC4 encryption + +Cpdf.EncryptionMethod.Aes128bitfalse + +128 bit AES encryption, do not encrypt metadata + +Cpdf.EncryptionMethod.Aes128bittrue + +128 bit AES encryption, encrypt metadata + +Cpdf.EncryptionMethod.Aes256bitfalse + +Deprecated. Do not use for new files + +Cpdf.EncryptionMethod.Aes256bittrue + +Deprecated. Do not use for new files + +Cpdf.EncryptionMethod.Aes256bitisofalse + +256 bit AES encryption, do not encrypt metadata + +Cpdf.EncryptionMethod.Aes256bitiosotrue + +256 bit AES encryption, encrypt metadata + +Cpdf.toFileEncrypted(Cpdf.Pdf, Cpdf.EncryptionMethod, List{Cpdf.Permission}, String, String, Boolean, Boolean, String) + + +Writes a file as encrypted. + + +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 +pdf argument will be invalid after this call, and should not be used again. + + +Cpdf.hasPermission(Cpdf.Pdf, Cpdf.Permission) + + +Returns true if the given permission +(restriction) is present. + + +Cpdf.encryptionKind(Cpdf.Pdf) + + +Returns the encryption method currently in use on +a document. + + +Cpdf.dummych2 + diff --git a/dotnetsplits/c03.tex b/dotnetsplits/c03.tex new file mode 100644 index 0000000..05d250a --- /dev/null +++ b/dotnetsplits/c03.tex @@ -0,0 +1,36 @@ +CHAPTER 2. Merging and Splitting + +Cpdf.mergeSimple(List{Cpdf.Pdf}) + + +Given a list of PDFs, +merges the files into a new one, which is returned. + + +Cpdf.merge(List{Cpdf.Pdf}, Boolean, Boolean) + + +Merges the +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 the source documents for merging originate from the same source. + + +Cpdf.mergeSame(List{Cpdf.Pdf}, Boolean, Boolean, List{List{Int32}}) + + +The same as merge, except that it has an additional +argument - a list of page ranges. This is used to select the pages to +pick from each PDF. This avoids duplication of information when multiple +discrete parts of a source PDF are included. + + +Cpdf.selectPages(Cpdf.Pdf, List{Int32}) + + +Returns a new document which just those pages +in the page range. + + +Cpdf.dummych3 + diff --git a/dotnetsplits/c04.tex b/dotnetsplits/c04.tex new file mode 100644 index 0000000..be7abdb --- /dev/null +++ b/dotnetsplits/c04.tex @@ -0,0 +1,287 @@ +CHAPTER 3. Pages + +Cpdf.scalePages(Cpdf.Pdf, List{Int32}, Double, Double) + + +Scales the page dimensions +and content by the given scale, about (0, 0). Other boxes (crop etc. are +altered as appropriate) + + +Cpdf.scaleToFit(Cpdf.Pdf, List{Int32}, Double, Double, Double) + + +Scales the content to fit +new page dimensions (width x height) multiplied by scale (typically 1.0). +Other boxes (crop etc. are altered as appropriate) + + +Cpdf.Papersize + +Built-in paper sizes + +Cpdf.Papersize.A0portrait + +A0 Portrait paper + +Cpdf.Papersize.A1portrait + +A1 Portrait paper + +Cpdf.Papersize.A2portrait + +A2 Portrait paper + +Cpdf.Papersize.A3portrait + +A3 Portrait paper + +Cpdf.Papersize.A4portrait + +A4 Portrait paper + +Cpdf.Papersize.A5portrait + +A5 Portrait paper + +Cpdf.Papersize.A0landscape + +A0 Landscape paper + +Cpdf.Papersize.A1landscape + +A1 Landscape paper + +Cpdf.Papersize.A2landscape + +A2 Landscape paper + +Cpdf.Papersize.A3landscape + +A3 Landscape paper + +Cpdf.Papersize.A4landscape + +A4 Landscape paper + +Cpdf.Papersize.A5landscape + +A5 Landscape paper + +Cpdf.Papersize.Usletterportrait + +US Letter Portrait paper + +Cpdf.Papersize.Usletterlandscape + +US Letter Landscape paper + +Cpdf.Papersize.Uslegalportrait + +US Legal Portrait paper + +Cpdf.Papersize.Uslegallandscape + +US Legal Landscape paper + +Cpdf.scaleToFitPaper(Cpdf.Pdf, List{Int32}, Cpdf.Papersize, Double) + + +Scales the page content +to fit the given page size, possibly multiplied by scale (typically 1.0) + + +Cpdf.Anchor + +Position anchors + +Cpdf.Anchor.PosCentre + +Absolute centre + +Cpdf.Anchor.PosLeft + +Absolute left + +Cpdf.Anchor.PosRight + +Absolute right + +Cpdf.Anchor.Top + +The top centre of the page + +Cpdf.Anchor.TopLeft + +The top left of the page + +Cpdf.Anchor.TopRight + +The top right of the page + +Cpdf.Anchor.Left + +The left hand side of the page, halfway down + +Cpdf.Anchor.BottomLeft + +The bottom left of the page + +Cpdf.Anchor.Bottom + +The bottom middle of the page + +Cpdf.Anchor.BottomRight + +The bottom right of the page + +Cpdf.Anchor.Right + +The right hand side of the page, halfway down + +Cpdf.Anchor.Diagonal + +Diagonal, bottom left to top right + +Cpdf.Anchor.ReverseDiagonal + +Diagonal, top left to bottom right + +Cpdf.Position + + + +Cpdf.Position.anchor + +Position anchor + +Cpdf.Position.coord1 + +Parameter one + +Cpdf.Position.coord2 + +Parameter two + +Cpdf.Position.#ctor(Cpdf.Anchor) + +Build a position with zero parameters + +Cpdf.Position.#ctor(Cpdf.Anchor, Double) + +Build a position with one parameter + +Cpdf.Position.#ctor(Cpdf.Anchor, Double, Double) + +Build a position with two parameters + +Cpdf.scaleContents(Cpdf.Pdf, List{Int32}, Cpdf.Position, Double) + + +Scales the contents of the +pages in the range about the point given by the position, by the +scale given. + + +Cpdf.shiftContents(Cpdf.Pdf, List{Int32}, Double, Double) + + +Shifts the content of the pages in +the range. + + +Cpdf.rotate(Cpdf.Pdf, List{Int32}, Int32) + + +Changes the viewing rotation to an +absolute value. Appropriate rotations are 0, 90, 180, 270. + + +Cpdf.rotateBy(Cpdf.Pdf, List{Int32}, Int32) + + +Rotates the content about the +centre of the page by the given number of degrees, in a clockwise +direction. + + +Cpdf.rotateContents(Cpdf.Pdf, List{Int32}, Double) + + +Rotates the content about the +centre of the page by the given number of degrees, in a clockwise +direction. + + +Cpdf.upright(Cpdf.Pdf, List{Int32}) + + +Changes the viewing rotation of the pages in the +range, counter-rotating the dimensions and content such that there is no +visual change. + + +Cpdf.hFlip(Cpdf.Pdf, List{Int32}) + + +Flips horizontally the pages in the range. + + +Cpdf.vFlip(Cpdf.Pdf, List{Int32}) + + +Flips vertically the pages in the range. + + +Cpdf.crop(Cpdf.Pdf, List{Int32}, Double, Double, Double, Double) + + +Crops a page, replacing any existing +crop box. The dimensions are in points. + + +Cpdf.removeCrop(Cpdf.Pdf, List{Int32}) + + +Removes any crop box from pages in the range. + + +Cpdf.removeTrim(Cpdf.Pdf, List{Int32}) + + +Removes any trim box from pages in the range. + + +Cpdf.removeArt(Cpdf.Pdf, List{Int32}) + + +Removes any art box from pages in the range. + + +Cpdf.removeBleed(Cpdf.Pdf, List{Int32}) + + +Removes any bleed box from pages in the range. + + +Cpdf.trimMarks(Cpdf.Pdf, List{Int32}) + + +Adds trim marks to the given pages, if the +trimbox exists. + + +Cpdf.showBoxes(Cpdf.Pdf, List{Int32}) + + +Shows the boxes on the given pages, for debug. + + +Cpdf.hardBox(Cpdf.Pdf, List{Int32}, String) + + +Makes a given box a 'hard box' i.e clips it explicitly. + + +Cpdf.dummych4 + diff --git a/dotnetsplits/c05.tex b/dotnetsplits/c05.tex new file mode 100644 index 0000000..a7f9edd --- /dev/null +++ b/dotnetsplits/c05.tex @@ -0,0 +1,4 @@ +CHAPTER 4. Encryption + +Cpdf.dummych5 + diff --git a/dotnetsplits/c06.tex b/dotnetsplits/c06.tex new file mode 100644 index 0000000..01ec54d --- /dev/null +++ b/dotnetsplits/c06.tex @@ -0,0 +1,24 @@ +CHAPTER 5. Compression + +Cpdf.compress(Cpdf.Pdf) + + +Compresses any uncompressed streams in the given PDF +using the Flate algorithm. + + +Cpdf.decompress(Cpdf.Pdf) + + +Decompresses any streams in the given PDF, so long as +the compression method is supported. + + +Cpdf.squeezeInMemory(Cpdf.Pdf) + + +Squeezes a pdf in memory. + + +Cpdf.dummych6 + diff --git a/dotnetsplits/c07.tex b/dotnetsplits/c07.tex new file mode 100644 index 0000000..032428a --- /dev/null +++ b/dotnetsplits/c07.tex @@ -0,0 +1,112 @@ +CHAPTER 6. Bookmarks + +Cpdf.startGetBookmarkInfo(Cpdf.Pdf) + + +Starts the bookmark retrieval process for a +given PDF. + + +Cpdf.numberBookmarks + + +Gets the number of bookmarks for the PDF given to +startGetBookmarkInfo. + + +Cpdf.getBookmarkLevel(Int32) + + +Gets the bookmark level for the given bookmark +(0...(n - 1)). + + +Cpdf.getBookmarkPage(Cpdf.Pdf, Int32) + + +Gets the bookmark target page for the given PDF +(which must be the same as the PDF passed to startSetBookmarkInfo) +and bookmark (0...(n - 1)). + + +Cpdf.getBookmarkText(Int32) + + +Returns the text of bookmark (0...(n - 1)). + + +Cpdf.getBookmarkOpenStatus(Int32) + + +True if the bookmark is open. + + +Cpdf.endGetBookmarkInfo + + +Ends the bookmark retrieval process, cleaning up. + + +Cpdf.startSetBookmarkInfo(Int32) + + +Starts the bookmark setting process for n +bookmarks. + + +Cpdf.setBookmarkLevel(Int32, Int32) + + +Set bookmark level for the given bookmark +(0...(n - 1)). + + +Cpdf.setBookmarkPage(Cpdf.Pdf, Int32, Int32) + + +Sets the bookmark target +page for the given PDF (which must be the same as the PDF to be passed to +endSetBookmarkInfo) and bookmark (0...(n - 1)). + + +Cpdf.setBookmarkOpenStatus(Int32, Boolean) + + +Sets the open status of bookmark (0...(n - 1)). + + +Cpdf.setBookmarkText(Int32, String) + + +Sets the text of bookmark (0...(n - 1)). + + +Cpdf.endSetBookmarkInfo(Cpdf.Pdf) + + +Ends the bookmark setting process, writing the +bookmarks to the given PDF. + + +Cpdf.getBookmarksJSON(Cpdf.Pdf) + + +Returns the bookmark data in JSON format. + + +Cpdf.setBookmarksJSON(Cpdf.Pdf, Byte[]) + + +Sets the bookmarks from JSON bookmark data. + + +Cpdf.tableOfContents(Cpdf.Pdf, Cpdf.Font, Double, String, Boolean) + + +Typesets a table +of contents from existing bookmarks and prepends it to the document. If +bookmark is set, the table of contents gets its own bookmark. + + +Cpdf.dummych7 + diff --git a/dotnetsplits/c08.tex b/dotnetsplits/c08.tex new file mode 100644 index 0000000..9ba4c8f --- /dev/null +++ b/dotnetsplits/c08.tex @@ -0,0 +1,4 @@ +CHAPTER 7. Presentations + +Cpdf.dummych8 + diff --git a/dotnetsplits/c09.tex b/dotnetsplits/c09.tex new file mode 100644 index 0000000..284d431 --- /dev/null +++ b/dotnetsplits/c09.tex @@ -0,0 +1,147 @@ +CHAPTER 8. Logos, Watermarks and Stamps + +Cpdf.stampOn(Cpdf.Pdf, Cpdf.Pdf, List{Int32}) + + +Stamps stamp_pdf on top of all the +pages in the document which are in the range. The stamp is placed with its +origin at the origin of the target document. + + +Cpdf.stampUnder(Cpdf.Pdf, Cpdf.Pdf, List{Int32}) + + +Stamps stamp_pdf under all the +pages in the document which are in the range. The stamp is placed with its +origin at the origin of the target document. + + +Cpdf.stampExtended(Cpdf.Pdf, Cpdf.Pdf, List{Int32}, Boolean, Boolean, Cpdf.Position, Boolean) + + +A stamping function with extra features. - isover +true, pdf goes over pdf2, isover false, pdf goes under pdf2 - +scale_stamp_to_fit scales the stamp to fit the page - pos gives the +position to put the stamp - relative_to_cropbox: if true, pos is relative +to cropbox not mediabox. + + +Cpdf.combinePages(Cpdf.Pdf, Cpdf.Pdf) + + +Combines the PDFs page-by-page, putting +each page of 'over' over each page of 'under'. + + +Cpdf.Font + +Standard fonts + +Cpdf.Font.TimesRoman + +Times Roman + +Cpdf.Font.TimesBold + +Times Bold + +Cpdf.Font.TimesItalic + +Times Italic + +Cpdf.Font.TimesBoldItalic + +Times Bold Italic + +Cpdf.Font.Helvetica + +Helvetica + +Cpdf.Font.HelveticaBold + +Helvetica Bold + +Cpdf.Font.HelveticaOblique + +Helvetica Oblique + +Cpdf.Font.HelveticaBoldOblique + +Helvetica Bold Oblique + +Cpdf.Font.Courier + +Courier + +Cpdf.Font.CourierBold + +Courier Bold + +Cpdf.Font.CourierOblique + +Courier Oblique + +Cpdf.Font.CourierBoldOblique + +Courier Bold Oblique + +Cpdf.Justification + +Justifications + +Cpdf.Justification.LeftJustify + +Left justify + +Cpdf.Justification.CentreJustify + +Centre justify + +Cpdf.Justification.RightJustify + +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) + + +Adds text to the pages in the given range. + + +Cpdf.addTextSimple(Cpdf.Pdf, List{Int32}, String, Cpdf.Position, Cpdf.Font, Double) + + +Adds text with most parameters default. + + +Cpdf.removeText(Cpdf.Pdf, List{Int32}) + + +Removes any text added by cpdf from the +given pages. + + +Cpdf.textWidth(Cpdf.Font, String) + + +Returns the width of a given string in the given font in thousandths of a +point. + + +Cpdf.addContent(String, Boolean, Cpdf.Pdf, List{Int32}) + + +Adds page content before (if +true) or after (if false) the existing content to pages in the given range +in the given PDF. + + +Cpdf.stampAsXObject(Cpdf.Pdf, List{Int32}, Cpdf.Pdf) + + +Stamps stamp_pdf onto the pages +in the given range in pdf as a shared Form XObject. The name of the +newly-created XObject is returned. + + +Cpdf.dummych9 + diff --git a/dotnetsplits/c10.tex b/dotnetsplits/c10.tex new file mode 100644 index 0000000..38fc53a --- /dev/null +++ b/dotnetsplits/c10.tex @@ -0,0 +1,62 @@ +CHAPTER 9. Multipage facilities + +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 +to fit a page of size x * y. This is controlled by fit. Columns imposes by +columns rather than rows. rtl is right-to-left, btt bottom-to-top. Center is +unused for now. Margin is the margin around the output, spacing the spacing +between imposed inputs. + + +Cpdf.twoUp(Cpdf.Pdf) + + +Imposes a document two up. twoUpStack does so by doubling the +page size, to fit two pages on one. + + +Cpdf.twoUpStack(Cpdf.Pdf) + + +Impose a document two up. twoUpStack does so by doubling the +page size, to fit two pages on one. + + +Cpdf.padBefore(Cpdf.Pdf, List{Int32}) + + +Adds a blank page before each page in the given +range. + + +Cpdf.padAfter(Cpdf.Pdf, List{Int32}) + + +Adds a blank page after each page in the given +range. + + +Cpdf.padEvery(Cpdf.Pdf, Int32) + + +Adds a blank page after every n pages. + + +Cpdf.padMultiple(Cpdf.Pdf, Int32) + + +Adds pages at the end to pad the file to a +multiple of n pages in length. + + +Cpdf.padMultipleBefore(Cpdf.Pdf, Int32) + + +Adds pages at the beginning to pad the file to a +multiple of n pages in length. + + +Cpdf.dummych10 + diff --git a/dotnetsplits/c11.tex b/dotnetsplits/c11.tex new file mode 100644 index 0000000..bde868a --- /dev/null +++ b/dotnetsplits/c11.tex @@ -0,0 +1,10 @@ +CHAPTER 10. Annotations + +Cpdf.annotationsJSON(Cpdf.Pdf) + + +Returns the annotations from a PDF in JSON format + + +Cpdf.dummych11 + diff --git a/dotnetsplits/c12.tex b/dotnetsplits/c12.tex new file mode 100644 index 0000000..84bfca6 --- /dev/null +++ b/dotnetsplits/c12.tex @@ -0,0 +1,557 @@ +CHAPTER 11. Document Information and Metadata + +Cpdf.isLinearized(String) + + +Finds out if a document is linearized as +quickly as possible without loading it. + + +Cpdf.getVersion(Cpdf.Pdf) + + +Returns the minor version number of a document. + + +Cpdf.getMajorVersion(Cpdf.Pdf) + + +Returns the minor version number of a document. + + +Cpdf.getTitle(Cpdf.Pdf) + + +Returns the title of a document. + + +Cpdf.getAuthor(Cpdf.Pdf) + + +Returns the author of a document. + + +Cpdf.getSubject(Cpdf.Pdf) + + +Returns the subject of a document. + + +Cpdf.getKeywords(Cpdf.Pdf) + + +Returns the keywords of a document. + + +Cpdf.getCreator(Cpdf.Pdf) + + +Returns the creator of a document. + + +Cpdf.getProducer(Cpdf.Pdf) + + +Returns the producer of a document. + + +Cpdf.getCreationDate(Cpdf.Pdf) + + +Returns the creation date of a document. + + +Cpdf.getModificationDate(Cpdf.Pdf) + + +Returns the modification date of a document. + + +Cpdf.getTitleXMP(Cpdf.Pdf) + + +Returns the XMP title of a document. + + +Cpdf.getAuthorXMP(Cpdf.Pdf) + + +Returns the XMP author of a document. + + +Cpdf.getSubjectXMP(Cpdf.Pdf) + + +Returns the XMP subject of a document. + + +Cpdf.getKeywordsXMP(Cpdf.Pdf) + + +Returns the XMP keywords of a document. + + +Cpdf.getCreatorXMP(Cpdf.Pdf) + + +Returns the XMP creator of a document. + + +Cpdf.getProducerXMP(Cpdf.Pdf) + + +Returns the XMP producer of a document. + + +Cpdf.getCreationDateXMP(Cpdf.Pdf) + + +Returns the XMP creation date of a document. + + +Cpdf.getModificationDateXMP(Cpdf.Pdf) + + +Returns the XMP modification date of a document. + + +Cpdf.setTitle(Cpdf.Pdf, String) + + +Sets the title of a document. + + +Cpdf.setAuthor(Cpdf.Pdf, String) + + +Sets the author of a document. + + +Cpdf.setSubject(Cpdf.Pdf, String) + + +Sets the subject of a document. + + +Cpdf.setKeywords(Cpdf.Pdf, String) + + +Sets the keywords of a document. + + +Cpdf.setCreator(Cpdf.Pdf, String) + + +Sets the creator of a document. + + +Cpdf.setProducer(Cpdf.Pdf, String) + + +Sets the producer of a document. + + +Cpdf.setCreationDate(Cpdf.Pdf, String) + + +Sets the creation date of a document. + + +Cpdf.setModificationDate(Cpdf.Pdf, String) + + +Sets the modification date of a document. + + +Cpdf.setTitleXMP(Cpdf.Pdf, String) + + +Sets the XMP title of a document. + + +Cpdf.setAuthorXMP(Cpdf.Pdf, String) + + +Sets the XMP author of a document. + + +Cpdf.setSubjectXMP(Cpdf.Pdf, String) + + +Sets the XMP subject of a document. + + +Cpdf.setKeywordsXMP(Cpdf.Pdf, String) + + +Sets the XMP keywords of a document. + + +Cpdf.setCreatorXMP(Cpdf.Pdf, String) + + +Sets the XMP creator of a document. + + +Cpdf.setProducerXMP(Cpdf.Pdf, String) + + +Sets the XMP producer of a document. + + +Cpdf.setCreationDateXMP(Cpdf.Pdf, String) + + +Sets the XMP creation date of a document. + + +Cpdf.setModificationDateXMP(Cpdf.Pdf, String) + + +Sets the XMP modification date of a document. + + +Cpdf.getDateComponents(String, Int32@, Int32@, Int32@, Int32@, Int32@, Int32@, Int32@, Int32@) + + +Returns the components from a PDF date string. + + +Cpdf.dateStringOfComponents(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32) + + +Builds a PDF date string from individual +components. + + +Cpdf.getPageRotation(Cpdf.Pdf, Int32) + + +Gets the viewing rotation for a +given page. + + +Cpdf.hasBox(Cpdf.Pdf, Int32, String) + + +Returns true, if that page has the +given box. E.g "/CropBox". + + +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@) + + +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@) + + +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@) + + +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@) + + +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.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) + + +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) + + +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) + + +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) + + +These functions set a box given the document, page range, min x, max x, +min y, max y in points. + + +Cpdf.markTrapped(Cpdf.Pdf) + + +Marks a document as trapped. + + +Cpdf.markUntrapped(Cpdf.Pdf) + + +Marks a document as untrapped. + + +Cpdf.markTrappedXMP(Cpdf.Pdf) + + +Marks a document as trapped in XMP metadata. + + +Cpdf.markUntrappedXMP(Cpdf.Pdf) + + +Marks a document as untrapped in XMP metadata. + + +Cpdf.Layout + +Layouts + +Cpdf.Layout.SinglePage + +Single page + +Cpdf.Layout.OneColumn + +One column + +Cpdf.Layout.TwoColumnLeft + +Two column left + +Cpdf.Layout.TwoColumnRight + +Two column right + +Cpdf.Layout.TwoPageLeft + +Two page left + +Cpdf.Layout.TwoPageRight + +Two page right + +Cpdf.setPageLayout(Cpdf.Pdf, Cpdf.Layout) + + +Sets the page layout for a document. + + +Cpdf.PageMode + +Page modes + +Cpdf.PageMode.UseNone + +Use none + +Cpdf.PageMode.UseOutlines + +Use outlines + +Cpdf.PageMode.UseThumbs + +Use thumbs + +Cpdf.PageMode.UseOC + +Use OC + +Cpdf.PageMode.UseAttachments + +Use attachments + +Cpdf.setPageMode(Cpdf.Pdf, Cpdf.PageMode) + + +Sets the page mode for a document. + + +Cpdf.hideToolbar(Cpdf.Pdf, Boolean) + + +Sets the hide toolbar flag. + + +Cpdf.hideMenubar(Cpdf.Pdf, Boolean) + + +Sets the hide menubar flag. + + +Cpdf.hideWindowUi(Cpdf.Pdf, Boolean) + + +Sets the hide window UI flag. + + +Cpdf.fitWindow(Cpdf.Pdf, Boolean) + + +Sets the fit window flag. + + +Cpdf.centerWindow(Cpdf.Pdf, Boolean) + + +Sets the center window flag. + + +Cpdf.displayDocTitle(Cpdf.Pdf, Boolean) + + +Sets the display doc title flag. + + +Cpdf.openAtPage(Cpdf.Pdf, Boolean, Int32) + + +Sets the PDF to open, possibly with +zoom-to-fit, at the given page number. + + +Cpdf.setMetadataFromFile(Cpdf.Pdf, String) + + +Sets the XMP metadata of a +document, given a file name. + + +Cpdf.setMetadataFromByteArray(Cpdf.Pdf, Byte[]) + + +Sets the XMP metadata from +an array of bytes. + + +Cpdf.removeMetadata(Cpdf.Pdf) + + +Removes the XMP metadata from a document. + + +Cpdf.getMetadata(Cpdf.Pdf) + + +Returns the XMP metadata from a document. + + +Cpdf.createMetadata(Cpdf.Pdf) + + +Builds fresh metadata as best it can from +existing metadata in the document. + + +Cpdf.setMetadataDate(Cpdf.Pdf, String) + + +Sets the metadata date for a PDF. The date +is given in PDF date format -- cpdf will convert it to XMP format. The +date 'now' means now. + + +Cpdf.PageLabelStyle + +Page label styles + +Cpdf.PageLabelStyle.DecimalArabic + +1, 2, 3... + +Cpdf.PageLabelStyle.UppercaseRoman + +I, II, III... + +Cpdf.PageLabelStyle.LowercaseRoman + +i, ii, iii... + +Cpdf.PageLabelStyle.UppercaseLetters + +A, B, C... + +Cpdf.PageLabelStyle.LowercaseLetters + +a, b, c... + +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 +labels apply to. Offset can be used to shift the numbering up or down. + + +Cpdf.removePageLabels(Cpdf.Pdf) + + +Removes the page labels from the document. + + +Cpdf.getPageLabelStringForPage(Cpdf.Pdf, Int32) + + +Calculates the full label +string for a given page, and returns it. + + +Cpdf.startGetPageLabels(Cpdf.Pdf) + + + +Cpdf.getPageLabelStyle(Int32) + + + +Cpdf.getPageLabelPrefix(Int32) + + + +Cpdf.getPageLabelOffset(Int32) + + + +Cpdf.getPageLabelRange(Int32) + + + +Cpdf.endGetPageLabels + + + +Cpdf.dummych12 + diff --git a/dotnetsplits/c13.tex b/dotnetsplits/c13.tex new file mode 100644 index 0000000..f96b9a3 --- /dev/null +++ b/dotnetsplits/c13.tex @@ -0,0 +1,79 @@ +CHAPTER 12. File Attachments + +Cpdf.attachFile(String, Cpdf.Pdf) + + +Attaches a file to the pdf. It is attached +at document level. + + +Cpdf.attachFileToPage(String, Cpdf.Pdf, Int32) + + +Attaches a file, given +its file name, pdf, and the page number to which it should be attached. + + +Cpdf.attachFileFromMemory(Byte[], String, Cpdf.Pdf) + + +Attaches data from +memory, just like attachFile. + + +Cpdf.attachFileToPageFromMemory(Byte[], String, Cpdf.Pdf, Int32) + + +Attaches to a page from memory, just like attachFileToPage. + + +Cpdf.removeAttachedFiles(Cpdf.Pdf) + + +Removes all page- and document-level attachments from a document. + + +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 + + +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.getAttachmentName(Int32) + + +Gets the name of an attachment. + + +Cpdf.getAttachmentPage(Int32) + + +Gets the page number. 0 = document level. + + +Cpdf.getAttachmentData(Int32) + + +Gets the attachment data itself. + + +Cpdf.endGetAttachments + + +Cleans up after getting attachments. + + +Cpdf.dummych13 + diff --git a/dotnetsplits/c14.tex b/dotnetsplits/c14.tex new file mode 100644 index 0000000..0623061 --- /dev/null +++ b/dotnetsplits/c14.tex @@ -0,0 +1,100 @@ +CHAPTER 13. Images. + +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) + + +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) + + +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) + + +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) + + +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) + + +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) + + +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 + + +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.dummych14 + diff --git a/dotnetsplits/c15.tex b/dotnetsplits/c15.tex new file mode 100644 index 0000000..b8b54db --- /dev/null +++ b/dotnetsplits/c15.tex @@ -0,0 +1,88 @@ +CHAPTER 14. Fonts. + +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 + + +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) + + +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) + + +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) + + +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) + + +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 + + +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.removeFonts(Cpdf.Pdf) + + +Removes all font data from a file. + + +Cpdf.copyFont(Cpdf.Pdf, Cpdf.Pdf, List{Int32}, Int32, String) + + +Copies the given font +from the given page in the 'from' PDF to every page in the 'to' PDF. The +new font is stored under its font name. + + +Cpdf.dummych15 + diff --git a/dotnetsplits/c16.tex b/dotnetsplits/c16.tex new file mode 100644 index 0000000..2830c0f --- /dev/null +++ b/dotnetsplits/c16.tex @@ -0,0 +1,31 @@ +CHAPTER 15. PDF and JSON + +Cpdf.outputJSON(String, Boolean, Boolean, Boolean, Cpdf.Pdf) + + +Outputs a PDF +in JSON format to the given filename. If parse_content is true, page content +is parsed. If no_stream_data is true, all stream data is suppressed entirely. + + +Cpdf.outputJSONMemory(Cpdf.Pdf, Boolean, Boolean, Boolean) + + +Like +outputJSON, but it writes to a byte array in memory. + + +Cpdf.fromJSON(String) + + +Loads a PDF from a JSON file given its filename. + + +Cpdf.fromJSONMemory(Byte[]) + + +Loads a PDF from a JSON file in memory + + +Cpdf.dummych16 + diff --git a/dotnetsplits/c17.tex b/dotnetsplits/c17.tex new file mode 100644 index 0000000..c005d58 --- /dev/null +++ b/dotnetsplits/c17.tex @@ -0,0 +1,44 @@ +CHAPTER 16. Optional Content Groups + +Cpdf.startGetOCGList(Cpdf.Pdf) + + +Begins retrieving optional content group names. The serial number 0..n - 1 +is returned. + + +Cpdf.OCGListEntry(Int32) + + +Retrieves an OCG name, given its serial number 0..n - 1. + + +Cpdf.endGetOCGList + + +Ends retrieval of optional content group names. + + +Cpdf.OCGRename(Cpdf.Pdf, String, String) + + +Renames an optional content group. + + +Cpdf.OCGOrderAll(Cpdf.Pdf) + + +Ensures that every optional content group appears in the OCG order list. + + +Cpdf.OCGCoalesce(Cpdf.Pdf) + + +Coalesces optional content groups. For example, if we merge or stamp two +files both with an OCG called "Layer 1", we will have two different optional +content groups. This function will merge the two into a single optional +content group. + + +Cpdf.dummych17 + diff --git a/dotnetsplits/c18.tex b/dotnetsplits/c18.tex new file mode 100644 index 0000000..f370914 --- /dev/null +++ b/dotnetsplits/c18.tex @@ -0,0 +1,34 @@ +CHAPTER 17. Creating New PDFs + +Cpdf.blankDocument(Double, Double, Int32) + + +Creates a blank document with +pages of the given width (in points), height (in points), and number of +pages. + + +Cpdf.blankDocumentPaper(Cpdf.Papersize, Int32) + + +Makes a blank document given +a page size and number of pages. + + +Cpdf.textToPDF(Double, Double, Cpdf.Font, Double, String) + + +Typesets a UTF8 text file +ragged right on a page of size w * h in points in the given font and font +size. + + +Cpdf.textToPDFPaper(Cpdf.Papersize, Cpdf.Font, Double, String) + + +Typesets a UTF8 text file +ragged right on a page of the given size in the given font and font size. + + +Cpdf.dummych18 + diff --git a/dotnetsplits/c19.tex b/dotnetsplits/c19.tex new file mode 100644 index 0000000..cb4bdf9 --- /dev/null +++ b/dotnetsplits/c19.tex @@ -0,0 +1,108 @@ +CHAPTER 18. Miscellaneous + +Cpdf.draft(Cpdf.Pdf, List{Int32}, Boolean) + + +Removes images on the given pages, replacing +them with crossed boxes if 'boxes' is true. + + +Cpdf.removeAllText(Cpdf.Pdf, List{Int32}) + + +Removes all text from the given pages in a +given document. + + +Cpdf.blackText(Cpdf.Pdf, List{Int32}) + + +Blackens all text on the given pages. + + +Cpdf.blackLines(Cpdf.Pdf, List{Int32}) + + +Blackens all lines on the given pages. + + +Cpdf.blackFills(Cpdf.Pdf, List{Int32}) + + +Blackens all fills on the given pages. + + +Cpdf.thinLines(Cpdf.Pdf, List{Int32}, Double) + + +Thickens every line less than +min_thickness to min_thickness. Thickness given in points. + + +Cpdf.copyId(Cpdf.Pdf, Cpdf.Pdf) + + +Copies the /ID from one document to another. + + +Cpdf.removeId(Cpdf.Pdf) + + +Removes a document's /ID. + + +Cpdf.setVersion(Cpdf.Pdf, Int32) + + +Sets the minor version number of a document. + + +Cpdf.setFullVersion(Cpdf.Pdf, Int32, Int32) + + +Sets the full version +number of a document. + + +Cpdf.removeDictEntry(Cpdf.Pdf, String) + + +Removes any dictionary entry with the given +key anywhere in the document. + + +Cpdf.removeDictEntrySearch(Cpdf.Pdf, String, String) + + +Removes any dictionary entry +with the given key whose value matches the given search term. + + +Cpdf.replaceDictEntry(Cpdf.Pdf, String, String) + + +Replaces the value associated with +the given key. + + +Cpdf.replaceDictEntrySearch(Cpdf.Pdf, String, String, String) + + +Replaces the value +associated with the given key if the existing value matches the search term. + + +Cpdf.removeClipping(Cpdf.Pdf, List{Int32}) + + +Removes all clipping from pages in the +given range. + + +Cpdf.getDictEntries(Cpdf.Pdf, String) + + +Returns a JSON array containing any +and all values associated with the given key, and fills in its length. + +