5#ifndef _JAWSMAKO_DISTILLER_H_
6#define _JAWSMAKO_DISTILLER_H_
45 #define DIST_MAKE_PDF_VERSION(major,minor) (((major) << 4) | (minor))
46 #define DIST_GET_PDF_VERSION_MAJOR(pdfVersion) (((pdfVersion) >> 4) & 0x0f)
47 #define DIST_GET_PDF_VERSION_MINOR(pdfVersion) (((pdfVersion) >> 0) & 0x0f)
419 virtual void setProlog(
const IInputStreamPtr &prolog) = 0;
435 virtual void setEpilog(
const IInputStreamPtr &epilog) = 0;
470 virtual void setPanose(
const IInputStreamPtr &panose) = 0;
871 #define obj2IDistiller(obj) IDistillerPtr(dynamic_cast<IDistiller *>((IRCObject *) obj), true)
Base class Interface for all Reference Counted objects.
Definition ircobject.h:35
An instance of the JawsMako Distiller class.
Definition distiller.h:31
virtual ~IDistiller()
Definition distiller.h:33
virtual void setHiResBBox(bool hiResBBox)=0
Set whether to use the HiResBoundingBox DSC comment if present.
eImageDownsamplingMethod
Image downsampling methods.
Definition distiller.h:314
@ eIDAverage
Average downsampling.
Definition distiller.h:317
@ eIDBicubic
Bicubic downsampling.
Definition distiller.h:318
@ eIDSubsample
Subsampling.
Definition distiller.h:316
@ eIDNone
No downsampling.
Definition distiller.h:315
virtual void setSubsetFonts(bool subset)=0
Set whether embedded fonts should be subset or not. The default is true.
virtual void setPdfVersion(ePDFVersion version)=0
Set the PDF version to generate.
virtual void setEncryption(const U8String &ownerPassword, const U8String &userPassword="", uint32 permissions=0)=0
Set the encryption for the output PDF.
virtual void setMonoImageCompression(eImageCompression compression)=0
Set the image compression for monochrome images. The default is eICCCITT. JPEG/DCT and auto are not...
virtual void setGrayImageDownsampling(eImageDownsamplingMethod method)=0
Set the desired downsampling method for gray images. The default method is eIDNone (no downsampling).
virtual void removeFont(const U8String &fontName)=0
Removes a named font.
virtual void setEmbedDiskBasedCidFonts(bool embed)=0
Set whether CID fonts obtained from resources (i.e, disk based CID fonts) can be embedded....
eThumbnailType
PDF Thumbnail types.
Definition distiller.h:808
@ eTHColor
Color thumbnails.
Definition distiller.h:810
@ eTHNone
No thumbnails.
Definition distiller.h:809
@ eTHMono
Monochrome thumbnails.
Definition distiller.h:811
virtual void addFonts(const CU8StringVect &fonts)=0
Adds fonts.
virtual void setMonoImageDownsampling(eImageDownsamplingMethod method)=0
Set the desired downsampling method for monochrome images. The default method is eIDNone (no downsamp...
virtual void setAutoRotatePages(bool autoRotatePages)=0
Set whether pages should be automatically rotated. The default is false.
virtual void setColorImageResolution(float resolution)=0
Set the desired resolution for color images when downsampling. The default is 72.
virtual void setResolution(float resolution)=0
Set the target resolution for the output, in dots per inch. The default is 288. Equivalent to calling...
virtual void setColorImageDownsampling(eImageDownsamplingMethod method)=0
Set the desired downsampling method for color images. The default method is eIDNone (no downsampling)...
virtual void setGrayImageCompression(eImageCompression compression)=0
Set the image compression for gray images. The default is eICFlate. CCITT is not allowed for gray i...
virtual void setLinearize(bool linearize)=0
Set whether the output should be linearized. The default is false.
virtual void setEpilog(const IInputStreamPtr &epilog)=0
Set a epilog stream to be consumed by the PostScript interpreter after the input stream is processed,...
virtual void setOPI(bool opi)=0
Set whether OPI comments should be preserved. The default is false.
eTransferFunctionMethod
Enumeration for transfer function methods.
Definition distiller.h:172
@ eTRPreserve
Transfer functions are stored in the PDF file.
Definition distiller.h:175
@ eTRRemove
Transfer functions are ignored.
Definition distiller.h:174
@ eTRApply
The effect of a transfer function is applied to the page content before being stored in the PDF file.
Definition distiller.h:173
virtual void setJobTicket(bool jobTicket)=0
Set whether to add a job ticket object to the output. The default is false.
virtual void setParameter(const U8String ¶m, const U8String &value)=0
Apply a key-value pair output parameter with a string value. The parameter name is case insensitive....
virtual void setMonoImageResolution(float resolution)=0
Set the desired resolution for monochrome images when downsampling. The default is 72.
virtual void setEmbedFonts(bool embed)=0
Set whether fonts should be forcibly embedded. The standard 14 fonts are not affected by this....
virtual void getFontNames(const U8String &font, CU8StringVect &names)=0
Gets a list of font names from a given file.
virtual void setPageFilterHigh(uint64 pageHigh)=0
Set upper page limit.
virtual void setConvertCMYKImagesToRGB(bool convert)=0
Set whether to convert CMYK images to RGB. The default is false.
virtual void setGrayJPEGQuality(eJpegQuality quality)=0
Set the JPEG quality to use when compressing gray images in DCT format. Equivalent to calling setPara...
virtual void setGrayImageResolution(float resolution)=0
Set the desired resolution for gray images when downsampling. The default is 72.
virtual void setPageFilterRange(uint64 pageLow, uint64 pageHigh)=0
Set page range.
virtual void setPanose(const IInputStreamPtr &panose)=0
Sets a stream that refers to a list of CID font names and their associated Panose styles.
virtual void setFontDevicePath(const U8String &path)=0
Sets the font device path.
virtual void setTransfers(eTransferFunctionMethod transfers)=0
Set the desired method to for controlling transfer functions.
virtual void setCropToBBox(bool cropToBBox)=0
Set whether to use the BoundingBox DSC comment for the PDF CropBox. The default is false.
virtual void setHalftone(bool halftone)=0
Set whether halftone information should be preserved. The default is false.
virtual void setProlog(const IInputStreamPtr &prolog)=0
Set a prolog stream to be consumed by the PostScript interpreter before the input stream is processed...
virtual void setResourceDevicePath(const U8String &path)=0
Sets the resource device path.
virtual void setDefaultPanoseStyle(const U8String &defaultPanoseStyle)=0
Sets the default Panose style to be used when emitting a CID font that is not in the Panose list,...
virtual void setTrimToBBox(bool trimToBBox)=0
Set whether to use the BoundingBox DSC comment for the page size. The default is false.
eJpegQuality
JPEG-equivalent quality factors (QFactor)
Definition distiller.h:246
@ eJQUser
Compress using the QFactor set by setColorQFactor()
Definition distiller.h:250
@ eJQHigh
eJQHigh is equivalent to a QFactor of 1.3
Definition distiller.h:249
@ eJQMedium
eJQMedium is equivalent to a QFactor of 0.5
Definition distiller.h:248
@ eJQLow
eJQLow is equivalent to a QFactor of 0.1
Definition distiller.h:247
eImageCompression
Image compression formats.
Definition distiller.h:194
@ eICCCITT
A method for compressing monochrome images, defined by Comité Consultatif International Téléphonique ...
Definition distiller.h:201
@ eICNone
Uncompressed.
Definition distiller.h:195
@ eICAuto
Automatic selection of appropriate compression method.
Definition distiller.h:196
@ eICFlate
Flate (zip), a lossless compression method.
Definition distiller.h:197
@ eICDCT
Discrete Cosine Transform, a lossy form of compression used for color or grayscale images,...
Definition distiller.h:199
@ eICLZW
LZW (Lempel-Ziv-Welch), a lossless compression method.
Definition distiller.h:200
@ eICFlatePredict
Flate with predictor (which can improve compression at the cost of additional processing)
Definition distiller.h:198
virtual void setGrayQFactor(float qfactor)=0
Set the QFactor to use when compressing gray images in DCT format. Applies only when setting the JPEG...
virtual void setOverprintMode(bool overprintMode)=0
Set the overprint mode. The default is true, which sets non-zero overprint mode (/OPM 1).
virtual void setColorJPEGQuality(eJpegQuality quality)=0
Set the JPEG quality to use when compressing color images in DCT format. Equivalent to calling setPar...
virtual void setAscii85EncodePages(bool ascii85EncodePages)=0
Set whether to ASCII85-encode streams. The default is false.
virtual void setPageFilterLow(uint64 pageLow)=0
Set lower page limit.
virtual void setCompressPages(bool compressPages)=0
Set whether or not compression should be applied to page content. The default is true.
virtual void setColorQFactor(float qfactor)=0
Set the QFactor to use when compressing color images in DCT format. Applies only when setting the JPE...
virtual void setOverprint(bool overprint)=0
Set whether overprinting should be preserved. The default is false.
virtual void setCompressObjects(bool compressObjects)=0
Set whether or not to compress individual objects.
ePDFVersion
Supported PDF versions.
Definition distiller.h:54
@ ePDF1_4
PDF 1.4.
Definition distiller.h:56
@ ePDF1_5
PDF 1.5.
Definition distiller.h:57
@ ePDF1_7
PDF 1.7.
Definition distiller.h:59
@ ePDF1_3
PDF 1.3.
Definition distiller.h:55
@ ePDF1_6
PDF 1.6.
Definition distiller.h:58
static JAWSMAKO_API IDistillerPtr create(const IJawsMakoPtr &jawsMako)
Create an IDistiller interface.
virtual void distill(const IInputStreamPtr &inputStream, const IOutputStreamPtr &outputStream, const IProgressMonitorPtr &progressMonitor=IProgressMonitorPtr())=0
Convert (distill) an input PostScript stream to PDF.
virtual void setCommentMonitor(IPSCommentMonitor *commentMonitor)=0
Set a comment monitor.
virtual void setUseDeviceDependentColor(bool useDeviceDependentColor)=0
Set whether to convert device independent colors to device dependent colors The default is false.
virtual void setDocumentInformationString(eDocumentInfo key, const U8String &value)=0
Set PDF Document Information string.
virtual void addFont(const U8String &font)=0
Adds a font.
virtual void setColorImageCompression(eImageCompression compression)=0
Set the image compression for color images. The default is eICFlate. CCITT is not allowed for color...
virtual void setEmbedBase14Fonts(bool embed)=0
Set whether the base 14 PDF fonts should be forcibly embedded. Only the standard 14 fonts are not aff...
eDocumentInfo
Document Information types.
Definition distiller.h:670
@ eDICreator
The document creator.
Definition distiller.h:674
@ eDIAuthor
The document author.
Definition distiller.h:671
@ eDITitle
The document title.
Definition distiller.h:673
@ eDISubject
The document subject.
Definition distiller.h:672
@ eDIN
The number of Document Information types.
Definition distiller.h:675
virtual void setThumbnails(eThumbnailType thumbnails)=0
Set the PDF thumbnail type.
#define DIST_MAKE_PDF_VERSION(major, minor)
Definition distiller.h:45
unsigned int uint32
Definition edltypes.h:34
unsigned long long uint64
Definition edltypes.h:35
EDLSysString U8String
A UTF-8 String.
Definition types.h:144
EDLSysString RawString
A raw, 8 bit string. Encoding depends on context.
Definition types.h:150
Definition apexcustompostprocess.h:17
EDL::IProgressMonitorPtr IProgressMonitorPtr
Definition types.h:85
CEDLSysStringVect CRawStringVect
Definition types.h:168
CEDLSysStringVect CU8StringVect
Definition types.h:167
#define DECL_SMART_PTR(cls)
Definition smartptr.h:211
#define JAWSMAKO_API
Definition types.h:29