Mako 9.1.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>
15#include <jawsmako/types.h>
17#include <jawsmako/pagelabels.h>
18#include <jawsmako/renderspec.h>
19
39
56
69
137
167
186
205
213
220
221
264
274
275
276#include <jawsmako/types.h>
277#include <jawsmako/interactive.h>
278#include <edl/idompage.h>
279
280namespace JawsMako
281{
282 using namespace EDL;
283
301
311 class IJawsMako : virtual public ISession, virtual public IEDLClassFactory
312 {
313 public:
314 virtual ~IJawsMako() = default;
315
337 static JAWSMAKO_API IJawsMakoPtr create(const U8String &tempDir = U8String(""),
338 const U8String &cacheDir = U8String(""),
339 const CTemporaryStoreParameters &tempStoreParams = CTemporaryStoreParameters(),
340 const std::map<std::string, std::string> &initialParams = std::map<std::string, std::string> ());
341
346 static JAWSMAKO_API void enablePDFInput(const IJawsMakoPtr &jawsMako);
347
352 static JAWSMAKO_API void enablePDFOutput(const IJawsMakoPtr &jawsMako);
353
358
365 static JAWSMAKO_API void enablePSInput(const IJawsMakoPtr &jawsMako);
366
371 static JAWSMAKO_API void enablePSOutput(const IJawsMakoPtr &jawsMako);
372
377 static JAWSMAKO_API void enableAllFeatures(const IJawsMakoPtr &jawsMako)
378 {
379 enablePDFInput(jawsMako);
380 enablePDFOutput(jawsMako);
381 enablePSInput(jawsMako);
382 enablePSOutput(jawsMako);
383 }
384
385#ifdef __APPLE__
399 virtual void lockOpenFiles(bool lock) = 0;
400#endif
401
407 virtual void freeMemory() = 0;
408
409 #ifdef SWIG
410 %apply uint32_t &OUTPUT { uint32_t &fontIndex };
411 #endif
431 virtual IDOMFontPtr findFont(const U8String &fontName, uint32_t &fontIndex) = 0;
432 #ifdef SWIG
433 %clear uint32_t &fontIndex;
434 #endif
435
453 virtual bool findFont(const U8String &fontName) = 0;
454
467 virtual void setImageDecompressorCacheSize(uint32 decompressorCacheSizeMB) = 0;
468 };
469
476 class IInput : public IRCObject
477 {
478 public:
479 virtual ~IInput() = default;
480
500 static JAWSMAKO_API IInputPtr create(const IJawsMakoPtr &jawsMako, eFileFormat format, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr());
501
508 virtual IDocumentAssemblyPtr open(const U8String &pathToFile) = 0;
509
516 virtual IDocumentAssemblyPtr open(const String &pathToFile) = 0;
517
524 virtual IDocumentAssemblyPtr open(const IInputStreamPtr &inputStream) = 0;
525
589 virtual void setSequentialMode(bool sequential) = 0;
590
599 virtual void setParameter(const U8String &param, const U8String &value) = 0;
600 };
601
602
603
610 class IOutput : public IRCObject
611 {
612 public:
613 virtual ~IOutput() = default;
614
631 static JAWSMAKO_API IOutputPtr create(const IJawsMakoPtr &jawsMako, eFileFormat format, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
632
633 /*
634 * Configuration
635 */
636
647 virtual void setPreset(const U8String &preset) = 0;
648
658 virtual void setParameter(const U8String &param, const U8String &value) = 0;
659
702 virtual void setAllowedPermissionsFlags(uint32 allowedPermissions) = 0;
703
704
710 virtual void writeAssembly(const IDocumentAssemblyPtr &assembly,
711 const U8String &pathToFile) = 0;
712
719 virtual void writeAssembly(const IDocumentAssemblyPtr &assembly,
720 const String &pathToFile) = 0;
721
727 virtual void writeAssembly(const IDocumentAssemblyPtr &assembly,
728 const IOutputStreamPtr &stream) = 0;
729
739 virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const U8String &pathToFile) = 0;
740
748 virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const String &pathToFile) = 0;
749
756 virtual IOutputWriterPtr openWriter(const IDocumentAssemblyPtr &assembly, const IOutputStreamPtr &stream) = 0;
757 };
758
759
760
767 {
768 public:
769 virtual ~IOutputWriter() = default;
770
777 virtual void beginDocument(const IDocumentPtr &document) = 0;
778
782 virtual void endDocument() = 0;
783
791 virtual void writePage(const IPagePtr &page) = 0;
792
796 virtual void finish() = 0;
797 };
798
804 {
805 public:
806 virtual ~IDocumentAssembly() = default;
807
815 static JAWSMAKO_API IDocumentAssemblyPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
816
824 virtual uint32 getNumDocuments() = 0;
825
832 virtual IDocumentPtr getDocument(uint32 index = 0) = 0;
833
841 virtual bool documentExists(uint32 index) = 0;
842
849 virtual void insertDocument(const IDocumentPtr &document, uint32 index = 0) = 0;
850
856 virtual void removeDocument(uint32 index) = 0;
857
863 virtual void removeDocument(const IDocumentPtr &document) = 0;
864
869 virtual void appendDocument(const IDocumentPtr &document) = 0;
870
875 virtual IDOMJobTkPtr getJobTicket() const = 0;
876
881 virtual void setJobTicket(const IDOMJobTkPtr &jobTicket) = 0;
882
883 #ifdef SWIG
884 %apply uint32_t &OUTPUT { uint32 &docNum };
885 %apply uint32_t &OUTPUT { uint32 &pageNum };
886 #endif
896 virtual void findTarget(DOMid targetId, uint32 &docNum, uint32 &pageNum) = 0;
897 #ifdef SWIG
898 %clear uint32 &docNum;
899 %clear uint32 &pageNum;
900 #endif
901
910 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference) = 0;
911
912 #ifdef SWIG
913 %apply uint32_t &OUTPUT { uint32 &docNum };
914 %apply uint32_t &OUTPUT { uint32 &pageNum };
915 #endif
926 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference, uint32 &docNum, uint32 &pageNum) = 0;
927 #ifdef SWIG
928 %clear uint32 &docNum;
929 %clear uint32 &pageNum;
930 #endif
931
937 virtual IDocumentAssemblyPtr clone() = 0;
938
944 virtual IDOMMetadataPtr getJobMetadata() const = 0;
945
950 virtual void setJobMetadata(const IDOMMetadataPtr &metadata) = 0;
951
956 virtual IInputStreamPtr getXmpPacket() const = 0;
957
965 virtual void setXmpPacket(const IInputStreamPtr &xmpPacket) = 0;
966
973 virtual IDOMSecurityInfoPtr getSecurityInfo() const = 0;
974
979 virtual IDOMImagePtr getThumbnail() const = 0;
980
986 virtual void setThumbnail(const IDOMImagePtr &thumbnail) = 0;
987 };
988
999
1006 class IDocument : public IRCObject
1007 {
1008 public:
1009 virtual ~IDocument() = default;
1010
1017 static JAWSMAKO_API IDocumentPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
1018
1026 virtual uint32 getNumPages() = 0;
1027
1033 virtual IPagePtr getPage(uint32 index = 0) = 0;
1034
1041 virtual bool pageExists(uint32 index) = 0;
1042
1060 virtual void insertPage(const IPagePtr &page, uint32 index = 0, const IDocumentPtr &sourceDocument = IDocumentPtr()) = 0;
1061
1077 virtual void appendPage(const IPagePtr &page, const IDocumentPtr &sourceDocument = IDocumentPtr()) = 0;
1078
1084 virtual void removePage(uint32 index) = 0;
1085
1091 virtual void removePage(const IPagePtr &page) = 0;
1092
1093 #ifdef SWIG
1094 %apply uint32_t &OUTPUT { uint32 &pageNum };
1095 #endif
1103 virtual void findTarget(DOMid targetId, uint32 &pageNum) = 0;
1104 #ifdef SWIG
1105 %clear uint32 &pageNum;
1106 #endif
1107
1115 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference) = 0;
1116
1117 #ifdef SWIG
1118 %apply uint32_t &OUTPUT { uint32 &pageNum };
1119 #endif
1128 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference, uint32 &pageNum) = 0;
1129 #ifdef SWIG
1130 %clear uint32 &pageNum;
1131 #endif
1132
1137 virtual IDOMJobTkPtr getJobTicket() const = 0;
1138
1143 virtual void setJobTicket(const IDOMJobTkPtr &jobTicket) = 0;
1144
1152
1157 virtual IOptionalContentPtr getOptionalContent() const = 0;
1158
1163 virtual void setOptionalContent(const IOptionalContentPtr &optionalContent) = 0;
1164
1169 virtual IStructurePtr getStructure() const = 0;
1170
1175 virtual void setStructure(const IStructurePtr &structure) = 0;
1176
1181 virtual IDOMOutlinePtr getOutline() const = 0;
1182
1187 virtual void setOutline(const IDOMOutlinePtr &outline) = 0;
1188
1193 virtual IFormPtr getForm() const = 0;
1194
1199 virtual void setForm(const IFormPtr &form) = 0;
1200
1207
1213 virtual void addEmbeddedStream(const IFileSpecAsEmbeddedDataPtr &embeddedData) = 0;
1214
1220
1227 virtual void addNamedDestination(const INamedDestinationPtr &namedDestination) = 0;
1228
1235 virtual void setNamedDestinations(const CNamedDestinationVect &namedDestinations) = 0;
1236
1241 virtual IThreadsPtr getThreads() const = 0;
1242
1248 virtual IDocumentPtr clone() = 0;
1249
1265 virtual void setPagesTransformChain(const ITransformChainPtr &chain,
1266 ePageTransformTrigger trigger,
1267 bool markEdited = true) = 0;
1268
1269 //
1270 // PDF-specific object editing and interrogation
1271 //
1272
1283 virtual IPDFObjectPtr lookupFarReference(const IPDFFarReferencePtr &farReference, IPDFObjectStorePtr &store) = 0;
1284
1291 virtual IPDFObjectStorePtr getObjectStore() = 0;
1292
1301 virtual IPDFObjectPtr readPdfObject(const IPDFReferencePtr &reference) = 0;
1302
1310 virtual IPDFDictionaryPtr readPdfTrailerDictionary() = 0;
1311
1312 };
1313
1319 class IPageRaster : public IRCObject, public IHashable
1320 {
1321 public:
1322
1327 virtual uint32 getWidth () const = 0;
1328
1333 virtual uint32 getHeight () const = 0;
1334
1340 virtual uint32 getResX () const = 0;
1341
1347 virtual uint32 getResY () const = 0;
1348
1353 virtual uint32 getBPC () const = 0;
1354
1359 virtual uint32 getNumComponents () const = 0;
1360
1365 virtual uint32 getRawBytesPerRow () const = 0;
1366
1371 virtual bool isBlank () const = 0;
1372
1377 virtual uint8 *getFrameBuffer () const = 0;
1378
1384 virtual IDOMImagePtr getAsDOMImage () const = 0;
1385
1389 virtual void releaseFrameBuffer () = 0;
1390
1391 };
1393
1401 class IPage : public IRCObject
1402 {
1403 public:
1404 virtual ~IPage() = default;
1405
1411 static JAWSMAKO_API IPagePtr create(const IJawsMakoPtr &jawsMako);
1412
1419 virtual double getWidth() = 0;
1420
1425 virtual double getHeight() = 0;
1426
1434 virtual FRect getCropBox() = 0;
1435
1444 virtual FRect getBleedBox() = 0;
1445
1454 virtual FRect getTrimBox() = 0;
1455
1464 virtual FRect getContentBox() = 0;
1465
1470 virtual int32 getRotate() = 0;
1471
1477 virtual void setRotate(int32 rotate) = 0;
1478
1484 virtual IDOMFixedPagePtr getContent() = 0;
1485
1495 virtual IPageRasterPtr getPageRaster () = 0;
1496
1514 virtual IDOMFixedPagePtr edit() = 0;
1515
1524 virtual void revert() = 0;
1525
1530 virtual bool isLoaded() = 0;
1531
1536 virtual bool isEdited() = 0;
1537
1543 virtual void setMetadataChanged() const = 0;
1544
1549 virtual void setContent(const IDOMFixedPagePtr &content) = 0;
1550
1561 virtual void release() = 0;
1562
1568
1573 virtual void addAnnotation(const IAnnotationPtr &annotation) = 0;
1574
1582 virtual IAnnotationPtr findAnnotation(const IAnnotationReferencePtr &reference) = 0;
1583
1589 virtual void removeAnnotation(uint32 index) = 0;
1590
1596 virtual void removeAnnotation(const IAnnotationPtr &annotation) = 0;
1597
1601 virtual void removeAnnotations() = 0;
1602
1608 virtual void getTextRuns(CTextRunVect &runs) = 0;
1609
1614 virtual IDOMCatalogPtr getCatalog() const = 0;
1615
1620 virtual DOMid getPageId() = 0;
1621
1627
1632 virtual IDOMJobTkPtr getJobTicket() const = 0;
1633
1638 virtual void setJobTicket(const IDOMJobTkPtr &jobTicket) = 0;
1639
1645 virtual IPagePtr clone() = 0;
1646
1647 //
1648 // PDF-specific object editing and interrogation
1649 //
1650
1662 virtual IPDFObjectPtr lookupFarReference(const IPDFFarReferencePtr &farReference, IPDFObjectStorePtr &store,
1663 const IDocumentPtr &document = IDocumentPtr()) = 0;
1664
1671 virtual IPDFObjectStorePtr getObjectStore() = 0;
1672
1673 //
1674 // PDF-specific Media Box handling
1675 //
1676
1694 virtual FBox getMediaBox() const = 0;
1695
1719 virtual void setMediaBox(const FBox &mediaBox) = 0;
1720
1726 virtual IPageLabelPtr getPageLabel() = 0;
1727
1736 virtual void setPageLabel(const IPageLabelPtr &pageLabel) = 0;
1737
1756 virtual float getUserUnit(bool fixed = false) = 0;
1757
1771 virtual void setTransformChain(const ITransformChainPtr &chain,
1772 ePageTransformTrigger trigger,
1773 bool markEdited = true) = 0;
1774 };
1775
1776
1783 {
1784 public:
1785 virtual ~IJawsRenderer() = default;
1786
1793 static JAWSMAKO_API IJawsRendererPtr create(const IJawsMakoPtr &jawsMako, const IProgressMonitorPtr &progressMonitor = IProgressMonitorPtr ());
1794
1828 virtual IDOMImagePtr render(const IDOMNodePtr &node, uint32 dpi = 72, uint8 depth = 8,
1829 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
1830 const FRect &bounds = FRect(),
1831 bool maskToInterestingNodes = false,
1832 const CSpotColorNames &retainedSpotColors = CSpotColorNames(),
1833 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
1834 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
1835
1883 virtual CEDLVector<IDOMImagePtr> renderSeparations(const IDOMNodePtr &node,
1884 const uint8 depth = 8,
1885 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
1886 uint8 antiAliased = 0,
1887 const FRect &bounds = FRect(),
1888 uint32 destWidth = 0,
1889 uint32 destHeight = 0,
1890 const CSpotColorNames &retainedSpotColors = CSpotColorNames(),
1891 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
1892 eOptionalContentEvent optionalContentUsage = eOCEView,
1893 const CU8StringVect &processColorNames = CU8StringVect(),
1894 bool alphaGeneration = false,
1895 uint64 bandMemorySize = 0,
1896 const CSpotColorNames &ignoreSpotColors = CSpotColorNames()) = 0;
1897
1900
1954 virtual void renderSeparationsToFrameBuffers(const IDOMNodePtr &node,
1955 uint8 depth,
1956 bool hostEndian,
1957 uint32 destWidth,
1958 uint32 destHeight,
1959 const IDOMColorSpacePtr &colorSpace,
1960 CFrameBufferInfoVect &frameBuffers,
1961 uint8 antiAliased = 0,
1962 const FRect &bounds = FRect(),
1963 const CSpotColorNames &retainedSpotColors = CSpotColorNames(),
1964 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
1965 eOptionalContentEvent optionalContentUsage = eOCEView,
1966 const CU8StringVect &processColorNames = CU8StringVect(),
1967 bool alphaGeneration = false,
1968 uint64 bandMemorySize = 0,
1969 const CSpotColorNames &ignoreSpotColors = CSpotColorNames()) = 0;
1970
1971#ifdef SWIG
1972#if SWIGJAVA
1973 %apply unsigned char *NIOBUFFER { void * buffer };
1974#endif
1975#if SWIGCSHARP
1976 %apply unsigned char INPUT[] { void * buffer };
1977#endif
1978#if SWIGPYTHON
1979 %apply unsigned char INOUT[] { void * buffer };
1980#endif
1981#endif
1982
2011 virtual void renderToFrameBuffer(const IDOMNodePtr &node,
2012 void *buffer,
2013 uint32 stride,
2014 uint32 destWidth,
2015 uint32 destHeight,
2016 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2017 const FRect &bounds = FRect(),
2018 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2019 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
2020#ifdef SWIG
2021 %clear void * buffer;
2022#endif
2023
2024#ifdef SWIG
2025#if SWIGJAVA
2026 %apply unsigned char *NIOBUFFER { void * buffer };
2027#endif
2028#if SWIGCSHARP
2029 %apply unsigned char INPUT[] { void * buffer };
2030#endif
2031#if SWIGPYTHON
2032 %apply unsigned char INOUT[] { void * buffer };
2033#endif
2034#endif
2035
2082 virtual void renderToFrameBufferPadAndReverse(const IDOMNodePtr &node,
2083 void *buffer,
2084 uint32 stride,
2085 uint32 pixelStride,
2086 bool reverseComponents,
2087 uint32 destWidth,
2088 uint32 destHeight,
2089 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2090 const FRect &bounds = FRect(),
2091 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2092 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
2093
2094 #ifdef SWIG
2095 %clear void * buffer;
2096 #endif
2097
2107 virtual IDOMImagePtr renderAntiAliased(const IDOMNodePtr &node,
2108 uint32 dpi = 72,
2109 uint8 quality = 3,
2110 const FRect &bounds = FRect()) = 0;
2111
2120
2144 virtual CEDLVector<IDOMImagePtr> renderScreened (const IDOMNodePtr &node, uint32 dpi,
2145 const IHalftone *halftone,
2146 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2147 const FRect &bounds = FRect(),
2148 const bool useCC = true,
2149 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2150 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
2165 virtual IDOMImagePtr renderMonochrome(const IDOMNodePtr &node,
2166 uint32 dpi = 72,
2167 const IHalftone *halftone = nullptr,
2168 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2169 const FRect &bounds = FRect(),
2170 const bool useCC = false
2171 )
2172 {
2173 // Use renderScreened
2174 CSpotHalftone defaultHalftone(60);
2175 const IHalftone *useHalftone = halftone ? halftone : &defaultHalftone;
2176 return renderScreened(node, dpi, useHalftone, colorSpace, bounds, useCC)[0];
2177 }
2178
2179#ifdef SWIG
2180#if SWIGJAVA
2181 %apply char DOUBLEDIM_FIXED[][] { void **buffers };
2182 %apply uint32_t[] { uint32 *strides };
2183#endif
2184#if SWIGCSHARP
2185 %csmethodmodifiers renderScreenedToFrameBuffers "public unsafe";
2186 %apply unsigned char DOUBLEDIM_FIXED[][] { void **buffers };
2187 %apply unsigned int FIXED[] { uint32 *strides };
2188#endif
2189#if SWIGPYTHON
2190 %apply unsigned char DOUBLEDIM_FIXED[][] { void **buffers };
2191 %apply int ARRAY[] { uint32 *strides };
2192#endif
2193#endif
2229 virtual void renderScreenedToFrameBuffers (const IDOMNodePtr &node,
2230 void **buffers, uint32 *strides,
2231 uint32 destWidth,
2232 uint32 destHeight,
2233 const IHalftone *halftone,
2234 const IDOMColorSpacePtr &colorSpace = IDOMColorSpacePtr(),
2235 const FRect &bounds = FRect(),
2236 const bool useCC = true,
2237 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2238 eOptionalContentEvent optionalContentUsage = eOCEView) = 0;
2239
2240#ifdef SWIG
2241 %clear void **buffers;
2242 %clear uint32 *strides;
2243#endif
2244
2245#ifdef SWIG
2246#if SWIGJAVA
2247 %apply char *BYTE { void *buffer };
2248#endif
2249#if SWIGCSHARP
2250 %apply unsigned char INPUT[] { void * buffer };
2251#endif
2252#if SWIGPYTHON
2253 %apply unsigned char INOUT[] { void * buffer };
2254#endif
2255#endif
2281 void renderMonochromeToFrameBuffer(const IDOMNodePtr &node,
2282 void *buffer, uint32 stride,
2283 uint32 destWidth, uint32 destHeight,
2284 const IHalftone *halftone,
2285 const IDOMColorSpacePtr& colorSpace = IDOMColorSpacePtr(),
2286 const FRect &bounds = FRect(),
2287 const bool useCC = false,
2288 const IOptionalContentPtr &optionalContent = IOptionalContentPtr(),
2289 eOptionalContentEvent optionalContentUsage = eOCEView)
2290 {
2291 // Use renderScreenedToFrameBuffers
2292 renderScreenedToFrameBuffers(node, &buffer, &stride, destWidth, destHeight, halftone, colorSpace,
2293 bounds, useCC, optionalContent, optionalContentUsage);
2294 }
2295 #ifdef SWIG
2296 %clear void * buffer;
2297 #endif
2298
2314 virtual void setEnableTrueTypeNotDef(bool enable) = 0;
2315
2333 virtual void setEnableRasterCompression(bool enable) = 0;
2334
2379 virtual void setBlackPreservation(bool preserveForText, bool preserveForOther) = 0;
2380
2425 virtual void setIgnoreMatchingDeviceIntercept(bool ignoreDeviceIntercept) = 0;
2426
2427 };
2428
2429
2437 {
2438 public:
2439 virtual ~IMediaHandler() = default;
2440
2441#ifdef SWIG
2442 %apply double &OUTPUT { double &pageWidth };
2443 %apply double &OUTPUT { double &pageHeight };
2444#endif
2454 virtual void sizeRequest(const PValue &size, double &pageWidth, double &pageHeight) = 0;
2455#ifdef SWIG
2456 %clear double &pageWidth;
2457 %clear double &pageHeight;
2458#endif
2459 };
2460}
2461
2463#endif
2464
Definition edlvector.h:31
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:963
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:394
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:804
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:1007
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 void setPagesTransformChain(const ITransformChainPtr &chain, ePageTransformTrigger trigger, bool markEdited=true)=0
Add a transform chain to every page in this document or that will be loaded from an input by this doc...
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:477
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:312
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.
static JAWSMAKO_API void enableApexPDFOutput()
Enable Apex PDF Output 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:377
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:1783
JawsMako::CEDSHalftone CEDSHalftone
Definition jawsmako.h:2119
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:2118
JawsMako::CColorThresholdArrayHalftone CColorThresholdArrayHalftone
Definition jawsmako.h:2117
virtual void setBlackPreservation(bool preserveForText, bool preserveForOther)=0
Enable/control 100% black preservation.
JawsMako::IHalftone IHalftone
Definition jawsmako.h:2112
JawsMako::CFrameBufferInfo CFrameBufferInfo
Definition jawsmako.h:1898
JawsMako::CFrameBufferInfoVect CFrameBufferInfoVect
Definition jawsmako.h:1899
JawsMako::CSeparatedColorSpotHalftone CSeparatedColorSpotHalftone
Definition jawsmako.h:2115
JawsMako::CThresholdArrayHalftone CThresholdArrayHalftone
Definition jawsmako.h:2116
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:2281
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:2113
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:2165
JawsMako::CColorSpotHalftone CColorSpotHalftone
Definition jawsmako.h:2114
Interface allowing users of supported input types to monitor/handle unsatisfied media requests....
Definition jawsmako.h:2437
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:611
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:767
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:1402
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 void setTransformChain(const ITransformChainPtr &chain, ePageTransformTrigger trigger, bool markEdited=true)=0
Add a transform chain to the page that can be automatically invoked on the page content when getConte...
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:1320
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:1053
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:450
RectTmpl< double > FRect
Definition edlgeom.h:347
unsigned int uint32
Definition edltypes.h:36
unsigned long long uint64
Definition edltypes.h:37
signed int int32
Definition edltypes.h:31
unsigned char uint8
Definition edltypes.h:34
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:150
EDLString String
A wide character string (UTF-16 on Windows, UTF-32 on all other platforms)
Definition types.h:144
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:286
@ eFFPPML
PPML.
Definition jawsmako.h:295
@ eFFEPS
Encapsulated PostScript.
Definition jawsmako.h:290
@ eFFPWG
PWG.
Definition jawsmako.h:298
@ eFFPS
PostScript.
Definition jawsmako.h:289
@ eFFPRN
PRN.
Definition jawsmako.h:297
@ eFFPDF
PDF.
Definition jawsmako.h:287
@ eFFSVG
SVG.
Definition jawsmako.h:291
@ eFFXPS
XPS.
Definition jawsmako.h:288
@ eFFUnknown
None of the above.
Definition jawsmako.h:299
@ eFFIJPDS
IJPDS.
Definition jawsmako.h:294
@ eFFOXPS
OpenXPS.
Definition jawsmako.h:296
@ eFFPCL5
PCL5.
Definition jawsmako.h:292
@ eFFPCLXL
PCL/XL.
Definition jawsmako.h:293
CEDLVector< INamedDestinationPtr > CNamedDestinationVect
Definition types.h:182
EDL::IProgressMonitorPtr IProgressMonitorPtr
Definition types.h:91
CEDLSysStringVect CU8StringVect
Definition types.h:173
eOptionalContentEvent
Optional content Event types.
Definition types.h:199
@ eOCEView
View.
Definition types.h:201
CEDLVector< U8String > CSpotColorNames
Definition types.h:175
ePageTransformTrigger
If a transform chain is installed in the page, when this chain should be invoked.
Definition jawsmako.h:993
@ ePTTAlways
Execute the transform chain whenever getContent() or edit() is called.
Definition jawsmako.h:995
@ ePTTLoadOnly
Execute the transform chain only when fetching/refetching from an input source.
Definition jawsmako.h:994
@ ePTTConfigurationChanged
Definition jawsmako.h:996
CEDLVector< CFrameBufferInfo > CFrameBufferInfoVect
Definition renderspec.h:1015
CEDLVector< IAnnotationPtr > CAnnotationVect
Definition interactive.h:70
CEDLVector< ITextRunPtr > CTextRunVect
Definition types.h:177
CEDLVector< IOutputIntentPtr > COutputIntentVect
Definition types.h:179
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