Module: Origami

Defined in:
lib/origami/file.rb,
lib/origami/pdf.rb,
lib/origami/name.rb,
lib/origami/page.rb,
lib/origami/array.rb,
lib/origami/export.rb,
lib/origami/object.rb,
lib/origami/parser.rb,
lib/origami/stream.rb,
lib/origami/string.rb,
lib/origami/boolean.rb,
lib/origami/numeric.rb,
lib/origami/outline.rb,
lib/origami/trailer.rb,
lib/origami/metadata.rb,
lib/origami/reference.rb,
lib/origami/signature.rb,
lib/origami/xreftable.rb,
lib/origami/dictionary.rb,
lib/origami/encryption.rb,
lib/origami/javascript.rb,
lib/origami/webcapture.rb,
lib/origami/filters/dct.rb,
lib/origami/filters/jpx.rb,
lib/origami/filters/lzw.rb,
lib/origami/obfuscation.rb,
lib/origami/parsers/fdf.rb,
lib/origami/parsers/pdf.rb,
lib/origami/filters/ascii.rb,
lib/origami/filters/ccitt.rb,
lib/origami/filters/crypt.rb,
lib/origami/filters/flate.rb,
lib/origami/filters/jbig2.rb,
lib/origami/graphics/path.rb,
lib/origami/graphics/text.rb,
lib/origami/outputintents.rb,
lib/origami/graphics/state.rb,
lib/origami/graphics/colors.rb,
lib/origami/graphics/render.rb,
lib/origami/parsers/ppklite.rb,
lib/origami/graphics/xobject.rb,
lib/origami/filters/runlength.rb,
lib/origami/graphics/patterns.rb,
lib/origami/filters/predictors.rb,
lib/origami/parsers/pdf/linear.rb,
lib/origami/graphics/instruction.rb

Overview

File

graphics/instruction.rb

Info

This file is part of Origami, PDF manipulation framework for Ruby Copyright © 2010 Guillaume Delugré <[email protected]> All right reserved.

Origami is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

Origami is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with Origami.  If not, see <http://www.gnu.org/licenses/>.

Defined Under Namespace

Modules: Adobe, Console, Encryption, Filter, Graphics, Number, Obfuscator, Object, ResourcesHolder, Signature, StandardObject, String, Text, UsageRights, Webcapture Classes: Array, Boolean, ByteString, ContentStream, Date, Dictionary, EmbeddedFileParameters, EmbeddedFileStream, EncryptionError, EncryptionInvalidPasswordError, EncryptionNotSupportedError, ExternalFile, ExternalStream, FDF, FileSpec, Filename, HexaString, Integer, InvalidArrayObjectError, InvalidBooleanObjectError, InvalidByteStringObjectError, InvalidDictionaryObjectError, InvalidHexaStringObjectError, InvalidIntegerObjectError, InvalidNameObjectError, InvalidObjectError, InvalidObjectStreamObjectError, InvalidPDFError, InvalidPDFInstructionError, InvalidRealObjectError, InvalidReferenceError, InvalidStreamObjectError, InvalidTrailerError, InvalidXRefError, InvalidXRefStreamObjectError, Metadata, MetadataStream, Name, NavigationNode, Null, ObjectStream, Outline, OutlineItem, OutputIntent, PDF, Page, PageAdditionalActions, PageTreeNode, Parser, Perms, Real, Rectangle, Reference, Resources, Stream, Trailer, URL, UnterminatedObjectError, XRef, XRefStream, XRefToCompressedObj

Constant Summary collapse

VERSION =
"1.2.3"
REVISION =

:nodoc:

"$Revision: rev 143/, 2011/10/20 16:22:40 $"
OPTIONS =

Global options for Origami.

{
  :enable_type_checking => true,  # set to false to disable type consistency checks during compilation.
  :enable_type_guessing => true,  # set to false to prevent the parser to guess the type of special dictionary and streams (not recommended).
  :use_openssl => true            # set to false to use Origami crypto backend.
}
DICT_SPECIAL_TYPES =

:nodoc:

{ 
  :Catalog => Catalog, 
  :Pages => PageTreeNode, 
  :Page => Page, 
  :Filespec => FileSpec, 
  :Action => Action,
  :Font => Font,
  :FontDescriptor => FontDescriptor,
  :Encoding => Encoding,
  :Annot => Annotation,
  :Border => Annotation::BorderStyle,
  :Outlines => Outline,
  :OutputIntent => OutputIntent,
  :Sig => Signature::DigitalSignature,
  :SigRef => Signature::Reference,
  :SigFieldLock => Field::SignatureLock,
  :SV => Field::SignatureSeedValue,
  :SVCert => Field::CertificateSeedValue,
  :ExtGState => Graphics::ExtGState,
  :RichMediaSettings => Annotation::RichMedia::Settings,
  :RichMediaActivation => Annotation::RichMedia::Activation,
  :RichMediaDeactivation => Annotation::RichMedia::Deactivation,
  :RichMediaAnimation => Annotation::RichMedia::Animation,
  :RichMediaPresentation => Annotation::RichMedia::Presentation,
  :RichMediaWindow => Annotation::RichMedia::Window,
  :RichMediaPosition => Annotation::RichMedia::Position,
  :RichMediaContent => Annotation::RichMedia::Content,
  :RichMediaConfiguration => Annotation::RichMedia::Configuration,
  :RichMediaInstance => Annotation::RichMedia::Instance,
  :RichMediaParams => Annotation::RichMedia::Parameters,
  :CuePoint => Annotation::RichMedia::CuePoint
}
STM_SPECIAL_TYPES =

:nodoc:

{
  :ObjStm => ObjectStream, 
  :EmbeddedFile => EmbeddedFileStream,
  :Metadata => MetadataStream,
  :XRef => XRefStream,
  :"3D" => U3DStream
}
STM_XOBJ_SUBTYPES =

:nodoc:

{
  :Image => Graphics::ImageXObject,
  :Form => Graphics::FormXObject
}
REGULARCHARS =

:nodoc:

"([^ \\t\\r\\n\\0\\[\\]<>()%\\/]|#[a-fA-F0-9][a-fA-F0-9])*"
WHITESPACES =

:nodoc:

"([ \\f\\t\\r\\n\\0]|%[^\\n]*\\n)*"
WHITECHARS_NORET =

:nodoc:

"[ \\f\\t\\0]*"
EOL =

:nodoc:

"\r\n"
WHITECHARS =

:nodoc:

"[ \\f\\t\\r\\n\\0]*"
REGEXP_WHITESPACES =

:nodoc:

Regexp.new(WHITESPACES)