Mako 8.4.0 API
MakoCore SDK API Documentation
Loading...
Searching...
No Matches
jawsmako.h
Go to the documentation of this file.
1/*
2 * jawsmako.h
3 *
4 * Copyright (C) 2008-2026 Hybrid Software Helix Ltd. All rights reserved.
5 *
6 */
7
8#ifndef JAWSMAKO_H
9#define JAWSMAKO_H
10
11#include <map>
12#include <edl/platform.h>
13#include <edl/iabort.h>
14#include <edl/idomsecurity.h>
16#include <jawsmako/pagelabels.h>
17#include <jawsmako/renderspec.h>
18
38
55
68
136
166
185
204
212
219
220
263
273
274
275#include <jawsmako/types.h>
276#include <jawsmako/interactive.h>
277#include <edl/idompage.h>
278
279namespace JawsMako
280{
281 using namespace EDL;
282
300
310 class IJawsMako : virtual public ISession, virtual public IEDLClassFactory
311 {
312 public:
313 virtual ~IJawsMako() = default;
314
336 static JAWSMAKO_API IJawsMakoPtr create(const U8String &tempDir = U8String(""),
337 const U8String &cacheDir = U8String(""),
338 const CTemporaryStoreParameters &tempStoreParams = CTemporaryStoreParameters(),
339 const std::map<std::string, std::string> &initialParams = std::map<std::string, std::string> ());
340
345 static JAWSMAKO_API void enablePDFInput(const IJawsMakoPtr &jawsMako);
346
351 static JAWSMAKO_API void enablePDFOutput(const IJawsMakoPtr &jawsMako);
352
359 static JAWSMAKO_API void enablePSInput(const IJawsMakoPtr &jawsMako);
360
365 static JAWSMAKO_API void enablePSOutput(const IJawsMakoPtr &jawsMako);
366
371 static JAWSMAKO_API void enableAllFeatures(const IJawsMakoPtr &jawsMako)
372 {
373 enablePDFInput(jawsMako);
374 enablePDFOutput(jawsMako);
375 enablePSInput(jawsMako);
376 enablePSOutput(jawsMako);
377 }
378
379#ifdef __APPLE__
393 virtual void lockOpenFiles(bool lock) = 0;
394#endif
395
401 virtual void freeMemory() = 0;
402
403 #ifdef SWIG
404 %apply uint32_t &OUTPUT { uint32_t &fontIndex };
405 #endif
425 virtual IDOMFontPtr findFont(const U8String &fontName, uint32_t &fontIndex) = 0;
426 #ifdef SWIG
427 %clear uint32_t &fontIndex;
428 #endif
429
447 virtual bool findFont(const U8String &fontName) = 0;
448
461 virtual void setImageDecompressorCacheSize(uint32 decompressorCacheSizeMB) = 0;
462 };
463
470 class IInput : public IRCObject
471 {
472 public:
473 virtual ~IInput() = default;
474
494 static JAWSMAKO_API IInputPtr create(const IJawsMakoPtr &jawsMako, eFileFormat format, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr());
495
502 virtual IDocumentAssemblyPtr open(const U8String &pathToFile) = 0;
503
510 virtual IDocumentAssemblyPtr open(const String &pathToFile) = 0;
511
518 virtual IDocumentAssemblyPtr open(const IInputStreamPtr &inputStream) = 0;
519
583 virtual void setSequentialMode(bool sequential) = 0;
584
593 virtual void setParameter(const U8String &param, const U8String &value) = 0;
594 };
595
596
597
604 class IOutput : public IRCObject
605 {
606 public:
607 virtual ~IOutput() = default;
608
625 static JAWSMAKO_API IOutputPtr create(const IJawsMakoPtr &jawsMako, eFileFormat format, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
626
627 /*
628 * Configuration
629 */
630
641 virtual void setPreset(const U8String &preset) = 0;
642
652 virtual void setParameter(const U8String &param, const U8String &value) = 0;
653
696 virtual void setAllowedPermissionsFlags(uint32 allowedPermissions) = 0;
697
698
704 virtual void writeAssembly(const IDocumentAssemblyPtr &assembly,
705 const U8String &pathToFile) = 0;
706
713 virtual void writeAssembly(const IDocumentAssemblyPtr &assembly,
714 const String &pathToFile) = 0;
715
721 virtual void writeAssembly(const IDocumentAssemblyPtr &assembly,
722 const IOutputStreamPtr &stream) = 0;
723
733 virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const U8String &pathToFile) = 0;
734
742 virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const String &pathToFile) = 0;
743
750 virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const IOutputStreamPtr &stream) = 0;
751 };
752
753
754
761 {
762 public:
763 virtual ~IOutputWriter() = default;
764
771 virtual void beginDocument(const IDocumentPtr &document) = 0;
772
776 virtual void endDocument() = 0;
777
785 virtual void writePage(const IPagePtr &page) = 0;
786
790 virtual void finish() = 0;
791 };
792
798 {
799 public:
800 virtual ~IDocumentAssembly() = default;
801
809 static JAWSMAKO_API IDocumentAssemblyPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
810
818 virtual uint32 getNumDocuments() = 0;
819
826 virtual IDocumentPtr getDocument(uint32 index = 0) = 0;
827
835 virtual bool documentExists(uint32 index) = 0;
836
843 virtual void insertDocument(const IDocumentPtr &document, uint32 index = 0) = 0;
844
850 virtual void removeDocument(uint32 index) = 0;
851
857 virtual void removeDocument(const IDocumentPtr &document) = 0;
858
863 virtual void appendDocument(const IDocumentPtr &document) = 0;
864
869 virtual IDOMJobTkPtr getJobTicket() const = 0;
870
875 virtual void setJobTicket(const IDOMJobTkPtr &jobTicket) = 0;
876
877 #ifdef SWIG
878 %apply uint32_t &OUTPUT { uint32 &docNum };
879 %apply uint32_t &OUTPUT { uint32 &pageNum };
880 #endif
890 virtual void findTarget(DOMid targetId, uint32 &docNum, uint32 &pageNum) = 0;
891 #ifdef SWIG
892 %clear uint32 &docNum;
893 %clear uint32 &pageNum;
894 #endif
895
904 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference) = 0;
905
906 #ifdef SWIG
907 %apply uint32_t &OUTPUT { uint32 &docNum };
908 %apply uint32_t &OUTPUT { uint32 &pageNum };
909 #endif
920 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference, uint32 &docNum, uint32 &pageNum) = 0;
921 #ifdef SWIG
922 %clear uint32 &docNum;
923 %clear uint32 &pageNum;
924 #endif
925
931 virtual IDocumentAssemblyPtr clone() = 0;
932
938 virtual IDOMMetadataPtr getJobMetadata() const = 0;
939
944 virtual void setJobMetadata(const IDOMMetadataPtr &metadata) = 0;
945
950 virtual IInputStreamPtr getXmpPacket() const = 0;
951
959 virtual void setXmpPacket(const IInputStreamPtr &xmpPacket) = 0;
960
967 virtual IDOMSecurityInfoPtr getSecurityInfo() const = 0;
968
973 virtual IDOMImagePtr getThumbnail() const = 0;
974
980 virtual void setThumbnail(const IDOMImagePtr &thumbnail) = 0;
981 };
982
983
990 class IDocument : public IRCObject
991 {
992 public:
993 virtual ~IDocument() = default;
994
1001 static JAWSMAKO_API IDocumentPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
1002
1010 virtual uint32 getNumPages() = 0;
1011
1017 virtual IPagePtr getPage(uint32 index = 0) = 0;
1018
1025 virtual bool pageExists(uint32 index) = 0;
1026
1044 virtual void insertPage(const IPagePtr &page, uint32 index = 0, const IDocumentPtr &sourceDocument = IDocumentPtr()) = 0;
1045
1061 virtual void appendPage(const IPagePtr &page, const IDocumentPtr &sourceDocument = IDocumentPtr()) = 0;
1062
1068 virtual void removePage(uint32 index) = 0;
1069
1075 virtual void removePage(const IPagePtr &page) = 0;
1076
1077 #ifdef SWIG
1078 %apply uint32_t &OUTPUT { uint32 &pageNum };
1079 #endif
1087 virtual void findTarget(DOMid targetId, uint32 &pageNum) = 0;
1088 #ifdef SWIG
1089 %clear uint32 &pageNum;
1090 #endif
1091
1099 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference) = 0;
1100
1101 #ifdef SWIG
1102 %apply uint32_t &OUTPUT { uint32 &pageNum };
1103 #endif
1112 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference, uint32 &pageNum) = 0;
1113 #ifdef SWIG
1114 %clear uint32 &pageNum;
1115 #endif
1116
1121 virtual IDOMJobTkPtr getJobTicket() const = 0;
1122
1127 virtual void setJobTicket(const IDOMJobTkPtr &jobTicket) = 0;
1128
1136
1141 virtual IOptionalContentPtr getOptionalContent() const = 0;
1142
1147 virtual void setOptionalContent(const IOptionalContentPtr &optionalContent) = 0;
1148
1153 virtual IStructurePtr getStructure() const = 0;
1154
1159 virtual void setStructure(const IStructurePtr &structure) = 0;
1160
1165 virtual IDOMOutlinePtr getOutline() const = 0;
1166
1171 virtual void setOutline(const IDOMOutlinePtr &outline) = 0;
1172
1177 virtual IFormPtr getForm() const = 0;
1178
1183 virtual void setForm(const IFormPtr &form) = 0;
1184
1191
1197 virtual void addEmbeddedStream(const IFileSpecAsEmbeddedDataPtr &embeddedData) = 0;
1198
1204
1211 virtual void addNamedDestination(const INamedDestinationPtr &namedDestination) = 0;
1212
1219 virtual void setNamedDestinations(const CNamedDestinationVect &namedDestinations) = 0;
1220
1225 virtual IThreadsPtr getThreads() const = 0;
1226
1232 virtual IDocumentPtr clone() = 0;
1233
1234 //
1235 // PDF-specific object editing and interrogation
1236 //
1237
1248 virtual IPDFObjectPtr lookupFarReference(const IPDFFarReferencePtr &farReference, IPDFObjectStorePtr &store) = 0;
1249
1256 virtual IPDFObjectStorePtr getObjectStore() = 0;
1257
1266 virtual IPDFObjectPtr readPdfObject(const IPDFReferencePtr &reference) = 0;
1267
1275 virtual IPDFDictionaryPtr readPdfTrailerDictionary() = 0;
1276
1277 };
1278
1284 class IPageRaster : public IRCObject, public IHashable
1285 {
1286 public:
1287
1292 virtual uint32 getWidth () const = 0;
1293
1298 virtual uint32 getHeight () const = 0;
1299
1305 virtual uint32 getResX () const = 0;
1306
1312 virtual uint32 getResY () const = 0;
1313
1318 virtual uint32 getBPC () const = 0;
1319
1324 virtual uint32 getNumComponents () const = 0;
1325
1330 virtual uint32 getRawBytesPerRow () const = 0;
1331
1336 virtual bool isBlank () const = 0;
1337
1342 virtual uint8 *getFrameBuffer () const = 0;
1343
1349 virtual IDOMImagePtr getAsDOMImage () const = 0;
1350
1354 virtual void releaseFrameBuffer () = 0;
1355
1356 };
1358
1366 class IPage : public IRCObject
1367 {
1368 public:
1369 virtual ~IPage() = default;
1370
1376 static JAWSMAKO_API IPagePtr create(const IJawsMakoPtr &jawsMako);
1377
1384 virtual double getWidth() = 0;
1385
1390 virtual double getHeight() = 0;
1391
1399 virtual FRect getCropBox() = 0;
1400
1409 virtual FRect getBleedBox() = 0;
1410
1419 virtual FRect getTrimBox() = 0;
1420
1429 virtual FRect getContentBox() = 0;
1430
1435 virtual int32 getRotate() = 0;
1436
1442 virtual void setRotate(int32 rotate) = 0;
1443
1449 virtual IDOMFixedPagePtr getContent() = 0;
1450
1460 virtual IPageRasterPtr getPageRaster () = 0;
1461
1479 virtual IDOMFixedPagePtr edit() = 0;
1480
1489 virtual void revert() = 0;
1490
1495 virtual bool isLoaded() = 0;
1496
1501 virtual bool isEdited() = 0;
1502
1508 virtual void setMetadataChanged() const = 0;
1509
1514 virtual void setContent(const IDOMFixedPagePtr &content) = 0;
1515
1526 virtual void release() = 0;
1527
1533
1538 virtual void addAnnotation(const IAnnotationPtr &annotation) = 0;
1539
1547 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference) = 0;
1548
1554 virtual void removeAnnotation(uint32 index) = 0;
1555
1561 virtual void removeAnnotation(const IAnnotationPtr &annotation) = 0;
1562
1566 virtual void removeAnnotations() = 0;
1567
1573 virtual void getTextRuns(CTextRunVect &runs) = 0;
1574
1579 virtual IDOMCatalogPtr getCatalog() const = 0;
1580
1585 virtual DOMid getPageId() = 0;
1586
1592
1597 virtual IDOMJobTkPtr getJobTicket() const = 0;
1598
1603 virtual void setJobTicket(const IDOMJobTkPtr &jobTicket) = 0;
1604
1610 virtual IPagePtr clone() = 0;
1611
1612 //
1613 // PDF-specific object editing and interrogation
1614 //
1615
1627 virtual IPDFObjectPtr lookupFarReference(const IPDFFarReferencePtr &farReference, IPDFObjectStorePtr &store,
1628 const IDocumentPtr &document = IDocumentPtr()) = 0;
1629
1636 virtual IPDFObjectStorePtr getObjectStore() = 0;
1637
1638 //
1639 // PDF-specific Media Box handling
1640 //
1641
1659 virtual FBox getMediaBox() const = 0;
1660
1684 virtual void setMediaBox(const FBox &mediaBox) = 0;
1685
1691 virtual IPageLabelPtr getPageLabel() = 0;
1692
1701 virtual void setPageLabel(const IPageLabelPtr &pageLabel) = 0;
1702
1721 virtual float getUserUnit(bool fixed = false) = 0;
1722 };
1723
1724
1731 {
1732 public:
1733 virtual ~IJawsRenderer() = default;
1734
1741 static JAWSMAKO_API IJawsRendererPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
1742
1776 virtual IDOMImagePtr render(const IDOMNodePtr &node, uint32 dpi = 72, uint8 depth = 8,
1777 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
1778 const FRect &bounds = FRect(),
1779 bool maskToInterestingNodes = false,
1780 const CSpotColorNames &retainedSpotColors = CSpotColorNames(),
1781 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
1782 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
1783
1831 virtual CEDLVector<IDOMImagePtr> renderSeparations(const IDOMNodePtr &node,
1832 const uint8 depth = 8,
1833 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
1834 uint8 antiAliased = 0,
1835 const FRect &bounds = FRect(),
1836 uint32 destWidth = 0,
1837 uint32 destHeight = 0,
1838 const CSpotColorNames &retainedSpotColors = CSpotColorNames(),
1839 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
1840 eOptionalContentEvent optionalContentUsage = eOCEView,
1841 const CU8StringVect &processColorNames = CU8StringVect(),
1842 bool alphaGeneration = false,
1843 uint64 bandMemorySize = 0,
1844 const CSpotColorNames &ignoreSpotColors = CSpotColorNames()) = 0;
1845
1848
1902 virtual void renderSeparationsToFrameBuffers(const IDOMNodePtr &node,
1903 uint8 depth,
1904 bool hostEndian,
1905 uint32 destWidth,
1906 uint32 destHeight,
1907 const IDOMColorSpacePtr &colorSpace,
1908 CFrameBufferInfoVect &frameBuffers,
1909 uint8 antiAliased = 0,
1910 const FRect &bounds = FRect(),
1911 const CSpotColorNames &retainedSpotColors = CSpotColorNames(),
1912 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
1913 eOptionalContentEvent optionalContentUsage = eOCEView,
1914 const CU8StringVect &processColorNames = CU8StringVect(),
1915 bool alphaGeneration = false,
1916 uint64 bandMemorySize = 0,
1917 const CSpotColorNames &ignoreSpotColors = CSpotColorNames()) = 0;
1918
1919#ifdef SWIG
1920#if SWIGJAVA
1921 %apply unsigned char *NIOBUFFER { void * buffer };
1922#endif
1923#if SWIGCSHARP
1924 %apply unsigned char INPUT[] { void * buffer };
1925#endif
1926#if SWIGPYTHON
1927 %apply unsigned char INOUT[] { void * buffer };
1928#endif
1929#endif
1930
1959 virtual void renderToFrameBuffer(const IDOMNodePtr &node,
1960 void *buffer,
1961 uint32 stride,
1962 uint32 destWidth,
1963 uint32 destHeight,
1964 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
1965 const FRect &bounds = FRect(),
1966 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
1967 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
1968#ifdef SWIG
1969 %clear void * buffer;
1970#endif
1971
1972#ifdef SWIG
1973#if SWIGJAVA
1974 %apply unsigned char *NIOBUFFER { void * buffer };
1975#endif
1976#if SWIGCSHARP
1977 %apply unsigned char INPUT[] { void * buffer };
1978#endif
1979#if SWIGPYTHON
1980 %apply unsigned char INOUT[] { void * buffer };
1981#endif
1982#endif
1983
2030 virtual void renderToFrameBufferPadAndReverse(const IDOMNodePtr &node,
2031 void *buffer,
2032 uint32 stride,
2033 uint32 pixelStride,
2034 bool reverseComponents,
2035 uint32 destWidth,
2036 uint32 destHeight,
2037 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2038 const FRect &bounds = FRect(),
2039 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2040 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
2041
2042 #ifdef SWIG
2043 %clear void * buffer;
2044 #endif
2045
2055 virtual IDOMImagePtr renderAntiAliased(const IDOMNodePtr &node,
2056 uint32 dpi = 72,
2057 uint8 quality = 3,
2058 const FRect &bounds = FRect()) = 0;
2059
2068
2092 virtual CEDLVector<IDOMImagePtr> renderScreened (const IDOMNodePtr &node, uint32 dpi,
2093 const IHalftone *halftone,
2094 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2095 const FRect &bounds = FRect(),
2096 const bool useCC = true,
2097 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2098 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
2113 virtual IDOMImagePtr renderMonochrome(const IDOMNodePtr &node,
2114 uint32 dpi = 72,
2115 const IHalftone *halftone = nullptr,
2116 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2117 const FRect &bounds = FRect(),
2118 const bool useCC = false
2119 )
2120 {
2121 // Use renderScreened
2122 CSpotHalftone defaultHalftone(60);
2123 const IHalftone *useHalftone = halftone ? halftone : &defaultHalftone;
2124 return renderScreened(node, dpi, useHalftone, colorSpace, bounds, useCC)[0];
2125 }
2126
2127#ifdef SWIG
2128#if SWIGJAVA
2129 %apply char DOUBLEDIM_FIXED[][] { void **buffers };
2130 %apply uint32_t[] { uint32 *strides };
2131#endif
2132#if SWIGCSHARP
2133 %csmethodmodifiers renderScreenedToFrameBuffers "public unsafe";
2134 %apply unsigned char DOUBLEDIM_FIXED[][] { void **buffers };
2135 %apply unsigned int FIXED[] { uint32 *strides };
2136#endif
2137#if SWIGPYTHON
2138 %apply unsigned char DOUBLEDIM_FIXED[][] { void **buffers };
2139 %apply int ARRAY[] { uint32 *strides };
2140#endif
2141#endif
2177 virtual void renderScreenedToFrameBuffers (const IDOMNodePtr &node,
2178 void **buffers, uint32 *strides,
2179 uint32 destWidth,
2180 uint32 destHeight,
2181 const IHalftone *halftone,
2182 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2183 const FRect &bounds = FRect(),
2184 const bool useCC = true,
2185 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2186 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
2187
2188#ifdef SWIG
2189 %clear void **buffers;
2190 %clear uint32 *strides;
2191#endif
2192
2193#ifdef SWIG
2194#if SWIGJAVA
2195 %apply char *BYTE { void *buffer };
2196#endif
2197#if SWIGCSHARP
2198 %apply unsigned char INPUT[] { void * buffer };
2199#endif
2200#if SWIGPYTHON
2201 %apply unsigned char INOUT[] { void * buffer };
2202#endif
2203#endif
2229 void renderMonochromeToFrameBuffer(const IDOMNodePtr &node,
2230 void *buffer, uint32 stride,
2231 uint32 destWidth, uint32 destHeight,
2232 const IHalftone *halftone,
2233 const IDOMColorSpacePtr& colorSpace = IDOMColorSpacePtr(),
2234 const FRect &bounds = FRect(),
2235 const bool useCC = false,
2236 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2237 eOptionalContentEvent optionalContentUsage = eOCEView)
2238 {
2239 // Use renderScreenedToFrameBuffers
2240 renderScreenedToFrameBuffers(node, &buffer, &stride, destWidth, destHeight, halftone, colorSpace,
2241 bounds, useCC, optionalContent, optionalContentUsage);
2242 }
2243 #ifdef SWIG
2244 %clear void * buffer;
2245 #endif
2246
2262 virtual void setEnableTrueTypeNotDef(bool enable) = 0;
2263
2281 virtual void setEnableRasterCompression(bool enable) = 0;
2282
2327 virtual void setBlackPreservation(bool preserveForText, bool preserveForOther) = 0;
2328
2373 virtual void setIgnoreMatchingDeviceIntercept(bool ignoreDeviceIntercept) = 0;
2374
2375 };
2376
2377
2385 {
2386 public:
2387 virtual ~IMediaHandler() = default;
2388
2398 virtual void sizeRequest(const PValue &size, double &pageWidth, double &pageHeight) = 0;
2399 };
2400}
2401
2403#endif
2404
Definition edlvector.h:30
EDL Factory Interface allows one part of the EDL infrastructure to register class creation methods id...
Definition iedlfactory.h:31
Base class Interface for all Reference Counted objects.
Definition ircobject.h:35
EDL session class.
Definition isession.h:21
Description of spot halftones, using Jaws's default spot function. Used for color halftoned rendering...
Definition renderspec.h:122
As per CThresholdArrayHalftone, but for use with color rendering. There is a single width and height,...
Definition renderspec.h:200
A halftone representing an error diffusion screen. Allows the production of results containing a vari...
Definition renderspec.h:257
Description of a frame buffer for use with renderSeparationsToFrameBuffers and Apex rendering functio...
Definition renderspec.h:920
Description of spot halftones, used for color halftoned rendering. Analogous to a PostScript Type 2 H...
Definition renderspec.h:153
Description of a simple spot halftone, at 45 degrees, using Jaws's default spot function....
Definition renderspec.h:89
Allows the temporary storage parameters to be optionally overridden.
Definition types.h:390
Description of a Type 3 8-bit threshold array halftone for use with monochrome rendering....
Definition renderspec.h:175
A halftone representing a simple threshold. Used for monochrome rendering.
Definition renderspec.h:219
A self-contained collection of IDocuments.
Definition jawsmako.h:798
virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference, uint32 &docNum, uint32 &pageNum)=0
Find the annotation with the given annotation reference within the document assembly,...
virtual uint32 getNumDocuments()=0
Return the number of documents in the assembly, if known. Note: For streaming inputs such as PCL/5,...
virtual IDOMSecurityInfoPtr getSecurityInfo() const =0
Get the security information that applied to the source file/stream. Currently only relevant for PDF.
virtual void removeDocument(const IDocumentPtr &document)=0
Remove the given document from the document. If the document is not present, an exception will be rai...
virtual bool documentExists(uint32 index)=0
Determine if a document with the given index exists in the assembly.
virtual IInputStreamPtr getXmpPacket() const =0
Get the PDF XMP packet, if present.
virtual void setXmpPacket(const IInputStreamPtr &xmpPacket)=0
Set the PDF XMP packet, if present. Note that the XMP packet in any PDF output will be modified to ma...
virtual IDOMMetadataPtr getJobMetadata() const =0
Get the job metadata, if present (ie the document properties).
virtual IDocumentPtr getDocument(uint32 index=0)=0
Get the IDocument from the assembly at the given index.
virtual void setJobTicket(const IDOMJobTkPtr &jobTicket)=0
Set the document job ticket.
virtual void findTarget(DOMid targetId, uint32 &docNum, uint32 &pageNum)=0
Find the page containing the target with the given DOMid in the assembly, providing the index of the ...
virtual void removeDocument(uint32 index)=0
Remove the document at the given index.
virtual IDocumentAssemblyPtr clone()=0
Clone an IDocumentAssembly. Will also clone all the documents and pages in the assembly.
static JAWSMAKO_API IDocumentAssemblyPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor=IProgressMonitorPtr())
Create a new, empty document assembly.
virtual IDOMImagePtr getThumbnail() const =0
Get the thumbnail image for the assembly.
virtual IDOMJobTkPtr getJobTicket() const =0
Get the overall job ticket for the entire assembly, if present.
virtual void insertDocument(const IDocumentPtr &document, uint32 index=0)=0
Insert a document into the assembly at the given index.
virtual void setJobMetadata(const IDOMMetadataPtr &metadata)=0
Set the job metadata.
virtual void appendDocument(const IDocumentPtr &document)=0
Append a document to the assembly.
virtual void setThumbnail(const IDOMImagePtr &thumbnail)=0
Sets a new thumbnail image for the document assembly. The image must be in either JPEG or PNG format....
virtual ~IDocumentAssembly()=default
virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference)=0
Find the annotation with the given annotation reference within the document assembly....
A document from an IDocumentAssembly, allowing for high level document and page management,...
Definition jawsmako.h:991
virtual IThreadsPtr getThreads() const =0
Get the document threads, if present.
virtual IPDFObjectStorePtr getObjectStore()=0
Obtain access to the document level object store. Objects which are controlled by formal Mako APIs ma...
virtual void insertPage(const IPagePtr &page, uint32 index=0, const IDocumentPtr &sourceDocument=IDocumentPtr())=0
Insert a page into the document at the given index.
virtual void appendPage(const IPagePtr &page, const IDocumentPtr &sourceDocument=IDocumentPtr())=0
Append a page to the document. If the source document that the page came from is provided:
virtual uint32 getNumPages()=0
Return the number of pages in the document, if known.
virtual IFormPtr getForm() const =0
Get the document interactive form, if present.
virtual IDOMOutlinePtr getOutline() const =0
Get the document outline, if present.
virtual void setOutline(const IDOMOutlinePtr &outline)=0
Set the document outline, if present.
virtual ~IDocument()=default
virtual void removePage(const IPagePtr &page)=0
Remove the given page from the document. If the page is not present, an exception will result.
virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference)=0
Find the annotation with the given annotation reference within the document. Throws an IError if the ...
virtual bool pageExists(uint32 index)=0
Determine if a page with the given index exists in the document.
virtual IPDFObjectPtr lookupFarReference(const IPDFFarReferencePtr &farReference, IPDFObjectStorePtr &store)=0
Attempt to find and resolve an indirect far reference to a PDF object. If found, the object store tha...
virtual void setForm(const IFormPtr &form)=0
Set the document interactive form.
virtual void addNamedDestination(const INamedDestinationPtr &namedDestination)=0
Add a named destination to the document.
virtual void findTarget(DOMid targetId, uint32 &pageNum)=0
Find the page containing the target with the given DOMid in the document, providing the index of the ...
virtual void setJobTicket(const IDOMJobTkPtr &jobTicket)=0
Set the document job ticket.
virtual IDocumentPtr clone()=0
Clone an IDocument. Will also clone all the pages in the document.
virtual void setStructure(const IStructurePtr &structure)=0
Set the structure content for the document.
virtual void removePage(uint32 index)=0
Remove the page at the given index.
virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference, uint32 &pageNum)=0
Find the annotation with the given annotation reference within the document, providing the index of t...
virtual IPagePtr getPage(uint32 index=0)=0
Get the IPage from the document at the given index.
virtual IDOMJobTkPtr getJobTicket() const =0
Get the document job ticket, if present.
virtual IPDFObjectPtr readPdfObject(const IPDFReferencePtr &reference)=0
Raw access to the PDF object database from an original PDF file. For informational purposes only; the...
virtual CNamedDestinationVect getNamedDestinations()=0
Get any named destinations present in the document.
virtual void setOptionalContent(const IOptionalContentPtr &optionalContent)=0
Set the optional content for the document.
virtual void setNamedDestinations(const CNamedDestinationVect &namedDestinations)=0
Replace the named destinations in the document with the given vector.
static JAWSMAKO_API IDocumentPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor=IProgressMonitorPtr())
Create an empty document.
virtual IStructurePtr getStructure() const =0
Get the structure information if present.
virtual CFileSpecAsEmbeddedDataVect getEmbeddedStreams()=0
Get any embedded streams or attachments attached to the document. This is currently a PDF-specific fe...
virtual IPDFDictionaryPtr readPdfTrailerDictionary()=0
Raw access to the PDF trailer dictionary. For informational purposes only; the object returned from t...
virtual IOptionalContentPtr getOptionalContent() const =0
Get the optional content if present.
virtual COutputIntentVect getOutputIntents() const =0
Get the output intents, if present. A PDF may have more than one output intent; for standards such as...
virtual void addEmbeddedStream(const IFileSpecAsEmbeddedDataPtr &embeddedData)=0
Add an embedded file stream to the document. This is currently a PDF-specific feature.
An abstract base class for communicating halftone information to the Jaws renderer,...
Definition renderspec.h:77
Simple interface to provide a consistent hashing method for Mako objects.
Definition hashable.h:25
Abstract input source that can open files from disk or a stream and create an IDocumentAssembly for t...
Definition jawsmako.h:471
virtual IDocumentAssemblyPtr open(const IInputStreamPtr &inputStream)=0
Open a stream, returning the IDocumentAssembly representing the contents.
virtual ~IInput()=default
virtual void setParameter(const U8String &param, const U8String &value)=0
Apply a key value pair output parameter with a string value. The parameter name is case-insensitive....
static JAWSMAKO_API IInputPtr create(const IJawsMakoPtr &jawsMako, eFileFormat format, const IProgressMonitorPtr &progressMonitor=IProgressMonitorPtr())
Create an input for reading source documents in the given format. The following formats are currently...
virtual IDocumentAssemblyPtr open(const U8String &pathToFile)=0
Open a file on disk, returning the IDocumentAssembly representing the contents.
virtual void setSequentialMode(bool sequential)=0
Set/unset sequential mode on this input.
virtual IDocumentAssemblyPtr open(const String &pathToFile)=0
Open a file on disk, returning the IDocumentAssembly representing the contents. Takes a wide characte...
An instance of the IJawsMako library. Only one instance of this object is currently allowed....
Definition jawsmako.h:311
static JAWSMAKO_API void enablePDFOutput(const IJawsMakoPtr &jawsMako)
Enable PDF Output for JawsMako.
static JAWSMAKO_API void enablePSInput(const IJawsMakoPtr &jawsMako)
Enable PostScript Input for JawsMako.
static JAWSMAKO_API void enablePSOutput(const IJawsMakoPtr &jawsMako)
Enable PostScript Output for JawsMako.
virtual void freeMemory()=0
Inform JawsMako that system memory is being exhausted. This will cause JawsMako to free up cached inf...
virtual ~IJawsMako()=default
virtual IDOMFontPtr findFont(const U8String &fontName, uint32_t &fontIndex)=0
Find a font from the system fonts, and the font index if applicable.
static JAWSMAKO_API void enablePDFInput(const IJawsMakoPtr &jawsMako)
Enable PDF Input for JawsMako.
virtual void setImageDecompressorCacheSize(uint32 decompressorCacheSizeMB)=0
Set the maximum size of the image decompressor cache in megabytes.
static JAWSMAKO_API void enableAllFeatures(const IJawsMakoPtr &jawsMako)
Enable all JawsMako features.
Definition jawsmako.h:371
virtual bool findFont(const U8String &fontName)=0
Check to see if a system font with the given name is available.
A renderer that uses the Jaws RIP to create images from arbitrary DOM.
Definition jawsmako.h:1731
JawsMako::CEDSHalftone CEDSHalftone
Definition jawsmako.h:2067
virtual IDOMImagePtr renderAntiAliased(const IDOMNodePtr &node, uint32 dpi=72, uint8 quality=3, const FRect &bounds=FRect())=0
Render a node to an antialiased, DeviceRGB image suitable for display, using supersampling.
virtual void setEnableTrueTypeNotDef(bool enable)=0
Enable the use of a True Type font's /.notdef glyph in the output.
JawsMako::CThresholdHalftone CThresholdHalftone
Definition jawsmako.h:2066
JawsMako::CColorThresholdArrayHalftone CColorThresholdArrayHalftone
Definition jawsmako.h:2065
virtual void setBlackPreservation(bool preserveForText, bool preserveForOther)=0
Enable/control 100% black preservation.
JawsMako::IHalftone IHalftone
Definition jawsmako.h:2060
JawsMako::CFrameBufferInfo CFrameBufferInfo
Definition jawsmako.h:1846
JawsMako::CFrameBufferInfoVect CFrameBufferInfoVect
Definition jawsmako.h:1847
JawsMako::CSeparatedColorSpotHalftone CSeparatedColorSpotHalftone
Definition jawsmako.h:2063
JawsMako::CThresholdArrayHalftone CThresholdArrayHalftone
Definition jawsmako.h:2064
virtual void setIgnoreMatchingDeviceIntercept(bool ignoreDeviceIntercept)=0
Allow intercept color spaces for a matching Device space to be ignored.
void renderMonochromeToFrameBuffer(const IDOMNodePtr &node, void *buffer, uint32 stride, uint32 destWidth, uint32 destHeight, const IHalftone *halftone, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), const FRect &bounds=FRect(), const bool useCC=false, const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView)
Convenience Render a node to a 1-bit monochrome frame buffer.
Definition jawsmako.h:2229
virtual void setEnableRasterCompression(bool enable)=0
Enable the use of compression for compressed output.
virtual void renderToFrameBuffer(const IDOMNodePtr &node, void *buffer, uint32 stride, uint32 destWidth, uint32 destHeight, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), const FRect &bounds=FRect(), const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView)=0
Render a node to a supplied frame buffer, at 8 bits per component.
virtual CEDLVector< IDOMImagePtr > renderSeparations(const IDOMNodePtr &node, const uint8 depth=8, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), uint8 antiAliased=0, const FRect &bounds=FRect(), uint32 destWidth=0, uint32 destHeight=0, const CSpotColorNames &retainedSpotColors=CSpotColorNames(), const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView, const CU8StringVect &processColorNames=CU8StringVect(), bool alphaGeneration=false, uint64 bandMemorySize=0, const CSpotColorNames &ignoreSpotColors=CSpotColorNames())=0
Render a node to a set of separated images, with optional antialiasing. For ease of use,...
virtual IDOMImagePtr render(const IDOMNodePtr &node, uint32 dpi=72, uint8 depth=8, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), const FRect &bounds=FRect(), bool maskToInterestingNodes=false, const CSpotColorNames &retainedSpotColors=CSpotColorNames(), const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView)=0
Render a node to an image.
virtual CEDLVector< IDOMImagePtr > renderScreened(const IDOMNodePtr &node, uint32 dpi, const IHalftone *halftone, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), const FRect &bounds=FRect(), const bool useCC=true, const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView)=0
Render a node to a screened result, in monochrome or CMYK returning one image per colorant.
virtual void renderToFrameBufferPadAndReverse(const IDOMNodePtr &node, void *buffer, uint32 stride, uint32 pixelStride, bool reverseComponents, uint32 destWidth, uint32 destHeight, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), const FRect &bounds=FRect(), const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView)=0
As per renderToFrameBuffer, but allowing for pixel byte order and padding control.
static JAWSMAKO_API IJawsRendererPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor=IProgressMonitorPtr())
Create a Jaws renderer instance.
virtual void renderScreenedToFrameBuffers(const IDOMNodePtr &node, void **buffers, uint32 *strides, uint32 destWidth, uint32 destHeight, const IHalftone *halftone, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), const FRect &bounds=FRect(), const bool useCC=true, const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView)=0
Render a node to a 1-bit monochrome frame buffer, a series of three 1-bit frame buffers for RGB,...
virtual ~IJawsRenderer()=default
JawsMako::CSpotHalftone CSpotHalftone
Definition jawsmako.h:2061
virtual void renderSeparationsToFrameBuffers(const IDOMNodePtr &node, uint8 depth, bool hostEndian, uint32 destWidth, uint32 destHeight, const IDOMColorSpacePtr &colorSpace, CFrameBufferInfoVect &frameBuffers, uint8 antiAliased=0, const FRect &bounds=FRect(), const CSpotColorNames &retainedSpotColors=CSpotColorNames(), const IOptionalContentPtr &optionalContent=IOptionalContentPtr(), eOptionalContentEvent optionalContentUsage=eOCEView, const CU8StringVect &processColorNames=CU8StringVect(), bool alphaGeneration=false, uint64 bandMemorySize=0, const CSpotColorNames &ignoreSpotColors=CSpotColorNames())=0
As per renderSeparations(), but targeting a set of frame buffers, described by a vector CFrameBufferI...
virtual IDOMImagePtr renderMonochrome(const IDOMNodePtr &node, uint32 dpi=72, const IHalftone *halftone=nullptr, const IDOMColorSpacePtr &colorSpace=IDOMColorSpacePtr(), const FRect &bounds=FRect(), const bool useCC=false)
Convenience - Render a node to a 1-bit monochrome image.
Definition jawsmako.h:2113
JawsMako::CColorSpotHalftone CColorSpotHalftone
Definition jawsmako.h:2062
Interface allowing users of supported input types to monitor/handle unsatisfied media requests....
Definition jawsmako.h:2385
virtual void sizeRequest(const PValue &size, double &pageWidth, double &pageHeight)=0
Invoked by the input when the media size is unknown.
virtual ~IMediaHandler()=default
Abstract output sink that can output DOM to a file or stream in a given output format.
Definition jawsmako.h:605
virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const String &pathToFile)=0
Create an output writer for the given assembly, targeting a file on disk. As above,...
virtual void writeAssembly(const IDocumentAssemblyPtr &assembly, const U8String &pathToFile)=0
Write the given document assembly to a file on disk.
virtual ~IOutput()=default
virtual void setPreset(const U8String &preset)=0
Configure the output according to a general preset. Please see the supplied documentation for details...
virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const U8String &pathToFile)=0
Create an output writer for the given assembly, targeting a file on disk. This is designed to allow s...
virtual void writeAssembly(const IDocumentAssemblyPtr &assembly, const String &pathToFile)=0
Write the given document assembly to a file on disk, specified by a wide character string.
virtual void setParameter(const U8String &param, const U8String &value)=0
Apply a key value pair output parameter with a string value. The parameter name is case-insensitive....
virtual void setAllowedPermissionsFlags(uint32 allowedPermissions)=0
Control whether assemblies with certain security permission flags are allowed to be written by this o...
static JAWSMAKO_API IOutputPtr create(const IJawsMakoPtr &jawsMako, eFileFormat format, const IProgressMonitorPtr &progressMonitor=IProgressMonitorPtr())
Create an output for writing source in the given format.
virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const IOutputStreamPtr &stream)=0
Create an output writer for the given assembly, targeting a stream.
virtual void writeAssembly(const IDocumentAssemblyPtr &assembly, const IOutputStreamPtr &stream)=0
Write the given document assembly to a stream.
A writer for writing individual pages and documents to an output in piecemeal fashion.
Definition jawsmako.h:761
virtual void endDocument()=0
Finish a document.
virtual void beginDocument(const IDocumentPtr &document)=0
Begin a document. This document need not be completely populated with pages.
virtual void finish()=0
Finish output and flush the results.
virtual void writePage(const IPagePtr &page)=0
Write a page to the output.
virtual ~IOutputWriter()=default
A page from an IDocument, allowing high level page management, and providing on-demand access to page...
Definition jawsmako.h:1367
virtual COutputIntentVect getOutputIntents()=0
Get the output intents, if present.
virtual IDOMFixedPagePtr edit()=0
Mark the page as edited, returning the editable IDOMFixedPage. Do this before attempting to edit the ...
virtual DOMid getPageId()=0
Get the Id of the page.
virtual void release()=0
Release the reference to the page content, if possible. If a page is not edited, and the original sou...
virtual double getWidth()=0
Get the page (media) width of the page. This does not require the page contents to be loaded.
virtual void setMetadataChanged() const =0
Let the page know that the content metadata has changed. For example if either of the MediaBox,...
virtual IDOMFixedPagePtr getContent()=0
Return a smart pointer to the IDOMFixedPage, loading it from the source document if necessary.
virtual IDOMJobTkPtr getJobTicket() const =0
Get the page job ticket, if present.
virtual float getUserUnit(bool fixed=false)=0
Get the PDF UserUnit.
virtual IPDFObjectStorePtr getObjectStore()=0
Obtain access to the page level object store. Objects which are controlled by formal Mako APIs may no...
virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference)=0
Find the annotation with the given annotation reference within the page. Throws an IError if the targ...
virtual ~IPage()=default
virtual IPagePtr clone()=0
Clone an IPage. For edited pages, this will clone the DOM tree.
virtual FRect getTrimBox()=0
Get the TrimBox for this page. The TrimBox is a rectangle defining the intended dimensions of the fin...
virtual IPDFObjectPtr lookupFarReference(const IPDFFarReferencePtr &farReference, IPDFObjectStorePtr &store, const IDocumentPtr &document=IDocumentPtr())=0
Attempt to find and resolve an indirect far reference to a PDF object. If found, the object store tha...
virtual FBox getMediaBox() const =0
Obtain the PDF media box for this page.
virtual void removeAnnotation(const IAnnotationPtr &annotation)=0
Remove the given annotation from the page. If the page is not present, an exception will be thrown.
virtual bool isEdited()=0
Has the page been edited? That is, has the DOM been fetched?
virtual void setContent(const IDOMFixedPagePtr &content)=0
Replace the content with the given fixed page.
virtual IPageLabelPtr getPageLabel()=0
Get the page label.
virtual IDOMCatalogPtr getCatalog() const =0
Get the IDOMCatalog associated with this page.
virtual void setPageLabel(const IPageLabelPtr &pageLabel)=0
Set the page label.
virtual IPageRasterPtr getPageRaster()=0
Return a smart pointer to the IPageRaster, loading it from the source document if necessary....
static JAWSMAKO_API IPagePtr create(const IJawsMakoPtr &jawsMako)
Create an empty page.
virtual FRect getContentBox()=0
Get the ContentBox for this page. The ContentBox (also known as an ArtBox) is a rectangle defining th...
virtual void getTextRuns(CTextRunVect &runs)=0
Get the page's text runs. Text present in Tiling brushes will not be returned.
virtual int32 getRotate()=0
Get the view rotation for the page, in degrees clockwise.
virtual void removeAnnotation(uint32 index)=0
Remove the annotation at the given index.
virtual void removeAnnotations()=0
Remove all the annotations from the page.
virtual void setRotate(int32 rotate)=0
Set the view rotation for the page, in degrees clockwise. Must be a multiple of 90 degrees.
virtual FRect getCropBox()=0
Get the CropBox for this page. The CropBox is a rectangle defining the visible region of the page.
virtual void setJobTicket(const IDOMJobTkPtr &jobTicket)=0
Set the page job ticket.
virtual void revert()=0
Revert any edits to a page and mark the page as non-edited if possible.
virtual CAnnotationVect getAnnotations()=0
Get the annotations for the page, as a vector.
virtual void setMediaBox(const FBox &mediaBox)=0
Set the PDF media box for this page.
virtual FRect getBleedBox()=0
Get the BleedBox for this page. The BleedBox is a rectangle defining the region to which the contents...
virtual void addAnnotation(const IAnnotationPtr &annotation)=0
Add the given annotation.
virtual double getHeight()=0
Get the page (media) height of the page.
virtual bool isLoaded()=0
Has the page been loaded? That is, has the DOM been fetched?
A rasterized equivalent of a page from an IDocument.
Definition jawsmako.h:1285
virtual uint32 getNumComponents() const =0
Get the number of component per pixel.
virtual uint8 * getFrameBuffer() const =0
Get the address the raw frame buffer.
virtual bool isBlank() const =0
Return true if the page is unmarked.
virtual uint32 getRawBytesPerRow() const =0
Get the number of bytes per row.
virtual IDOMImagePtr getAsDOMImage() const =0
Return an IDOMImage equivalent of the raster image.
virtual uint32 getResY() const =0
Get the resolution of the raster image along the Y-axis.
virtual uint32 getResX() const =0
Get the resolution of the raster image along the X-axis.
virtual uint32 getWidth() const =0
Get the width of the raster image.
virtual void releaseFrameBuffer()=0
Release the frame buffer for this raster.
virtual uint32 getBPC() const =0
Get the number of bits per component.
virtual uint32 getHeight() const =0
Get the height of the raster image.
A generic renderer interface.
Definition renderspec.h:1002
Stores a "property" value that is tagged with an enumeration value that indicates the underlying type...
Definition edlproperty.h:31
BoxTmpl< double > FBox
Definition edlgeom.h:443
RectTmpl< double > FRect
Definition edlgeom.h:340
unsigned int uint32
Definition edltypes.h:34
unsigned long long uint64
Definition edltypes.h:35
signed int int32
Definition edltypes.h:29
unsigned char uint8
Definition edltypes.h:32
EDL::uint64 DOMid
Type used to uniquely idenitify a DOM node.
Definition idomid.h:17
static JAWSMAKO_API IJawsMakoPtr create(const U8String &tempDir=U8String(""), const U8String &cacheDir=U8String(""), const CTemporaryStoreParameters &tempStoreParams=CTemporaryStoreParameters(), const std::map< std::string, std::string > &initialParams=std::map< std::string, std::string >())
Create an IJawsMako instance. Only one may be created at any one time.
EDLSysString U8String
A UTF-8 String.
Definition types.h:146
EDLString String
A wide character string (UTF-16 on Windows, UTF-32 on all other platforms)
Definition types.h:140
Progress monitoring, event handling and abort signalling.
CEDLVector< IFileSpecAsEmbeddedDataPtr > CFileSpecAsEmbeddedDataVect
Definition ifilespec.h:240
JawsMako interactive features.
Definition apexcustompostprocess.h:17
eFileFormat
Definition jawsmako.h:285
@ eFFPPML
PPML.
Definition jawsmako.h:294
@ eFFEPS
Encapsulated PostScript.
Definition jawsmako.h:289
@ eFFPWG
PWG.
Definition jawsmako.h:297
@ eFFPS
PostScript.
Definition jawsmako.h:288
@ eFFPRN
PRN.
Definition jawsmako.h:296
@ eFFPDF
PDF.
Definition jawsmako.h:286
@ eFFSVG
SVG.
Definition jawsmako.h:290
@ eFFXPS
XPS.
Definition jawsmako.h:287
@ eFFUnknown
None of the above.
Definition jawsmako.h:298
@ eFFIJPDS
IJPDS.
Definition jawsmako.h:293
@ eFFOXPS
OpenXPS.
Definition jawsmako.h:295
@ eFFPCL5
PCL5.
Definition jawsmako.h:291
@ eFFPCLXL
PCL/XL.
Definition jawsmako.h:292
CEDLVector< INamedDestinationPtr > CNamedDestinationVect
Definition types.h:178
EDL::IProgressMonitorPtr IProgressMonitorPtr
Definition types.h:87
CEDLSysStringVect CU8StringVect
Definition types.h:169
eOptionalContentEvent
Optional content Event types.
Definition types.h:195
@ eOCEView
View.
Definition types.h:197
CEDLVector< U8String > CSpotColorNames
Definition types.h:171
CEDLVector< CFrameBufferInfo > CFrameBufferInfoVect
Definition renderspec.h:966
CEDLVector< IAnnotationPtr > CAnnotationVect
Definition interactive.h:70
CEDLVector< ITextRunPtr > CTextRunVect
Definition types.h:173
CEDLVector< IOutputIntentPtr > COutputIntentVect
Definition types.h:175
Platform-dependent defines, enumerations, types etc. that are visible through the EDL API.
Render specification classes and post-processes.
#define DECL_SMART_PTR(cls)
Definition smartptr.h:211
#define JAWSMAKO_API
Definition types.h:29