package camlpdf

  1. Overview
  2. Docs

Writing PDF Files

val write_debug : bool ref

When set to true, various pieces of information are printed to standard output when a PDF is written. On library startup, is false.

Encryption methods

type encryption_method =
  1. | PDF40bit
  2. | PDF128bit
  3. | AES128bit of bool
  4. | AES256bit of bool
  5. | AES256bitISO of bool
  6. | AlreadyEncrypted

Encryption methods. The boolean for AES128bit, AES256bit and AES256BitISO indicates encryption of metadata or lack thereof. AlreadyEncrypted is used as a flag to prevent garbage collection internally by pdf_to_file_recrypting.

type encryption = {
  1. encryption_method : encryption_method;
  2. owner_password : string;
  3. user_password : string;
  4. permissions : Pdfcrypt.permission list;
}

The type of an encryption with certain user permissions.

Writing to outputs, channels and files.

val pdf_to_output : ?preserve_objstm:bool -> ?generate_objstm:bool -> ?compress_objstm:bool -> ?recrypt:string option -> encryption option -> bool -> Pdf.t -> Pdfio.output -> unit

Write a PDF document to an Pdfio.output, optionally encrypting. If ?preserve_objstm is set (default is false), object streams which were in the original file will be preserved. If ?create_objstm is set (default is false), additional new object streams will be created. To re-encrypt the file using its existing encryption, provide the user or owner password in the ?recrypt argument.

val pdf_to_channel : ?preserve_objstm:bool -> ?generate_objstm:bool -> ?compress_objstm:bool -> ?recrypt:string option -> encryption option -> bool -> Pdf.t -> out_channel -> unit

As pdf_to_output but to an OCaml channel. If the second boolean is set, build a new /ID (don't set this for encrypted documents).

val pdf_to_file_options : ?preserve_objstm:bool -> ?generate_objstm:bool -> ?compress_objstm:bool -> ?recrypt:string option -> encryption option -> bool -> Pdf.t -> string -> unit

As pdf_to_channel but to a named file.

val pdf_to_file : Pdf.t -> string -> unit

Simple write to given file name. Equivalent to pdf_to_file_options false None true

String of a PDF object

val string_of_pdf : Pdf.pdfobject -> string

Calculate a string of a pdf object.

val string_of_pdf_including_data : Pdf.pdfobject -> string

Calculate a string of a pdf object, but include binary data too.

val debug_whole_pdf : Pdf.t -> unit

For debug, print out the PDFs objects to standard output.

val make_hex_pdf_string : string -> string

Convert a PDF string to Hex PDF string representation

OCaml

Innovation. Community. Security.