Image Export C/C++ Options

Options are parameters affecting the behavior of an export or transformation. These options are available to the developer when using Image Export. This chapter presents the C/C++ options relevant to the Image Export product.

While default values are provided, users are encouraged to set all options for a number of reasons. In some cases, the default values were chosen to provide backwards compatibility. In other cases, the default values were chosen arbitrarily from a range of possibilities.

One reason that users may want to avoid using the default value for an option is that the default value may change from one release to the next. This is because as standards evolve over time, defaults may be updated to reflect the current status of the technology.

Options are set using the DASetOption call. It is recommended that developers familiarize themselves with all of the options available.

Options may be Local, in which case they only affect the handle for which they are set, or Global, in which case they automatically affect all handles associated with the hDoc and must be set before the call to DAOpenDocument.

The following types of options are covered:

Parent topic: Using the C/C++ API

Character Mapping

This section discusses character mapping options.

SCCOPT_DEFAULTINPUTCHARSET

This option is used in cases where Outside In cannot determine the character set used to encode the text of an input file. When all other means of determining the file’s character set are exhausted, Outside In will assume that an input document is encoded in the character set specified by this option. This is most often used when reading plain-text files, but may also be used when reading HTML or PDF files. The possible character sets are listed in charsets.h.

When “extended test for text” is enabled (see SCCOPT_FIFLAGS), this option will still apply to plain-text input files that are not identified as EBCDIC or Unicode.

This option supersedes the SCCOPT_FALLBACKFORMAT option for selecting the character set assumed for plain-text files. For backwards compatibility, use of deprecated character-set -related values is still currently supported for SCCOPT_FALLBACKFORMAT, though internally such values will be translated into equivalent values for the SCCOPT_DEFAULTINPUTCHARSET. As a result, if an application were to set both options, the last such value set for either option will be the value that takes effect.

Handle Types

NULL, VTHDOC

Scope

Global

Data Type

VTDWORD

Default

Data

The data types are listed in charsets.h.

SCCOPT_UNMAPPABLECHAR

This option selects the character used when a character cannot be found in the output character set. This option takes the Unicode value for the replacement character. It is left to the user to make sure that the selected replacement character is available in the output character set.

Handle Types

VTHDOC

Scope

Local

Data Type

VTWORD

Data

The Unicode value for the character to use.

Default

Output

This section discusses output options.

SCCOPT_RENDERING_PREFER_OIT

This option is valid on 64-bit Linux (Red Hat and Suse), Linux x86-64, Linux-s390-64, Linux-PPC-64, Linux-ARM-64, Solaris Sparc 64-bit, Solaris Intel 64-bit, IBM AIX 64-bit, and HP-UX Itanium 64-bit platforms.

When this option is set to TRUE, the technology will attempt to use its internal graphics code to render fonts and graphics. When set to FALSE, the technology will render images using the operating system’s native graphics subsystem (X11 on UNIX/Linux platforms). This requires that there be an X11 display and a valid DISPLAY variable, regardless of the type of input document.

It is important for the system to be able to locate usable fonts when this option is set to TRUE. Only TrueType fonts (*.ttf or *.ttc files) are currently supported. To ensure that the system can find them, make sure that the environment variable GDFONTPATH includes one or more paths to these files. If fonts cannot be found, Image Export will exit with an error. Oracle does not provide fonts with any Outside In product.

Note:

Note that the maximum total path size for paths included in GDFONTPATH is 256 characters - paths longer than this will be truncated and will result in fonts not being discovered by Image Export.

Handle Types

NULL, VTHDOC

Scope

Global

Data Type

VTBOOL

Data

One of the following values:

Default

FALSE

Input Handling

This section discusses input handling options.

SCCOPT_FALLBACKFORMAT

This option controls how files are handled when their specific application type cannot be determined. This normally affects all plain-text files, because plain-text files are generally identified by process of elimination, for example, when a file isn’t identified as having been created by a known application, it is treated as a plain-text file.

It is recommended that FI_NONE be set to prevent Image Export from exporting unidentified binary files as though they were text, which could generate many pages of “garbage” output.

This option must be set for an hDoc before any subhandle has been created for that hDoc.

A number of values that were formerly allowed for this option have been deprecated. Specifically, the values that selected specific plain-text character sets are no longer to be used. Instead, applications should use the SCCOPT_DEFAULTINPUTCHARSET option for such functionality.

Handle Types

NULL, VTHDOC

Scope

Global

Data Type

VTDWORD

Data

The high VTWORD of this value is reserved and should be set to 0, and the low VTWORD must have one of the following values:

Default

SCCOPT_FIFLAGS

This option affects how an input file’s internal format (application type) is identified when the file is first opened by the Outside In technology. When the extended test flag is in effect, and an input file is identified as being either 7-bit ASCII, EBCDIC, or Unicode, the file’s contents will be interpreted as such by the export process.

The extended test is optional because it requires extra processing and cannot guarantee complete accuracy (which would require the inspection of every single byte in a file to eliminate false positives.)

Handle Types

NULL, VTHDOC

Scope

Global

Data Type

VTDWORD

Data

One of the following values:

Default

SCCOPT_SYSTEMFLAGS

This option controls a number of miscellaneous interactions between the developer and the Outside In Technology.

Handle Type

VTHDOC

Scope

Local

Data Type

VTDWORD

Data

Default

0

SCCOPT_LOTUSNOTESDIRECTORY

This option allows the developer to specify the location of a Lotus Notes or Domino installation for use by the NSF filter. A valid Lotus installation directory must contain the file nnotes.dll.

Note:

Please see section 2.1.1 for NSF support on Win x86-32 or Win x86-64 or section 3.1.1 for NSF support on Linux x86-32 or Solaris Sparc 32.

Handle Types

NULL

Scope

Global

Data Type

VTLPBYTE

Data

A path to the Lotus Notes directory.

Default

If this option isn’t set, then OIT will first attempt to load the Lotus library according to the operating system’s PATH environment variable, and then attempt to find and load the Lotus library as indicated in HKEY_CLASSES_ROOT\Notes.Link.

SCCOPT_PDF_FILTER_REORDER_BIDI

This option controls whether or not the PDF filter will attempt to reorder bidirectional text runs so that the output is in standard logical order as used by the Unicode 2.0 and later specification. This additional processing will result in slower filter performance according to the amount of bidirectional data in the file.

Handle Types

VTHDOC, NULL

Scope

Global

Data Type

VTDWORD

Data

Default

SCCUT_FILTER_STANDARD_BIDI

SCCOPT_TIMEZONE

This option allows the user to define an offset to GMT that will be applied during date formatting, allowing date values to be displayed in a selectable time zone. This option affects the formatting of numbers that have been defined as date values. This option will not affect dates that are stored as text.

Note:

Daylight savings is not supported. The sent time in msg files when viewed in Outlook can be an hour different from the time sent when an image of the msg file is created.

Handle Types

NULL, VTHDOC

Scope

Global

Data Type

VTLONG

Data

Integer parameter from -96 to 96, representing 15-minute offsets from GMT. To query the operating system for the time zone set on the machine, specify SCC_TIMEZONE_USENATIVE.

Default

SCCOPT_FORMATFLAGS

This option allows the developer to set flags that enable options that span multiple export products.

Handle Types

VTHDOC

Scope

Local

Data Type

VTDWORD

Data

Default

0: All flags turned off

SCCOPT_IGNORE_PASSWORD

This option can disable the password verification of files where the contents can be processed without validation of the password. If this option is not set, the filter should prompt for a password if it handles password-protected files.

As of Release 8.4.0, only the PST and MDB Filters support this option.

Scope

Global

Data Type

VTBOOL

Data

Default

FALSE

SCCOPT_REORDERMETHOD

This option controls how the technology reorders bidirectional text.

Data Type

VTDWORD

Data

One of the following values:

SCCOPT_HTML_COND_COMMENT_MODE

Some HTML includes a special type of comment that will be read by particular versions of browsers or other products. This option allows you to control which of those comments are included in the output.

Handle Type

VTHDOC

Scope

Local

Data Type

VTDWORD

Data

One or more of the following values OR-ed together:

Default

HTML_COND_COMMENT_NONE

SCCOPT_ARCFULLPATH

In the Viewer and rendering products, this option tells the archive display engine to show the full path to a node in the szNode field in response to a SCCVW_GETTREENODE message. It also causes the name fields in DAGetTreeRecord and DAGetObjectInfo to contain the full path instead of just the archive node name.

Data Type

VTBOOL

Data

Default

FALSE

SCCOPT_PDF_FILTER_MAX_EMBEDDED_OBJECTS

PDF files sometimes have a very large number of embedded objects. This option allows the user to limit the number of embedded objects that are produced in a PDF file. Setting this option to 0 produces an unlimited number of embedded objects.

Handle Types

VTHDOC

Scope

Local

Data Type

VTDWORD

Data

The maximum number of embedded objects to produce in PDF output.

Default

0

SCCOPT_PDF_FILTER_MAX_VECTOR_PATHS

PDF files sometimes have a very large number of vector paths. This option allows the user to limit the number of vector paths that are produced in a PDF file. Setting this option to 0 produces an unlimited amount of vector paths.

Handle Types

VTHDOC

Scope

Local

Data Type

VTDWORD

Data

The maximum number of vector paths to produce in PDF output.

Default

0

SCCOPT_PDF_FILTER_WORD_DELIM_FRACTION

This option controls the spacing threshold in PDF input documents. Most PDF documents do not have an explicit character denoting a word break. The PDF filter calculates the distance between two characters to determine if they are part of the same word or if there should be a word break inserted. The space between characters is compared to the length of the space character in the current font multiplied by this fraction. If the space between characters is larger, then a word break character is inserted into the text stream. Otherwise, the characters are considered to be part of the same word and no word break is inserted.

Handle Types

NULL, VTHDOC

Scope

Local

Data Type

VTFLOAT

Data

A fraction representing the percentage of the space character used to trigger a word break. Valid values are 0<value<=2.

Default

0.85

SCCOPT_TIMEZONE_USEDST

Note:

SCCOPT_TIMEZONE_USEDST is supported in releases 8.5.5 onward.

This option allows you to enable Daylight Saving Time (DST) that will be applied during date formatting, allowing date values to be displayed in a selectable time zone or system time zone. DST affects the formatting of numbers that have been defined as date values. The date in textual format is converted to number format.

TRUE/1: Enables Daylight Saving Time (DST) format.

FALSE/0: Disables Daylight Saving Time (DST) format.

Handle Type

NULL, VTHDOC

Scope

Global

Data Type

VTBOOL

Default Value

FALSE

Note: The DST Set option is disabled for platforms other than Windows. An error message with invalid set option will be displayed if an attempt is made to set this option on non-Windows platforms.

SCCOPT_TIMEZONETEXT

Note:

SCCOPT_TIMEZONETEXT is supported in releases 8.5.5 onward.

This option allows you to enable the display of user-provided time zone text appended with date/time in the email header and spreadsheets.

C++ API

This option is available in the DASetOption API. It can be set as shown below:

VTWORD szTimeZoneText[SCCUT_FILENAMEMAX - 1] =
{'U', 'T', 'C', 0}; 
DASetOption(hDoc, 
SCCOPT_TIMEZONETEXT,VTLPVOID)szTimeZoneText,SCCUT_FILENAMEMAX)

JAVA API before ExportTest:

private static String m_TimeZoneText = "UTC";
          exporter.setTimeZoneText(m_TimeZoneText); 
          exporter.export();

Handle Type

VTHDOC

Scope

local

Data Type

VTLONG

Default Value

0 : GMT Time

SCCOPT_TRACK_ANNOTATIONS

Note:

SCCOPT_TRACK_ANNOTATIONS is supported in releases 8.5.5 onward.

This option enables you to create a JSON output file with an appended extension. For example, exporting native file abcd.xxx to PDF would result in the files abcd.pdf and abcd.xxx.anno.json.

#define SCCOPT_TRACK_REDACTIONS 0x0001 // only to track redaction

#define SCCOPT_TRACK_HIGHLIGHTS 0x0002 //only to track annotation

#define SCCOPT_TRACK_ALL 0x0003

Handle Type

VTHDOC, VTHEXPORT

Scope

local

Data Type

VTWORD

Default Value

0x0001

SCCOPT_READ_RECIPIENT_DELIVERY_INFO

Note:

SCCOPT_READ_RECIPIENT_DELIVERY_INFO is supported in releases 8.5.5 onward.

This option allows you to enable additional MAPI property tags from winmail.dat of the EML file format through which the Recipient or Delivery information is extracted.

Handle Type

NULL, VTHDOC

Scope

Global

Data Type

VTWORD

Default Value

0

SCCOPT_FLAG_BACKGROUND_COLOR

This option is used to control the background color, highlight, and the text color of the MSG file format.

TRUE/1: Changes the background color to highlight the text. The text color is black to ensure the readability of the content.

FALSE/0: Sets the default color of the input file.

Handle Type

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default Value

False

Compression

This section describes compression options.

SCCOPT_FILTERJPG

This option can disable access to any files using JPEG compression, such as JPG graphic files or TIFF files using JPEG compression, or files with embedded JPEG graphics. Attempts to read or write such files when this option is enabled will fail and return the error SCCERR_UNSUPPORTEDCOMPRESSION if the entire file is JPEG compressed, and grey boxes for embedded JPEG-compressed graphics.

The following is a list of file types affected when this option is disabled:

Note that the setting for this option overrides the requested output graphic format when there is a conflict.

Handle Types

VTHDOC, HEXPORT

Scope

Global

Data Type

VTDWORD

Data

Default

SCCVW_FILTER_JPG_ENABLED

SCCOPT_FILTERLZW

This option can disable access to any files using Lempel-Ziv-Welch (LZW) compression, such as .GIF files, .ZIP files or self-extracting archive (.EXE) files containing “shrunk” files. Attempts to read or write such files when this option is enabled will fail and return the error SCCERR_UNSUPPORTEDCOMPRESSION if the entire file is LZW compressed, and grey boxes for embedded LZW-compressed graphics.

The following is a list of file types affected when this option is disabled:

Image Export will not be affected by this option when processing formats that compress subfile contents but not subfile names, such as TAR and ZIP.

Although this option can disable access to files in ZIP or EXE archives stored using LZW compression, any files in such archives that were stored using any other form of compression will still be accessible.

The setting for this option overrides the requested output graphic format when there is a conflict.

Handle Types

VTHDOC, HEXPORT

Scope

Global

Data Type

VTDWORD

Data

Default

SCCVW_FILTER_LZW_ENABLED

Graphics

This section discusses graphics options.

SCCOPT_GIF_INTERLACED

This option allows the developer to specify interlaced or non-interlaced GIF output. Interlaced GIFs are useful when graphics are to be downloaded over slow Internet connections. They allow the browser to begin to render a low-resolution view of the graphic quickly and then increase the quality of the image as it is received. There is no real penalty for using interlaced graphics.

This option is only valid if the dwOutputID parameter of the EXOpenExport function is set to FI_GIF.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Data

One of the following values:

Default

TRUE

SCCOPT_GRAPHIC_CROPPING

When set to SCCGRAPHIC_CROPTOCONTENT, this option forces Image Export to crop whitespace from the edge of each output image. This includes margins and any unused space at the end of a page. This results in smaller output files without any loss of original input document content.

If there is no content, then no cropping is performed.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

Default

SCCGRAPHIC_NOCROPPING

SCCOPT_GRAPHIC_HEIGHT

This option defines the absolute height in pixels to which exported graphics will be resized. If this option is set and the SCCOPT_GRAPHIC_WIDTH option is not, the width of the image will be calculated based on the aspect ratio of the source image. The developer should be aware that very large values for this option or SCCOPT_GRAPHIC_WIDTH could produce images whose size exceeds available system memory, resulting in conversion failure.

If you are exporting a non-graphic file (word processing, spreadsheet or archive) and the settings for SCCOPT_GRAPHIC_HEIGHT and SCCOPT_GRAPHIC_WIDTH do not match the aspect ratio of the original document, the exported image will have whitespace added so that the original file’s aspect ratio is maintained.

The settings for the SCCOPT_GRAPHIC_HEIGHTLIMIT and SCCOPT_GRAPHIC_WIDTH options can override the setting for SCCOPT_GRAPHIC_HEIGHT.

Handle Types

VTDWORD

Scope

Local

Data Type

VTDWORD

Data

The desired absolute height of the output image, in pixels.

Default

SCCOPT_GRAPHIC_HEIGHTLIMIT

Note that this option differs from the behavior of setting the height of graphics in that it sets an upper limit on the image height. Images larger than this limit will be reduced to the limit value. However, images smaller than this height will not be enlarged when using this option. Setting the height using SCCOPT_GRAPHIC_HEIGHT causes all output images to be reduced or enlarged to be of the specified height.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

The maximum height of the output graphic in pixels. A value of zero is equivalent to SCCGRAPHIC_NOLIMIT, which causes this option to be ignored.

Default

SCCOPT_GRAPHIC_OUTPUTDPI

This option allows the user to specify the output graphics device’s resolution in DPI and only applies to images whose size is specified in physical units (in/cm). For example, consider a 1” square, 100 DPI graphic that is to be rendered on a 50 DPI device (SCCOPT_GRAPHIC_OUTPUTDPI is set to 50). In this case, the size of the resulting TIFF, BMP, JPEG, GIF, or PNG will be 50 x 50 pixels.

In addition, the special #define of SCCGRAPHIC_MAINTAIN_IMAGE_DPI, which is defined as 0, can be used to suppress any dimensional changes to an image. In other words, a 1” square, 100 DPI graphic will be converted to an image that is 100 x 100 pixels in size. This value indicates that the DPI of the output device is not important. It extracts the maximum resolution from the input image with the smallest exported image size.

Setting this option to SCCGRAPHIC_MAINTAIN_IMAGE_DPI may result in the creation of extremely large images. Be aware that there may be limitations in the system running this technology that could result in undesirably large bandwidth consumption or an error message. Additionally, an out of memory error message will be generated if system memory is insufficient to handle a particularly large image.

Also note that the SCCGRAPHIC_MAINTAIN_IMAGE_DPI setting will force the technology to use the DPI settings already present in raster images, but will use the current screen resolution as the DPI setting for any other type of input file.

For some output graphic types, there may be a discrepancy between the value set by this option and the DPI value reported by some graphics applications. The discrepancy occurs when the output format uses metric units (DPM, or dots per meter) instead of English units (DPI, or dots per inch). Depending on how the graphics application performs rounding on meters to inches conversions, the DPI value reported may be 1 unit more than expected. An example of a format which may exhibit this problem is PNG.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

The DPI to use when exporting graphic images. The maximum value allowed is SCCGRAPHIC_MAX_SANE_BITMAP_DPI, which is currently defined to be 2400 DPI.

Default

SCCOPT_GRAPHIC_SIZELIMIT

This option is used to set the maximum size of the exported graphic in pixels. It may be used to prevent inordinately large graphics from being converted to equally cumbersome output files, thus preventing bandwidth waste.

SCCOPT_GRAPHIC_SIZELIMIT takes precedence over all other options and settings that affect the size of a converted graphic.

When creating a multi-page TIFF file, this limit is applied on a per page basis. It is not a pixel limit on the entire output file.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

The total number of pixels in the output graphic. A value of zero (“0”), which is equivalent to SCCGRAPHIC_NOLIMIT, causes this option to be ignored.

Default

SCCOPT_GRAPHIC_SIZEMETHOD

This option determines the method used to size graphics. The developer can choose among three methods, each of which involves some degree of trade off between the quality of the resulting image and speed of conversion.

Using the quick sizing option results in the fastest conversion of color graphics, though the quality of the converted graphic will be somewhat degraded. The smooth sizing option results in a more accurate representation of the original graphic, as it uses anti-aliasing. Antialiased images may appear smoother and can be easier to read, but rendering when this option is set will require additional processing time. The grayscale only option also uses antialiasing, but only for grayscale graphics, and the quick sizing option for any color graphics.

The smooth sizing option does not work on images which have a width or height of more than 4096 pixels.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

One of the following values:

Default

SCCGRAPHIC_SMOOTHSIZING

SCCOPT_GRAPHIC_TRANSPARENCYCOLOR

This option allows the user to set the color used as the “transparency color” in the output graphic file. Naturally, this option is only used when the selected output graphic file format supports transparency (GIF and PNG only). If the option is not set, the default behavior is to use the same color value that the input file used as the transparency color.

Use the SCCVWRGB(r, g, b) macro to create the color value to pass to this option. The red, green and blue values are percentages of the color from 0-255 (with 255 being 100%). Note that this macro should be used to set a variable of type SCCVWCOLORREF and that variable should then be passed to the set option routine (instead of trying to use the macro as part of the set option call directly).

Since there is no way to “unset” an option once it has been set, the developer may set the option to SCCGRAPHIC_DEFAULTTRANSPARENCYCOLOR if they wish to revert to the default behavior.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

SCCVWCOLORREF

Data

An RGB color value created with the SCCVWRGB(r, g, b) macro.

Default

SCCOPT_GRAPHIC_WIDTH

This option defines the absolute width in pixels to which exported graphics will be resized. If this option is set and the SCCOPT_GRAPHIC_HEIGHT option is not, the height of the image will be calculated based on the aspect ratio of the source image. The developer should be aware that very large values for this option or SCCOPT_GRAPHIC_HEIGHT could produce images whose size exceeds available system memory, resulting in conversion failure.

If you are exporting a non-graphic file (word processing, spreadsheet or archive) and the settings for SCCOPT_GRAPHIC_HEIGHT and SCCOPT_GRAPHIC_WIDTH do not match the aspect ratio of the original document, the exported image will have whitespace added so that the original file’s aspect ratio is maintained.

The settings for the SCCOPT_GRAPHIC_HEIGHTLIMIT and SCCOPT_GRAPHIC_WIDTHLIMIT options can override the setting for SCCOPT_GRAPHIC_WIDTH.

Handle Types

VTDWORD

Scope

Local

Data Type

VTDWORD

Data

The desired absolute width of the output image, in pixels.

Default

SCCOPT_GRAPHIC_WIDTHLIMIT

This option allows a hard limit to be set for how wide in pixels an exported graphic may be. Any images wider than this limit will be resized to match the limit. It should be noted that regardless whether the SCCOPT_GRAPHIC_HEIGHTLIMIT option is set or not, any resized images will preserve their original aspect ratio.

Note that this option differs from the behavior of setting the width of graphics by using SCCOPT_GRAPHIC_WIDTH in that it sets an upper limit on the image width. Images larger than this limit will be reduced to the limit value. However, images smaller than this width will not be enlarged when using this option. Setting the width using SCCOPT_GRAPHIC_WIDTH causes all output images to be reduced or enlarged to be of the specified width.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

The maximum width of the output graphic in pixels. A value of zero is equivalent to SCCGRAPHIC_NOLIMIT, which causes this option to be ignored.

Default

SCCOPT_GRAPHIC_RENDERASPAGE

SCCOPT_GRAPHIC_RENDERASPAGE affects the way raster (bitmapped) images such as TIFF, JPG, and PNG are handled. The default behavior for Image Export is to export such images as copies of the input document, scaled according to the width and height options set by the caller. If SCCOPT_GRAPHIC_RENDERASPAGE is enabled, the output produced by Image Export will look like a printed page, with the image placed on a white rectangle representing a “virtual page.” As usual, the dimensions of the entire image, including the virtual page, will be controlled by the normal Image Export output width and height settings. The margins into which the image will be placed will be controlled by existing Outside In print margin options. The image itself will be attempted to be scaled to its true (physical) size, or scaled down to fit within the margins if necessary.

Data Type

VTBOOL

Data

Default

FALSE

SCCOPT_IMAGEX_TIFFOPTIONS

This option allows the developer to specify sub-options unique to the TIFF output file type, in order to control color depth, byte structure and rendering method.

This option is only required if the dwOutputId in the EXOpenExport call is set to FI_TIFF.

When any of the CCITT compression models are used, the color space must be black and white (SCCGRAPHIC_TIFF1BITBW).

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

The EXTIFFOPTIONS structure.

EXTIFFOPTIONS Structure

This structure is used by the SCCOPT_IMAGEX_TIFFOPTIONS option to set various options related to TIFF conversion.

EXTIFFOPTIONS is a C data structure defined in sccop.h as follows:

typedef struct
{
   VTDWORD   dwSize;
   VTDWORD   dwColorSpace;
   VTDWORD   dwCompression;
   VTDWORD   dwByteOrder;
   VTDWORD   dwTIFFFlags;
   VTDWORD   dwFillOrder;
} EXTIFFOPTIONS,  * LPEXTIFFOPTIONS;
Parameters

SCCOPT_JPEG_QUALITY

This option allows the developer to specify the lossyness of JPEG compression. The option is only valid if the dwOutputID parameter of the EXOpenExport function is set to FI_JPEGFIF.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

A value from 1 to 100, with 100 being the highest quality but the least compression, and 1 being the lowest quality but the most compression.

Default

100

SCCOPT_QUICKTHUMBNAIL

When the SCCOPT_QUICKTHUMBNAIL option is set to true the technology will render scaled images with a focus on speed and reduced overall memory usage. This focus on speed and memory usage, in some cases, will cause the resulting images to be less readable than when this option is set to false.

Scope

Local

Data Type

VTBOOL

Default

TRUE

SCCOPT_RENDER_ENABLEALPHABLENDING

This option allows the user to enable alpha-channel blending (transparency) in rendering vector images when using an X-Windows output solution. This may improve fidelity on documents that use these transparent images, but will result in performance degradation. This option does not affect Microsoft Windows or Unix implementations where SCCOPT_RENDERING_PREFER_OIT is set to TRUE.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default

False

Spreadsheet and Database File Rendering

This section discusses spreadsheet and database options.

SCCOPT_DBPRINTFITTOPAGE

This option scales a spreadsheet file to a certain percent or to a page width or height. However, in an effort to preserve readability after scaling, Image Export will not shrink a database document to under approximately one-third of its original size.

It should be noted that when this option is set to SCCVW_DBPRINTFITMODE_NOMAP, the pages of the database file are printed down first and then across.

Please note that any margins applied as a result of settings for the SCCOPT_DEFAULTPRINTMARGINS option will be included in any scaling that is applied to the output image as a result of settings for this option.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

One of the following values:

Default

SCCVW_DBPRINTFITMODE_FITTOPAGES

SCCOPT_DBPRINTGRIDLINES

If this option is TRUE, lines are generated between cells in the rendered images.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default

TRUE

SCCOPT_DBPRINTHEADINGS

If this option is TRUE, field headings will be generated along with the data.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default

TRUE

SCCOPT_MAXSSDBPAGEHEIGHT

Normally, the size of images generated from spreadsheet worksheets and database tables is limited to the size of the page defined by the input document’s page size information and how the SCCOPT_USEDOCPAGESETTINGS, SCCOPT_GRAPHIC_WIDTH and SCCOPT_GRAPHIC_HEIGHT options are set. If, after scaling is factored in, the resulting image is too large to fit on a single page, it is split up into multiple pages.

The SCCOPT_MAXSSDBPAGEWIDTH and SCCOPT_MAXSSDBPAGEHEIGHT options are used to change the size of a page to match the scaled size of the page being rendered - within limits. The key reason for those limits is that rendering very large pages can easily overwhelm the memory available on the system. When using this feature, a calculation should be made to be sure that the values passed in work within said memory limits. The values for these two options will override the current page dimensions if necessary.

The memory needed may be calculated based on the following:

memory = [max. worksheet/table height (in inches)]  x  [max. worksheet/table width (in inches)]  x  [dpi setting]2  x  3 bytes/pixel  +  a bit extra for the needs of the rest of the conversion

By default, these options are set to the current page dimensions. Users may choose to set only one of the two options if desired. If, for example, only the SCCOPT_MAXSSDBPAGEWIDTH is set, then the height of the page will be based on the normal page height.

When a worksheet or table is larger than the maximum values specified by these options, then the file is rendered on multiple pages, with the requested (larger) page dimensions.

These new options grow the page size (if needed) to match the size of the worksheet or table. This differs from the SCCOPT_GRAPHIC_WIDTH and SCCOPT_GRAPHIC_HEIGHT options, which set an absolute page size without regard to the size of the worksheet or table.

If text in cells ends up extending past the edge of the cell and beyond the edge of the page, Image Export writes one or more additional pages for the overflow text.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

The maximum page height (including margins) specified in twips (1440 twips are in 1 inch). If the value specified is smaller than the page height, then Image Export will return a SCCERR_INVALIDMAXSSDBPAGE error.

Default

Logic flow to determine page size.

SCCOPT_MAXSSDBPAGEWIDTH

See the documentation for SCCOPT_MAXSSDBPAGEHEIGHT for a full discussion of how this option works and interacts with other options affecting the page size of images generated from spreadsheet and database pages.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Size

VTDWORD

Data

The maximum page width (including margins) specified in twips (1440 twips are in 1 inch). If the value specified is smaller than the page width, then Image Export will return a SCCERR_INVALIDMAXSSDBPAGE error.

Default

SCCOPT_SSPRINTDIRECTION

This option controls the pattern in which the pages are rendered, either across first and then down, or down first and then across.

This option is overridden when the SCCOPT_USEDOCPAGESETTINGS option is set to TRUE and print direction is specified in the input document.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

One of the following values:

Default

SCCVW_SSPRINTDIRECTION_DOWN

SCCOPT_SSPRINTFITTOPAGE

This option requests that the spreadsheet file be fit to one page.

Please note that any margins applied as a result of settings for the SCCOPT_DEFAULTPRINTMARGINS option will be included in any scaling that is applied to the output image as a result of settings for this option.

This option is overridden when the SCCOPT_USEDOCPAGESETTINGS option is set to TRUE and fitting the page to the printer’s image limits is specified in the input document.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

One of the following values:

Default

SCCOPT_SSPRINTGRIDLINES

If this option is TRUE, a line is generated between cells in the rendered image.

This option is overridden when the SCCOPT_USEDOCPAGESETTINGS option is set to TRUE and printing grid lines between cells is specified in the input document.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default

TRUE

SCCOPT_SSPRINTHEADINGS

If this option is TRUE, row and column headings will be rendered along with the data.

This option is overridden when the SCCOPT_USEDOCPAGESETTINGS option is set to TRUE and printing column and row headers is specified in the input document.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default

FALSE

SCCOPT_SSPRINTSCALEPERCENT

This option will scale spreadsheet pages by the percentage specified. The option has no effect unless the SCCOPT_SSPRINTFITTOPAGE option is set to SCCVW_SSPRINTFITMODE_SCALE.

This option must take a value between 1 and 100. If any value outside of this range is used, the option will be ignored.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Default

100

SCCOPT_SSPRINTSCALEXHIGH

This option will fit the spreadsheet image to the number of vertical pages specified. The setting for this option will have no effect unless the SCCOPT_SSPRINTFITTOPAGE option is set to SCCVW_SSPRINTFITMODE_FITTOPAGES.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Default

1

SCCOPT_SSPRINTSCALEXWIDE

This option will fit the spreadsheet image to the number of horizontal pages specified. The setting for this option will have no effect unless the SCCOPT_SSPRINTFITTOPAGE option is set to SCCVW_SSPRINTFITMODE_FITTOPAGES.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Default

1

SCCOPT_SSSHOWHIDDENCELLS

This option lets you determine whether or not to show hidden rows or columns when rendering spreadsheets. It is used to expand the widths of cells that are hidden by virtue of having their row height or column width reduced to 0. This is a BOOLEAN option that will leave the data hidden when it is FALSE, and show all hidden rows and columns when it is TRUE, displayed using the default row width or default column height.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Data

Default

FALSE

SCCOPT_EX_SHOWHIDDENSSDATA

The setting for this option determines whether or not hidden sheets in a spreadsheet will be included in the output. When set to FALSE (the default), the hidden elements are not written. When set to TRUE, they are placed in the output in the same manner as regular spreadsheet data.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Data

Default

FALSE

SCCOPT_FILTERNOBLANK

If this option is TRUE, blank spreadsheet pages will not be produced when printing a file or rendering it.

Data Type

VTBOOL

Default

FALSE

SCCOPT_DISABLE_PRINT_AREA

Note: SCCOPT_DISABLE_PRINT_AREA is supported in releases 8.5.5 onward.

This option allows you to export the full content of an Excel document even if the Print Area property is set. If the option is set to TRUE, full contents of the Excel input file are exported. If it is set to FALSE, only the defined area set by the Print Area property is exported.

Handle Type

VTHDOC, VTHEXPORT

Scope

local

Data Type

VTBOOL

Data

A Boolean value to control Print Area for Excel input files

Default Value

FALSE

Page Rendering

This section discusses page rendering options.

SCCOPT_DEFAULTPRINTMARGINS

This option specifies the top, left, bottom and right margins in twips from the edges of the image. For instance, setting all the values to 1440 creates a 1-inch margin on all sides. Page margins will only be applied when formatting word processing, database and spreadsheet files.

Please note all margins are applied before scaling with the SCCOPT_DBPRINTFITTOPAGE, SCCOPT_SSPRINTFITTOPAGE, SCCOPT_GRAPHIC_HEIGHT, SCCOPT_GRAPHIC_WIDTH, or SCCOPT_GRAPHIC_SIZELIMIT options.

This option is overridden when the SCCOPT_USEDOCPAGESETTINGS option is set to TRUE and print margins are specified in the input document.

This option does not affect the output of bitmap, presentation, vector or archive files.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

The SCCVWPRINTMARGINS structure.

SCCVWPRINTMARGINS Structure

This structure is used by the SCCOPT_DEFAULTPRINTMARGINS option to specify margin settings.

SCCVWPRINTMARGINS is a C data structure defined in sccvw.h as follows:

typedef struct SCCVWPRINTMARGINStag
   {
   VTDWORD  dwTop;
   VTDWORD  dwBottom;
   VTDWORD  dwLeft;
   VTDWORD  dwRight;
} SCCVWPRINTMARGINS,  * PSCCVWPRINTMARGINS;
Parameters

SCCOPT_PRINTENDPAGE

This option indicates the page that rendering should end on. It is only valid if the option SCCOPT_WHATTOPRINT has the value SCCVW_PRINT_PAGERANGE.

Note that page range settings are one-based and inclusive. Therefore, specifying a range with SCCOPT_PRINTENDPAGE equal to 5 and SCCOPT_PRINTSTARTPAGE equal to 3 would export any of the three pages that follow, if they exist: 3, 4 and 5.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Default

SCCOPT_PRINTSTARTPAGE

This option indicates the page rendering should start on. It is only valid if the option SCCOPT_WHATTOPRINT has the value SCCVW_PRINT_PAGERANGE.

Note that page range settings are one-based and inclusive. Therefore, specifying a range with SCCOPT_PRINTENDPAGE equal to 5 and SCCOPT_PRINTSTARTPAGE equal to 3 would export any of the three pages that follow, if they exist: 3, 4 and 5.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Default

SCCOPT_USEDOCPAGESETTINGS

This option is used to select the document’s page layout information when rendering.

If TRUE the document’s native (or author selected) page margins, paper size, page scaling and page orientation are used when available from the filter.

The values of the SCCOPT_DEFAULTPRINTMARGINS, SCCOPT_SSPRINTGRIDLINES, SCCOPT_SSPRINTHEADINGS, SCCOPT_SSPRINTDIRECTION, and SCCOPT_SSPRINTFITTOPAGE options are overridden if this option is set to TRUE and the properties associated with those options are specified in the input document. Additionally, print area and page breaks in spreadsheet documents are ignored unless this option is set to TRUE.

If FALSE, the page margins, size, orientation and scaling are set to specific values rather than those in the native document. The page size is forced to 8 1/2” x 11” in portrait orientation, but this may be changed by setting the SCCOPT_GRAPHIC_HEIGHT and/or SCCOPT_GRAPHIC_WIDTH options. The margins are forced 1” all around, but may be changed by setting the defaultMargins option. The scaling for the document will be set to 100%, although this may be changed by setting any of the various scaling options.

It should be noted that this option also affects page orientation for both input spreadsheets and word processing documents.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default

TRUE

SCCOPT_WHATTOPRINT

This option indicates whether the whole file or a selected range of pages should be rendered.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

One of the following values:

Default

SCCVW_PRINT_ALLPAGES

SCCOPT_NUMBERFORMAT

This option is used to control the formatting of numbers. It is useful for setting environment dependent variables related to international support. The default values are retrieved from the operating system for the Windows platform, and are set to logical U.S. defaults on all other platforms.

Data Type

SCCVWNUMBERFORMAT and SCCVWNUMBERFORMAT775 structures

SCCVWNUMBERFORMAT775 and SCCVWNUMBERFORMAT Structures

These structures are used to set the SCCID_NUMBERFORMAT option. The fields of the structures allow the developer to control variables related to international support. Please note that the SCCVWNUMBERFORMAT775 structure always assumes 2-digit year data, whereas the SCCVWNUMBERFORMAT structure allows for both 2- and 4-digital year data.

These are C data structures defined in sccvw.h as follows:

typedef struct SCCVWNUMBERFORMAT775tag
   {
   VTTCHAR   cDecimalSep;
   VTTCHAR   cThousandSep;
   VTTCHAR   cDateSep;
   VTTCHAR   cTimeSep;
   VTTCHAR   szCurrencySymbol[8];
   VTTCHAR   szAM[8];
   VTTCHAR   szPM[8];
   VTDWORD   dwNumBytesAM;
   VTDWORD   dwNumBytesPM;
   VTWORD    wCurrencyPosition;
   VTWORD    wShortDateOrder;
   } SCCVWNUMBERFORMAT775,  * PSCCVWNUMBERFORMAT775;

typedef struct SCCVWNUMBERFORMATtag
   {
   VTTCHAR   cDecimalSep;
   VTTCHAR   cThousandSep;
   VTTCHAR   cDateSep;
   VTTCHAR   cTimeSep;
   VTTCHAR   szCurrencySymbol[8];
   VTTCHAR   szAM[8];
   VTTCHAR   szPM[8];
   VTDWORD    dwNumBytesAM
   VTDWORD   dwNumBytesPM;
   VTWORD    wCurrencyPosition
   VTWORD    wShortDateOrder;
   VTWORD    wShortDateYearDigits;
   VTWORD    wShortDateMonthDigits;
   VTWORD    wShortDateDayDigits;
   VTWORD    wShortDateFlags;
   } SCCVWNUMBERFORMAT,  * PSCCVWNUMBERFORMAT;
Parameters

SCCOPT_WPEMAILHEADEROUTPUT

The former option SCCOPT_WPMIMEHEADEROUTPUT has been deprecated. This option controls rendering of email headers.

Scope

Global

Data Type

VTDWORD

Data

One of these values:

Default

SCCUT_WP_EMAILHEADERSTANDARD

SCCOPT_MAILHEADERVISIBLE

Along with SCCOPT_MAILHEADERHIDDEN, these options exist to allow the developer fine-grained control over what email headers are rendered. These options modify which email headers are displayed, and are based on the most recent setting of SCCOPT_WPEMAILHEADEROUTPUT. To implement a fully customized set of email headers for display, your code should first set the SCCOPT_WPEMAILHEADEROUTPUT option to select a baseline set of headers, then use these options to selectively add or remove headers from that set.

Setting a header to be visible means that it will be rendered when that header is found in a document of the appropriate type. Selected headers that are not present in the input file will not have any corresponding output created for them (no ‘empty’ headers will be created). Setting a header to be hidden means that it will not be rendered for the document types specified.

Scope

Global

Data Type

SCCUTEMAILHEADERINFO structure

SCCUTEMAILHEADERINFO structure

This structure is used by the SCCOPT_WPMAILHEADERVISIBLE/SCCOPT_WPMAILHEADERHIDDEN options to specify the headers to show or hide.

typedef struct SCCUTEMAILHEADERINFOtag
{
    VTDWORD    dwHeaderID;                         
    VTDWORD    dwSubtypeID;                        
    VTWORD     wsMimeHeaderName[SCCUT_MAIL_NAMELENGTH];
    VTWORD     wsMimeHeaderLabel[SCCUT_MAIL_NAMELENGTH];
} SCCUTEMAILHEADERINFO, *PSCCUTEMAILHEADERINFO;

Parameters:

Note:

Support for user-defined MIME headers is intended to allow Outside In to selectively display MIME headers that are not included in the predefined set of email headers known to Outside In. It is likely that most developers using Outside In will not need to specify user-defined MIME headers. Knowledge of the particular MIME headers present in the input email files is necessary in order to take advantage of this capability.

Default

Not used

SCCOPT_MAILHEADERHIDDEN

Along with SCCOPT_MAILHEADERVISIBLE, these options exist to allow the developer fine-grained control over what email headers are rendered. These options modify which email headers are displayed, and are based on the most recent setting of SCCOPT_WPEMAILHEADEROUTPUT. To implement a fully customized set of email headers for display, your code should first set the SCCOPT_WPEMAILHEADEROUTPUT option to select a baseline set of headers, then use these options to selectively add or remove headers from that set.

Setting a header to be visible means that it will be rendered when that header is found in a document of the appropriate type. Selected headers that are not present in the input file will not have any corresponding output created for them (no ‘empty’ headers will be created). Setting a header to be hidden means that it will not be rendered for the document types specified.

Scope

Global

Data Type

See SCCUTEMAILHEADERINFO structure under SCCOPT_MAILHEADERVISIBLE

Default

Not used

SCCOPT_MARGIN_TEXT_FONT_NAME

This option lets you set the font to use for margin text.

Data Type

VTCWSTR (string for any valid CSS font name)

Default

Arial

SCCOPT_MARGIN_TEXT_FONT_SIZE

This option lets you set the font size to use for margin text.

Data Type

VTDWORD (increments of one-half point)

Default

9 pt.

SCCOPT_MARGIN_TEXT_LINE

This option lets you specify a text string to use for margin text.

Data Type

SCCEX_MARGINTEXTLINE

Default

None

SCCOPT_REDACTION_COLOR

This option provides the ability to specify the color used for a redaction rectangle (black or white) as well as the color used (black or white) for the redaction code. When the colors match, the redaction code will effectively be invisible. Settings should default to Black redactions with White codes if not explicitly set. The values may be set on each redaction individually, both in the UI and in the rendered output.

Data Type

SCCVWCOLORREF

Data

Any valid CSS color

SCCOPT_REDACTION_LABEL_FONT_NAME

This option sets the font name to be used for the redaction label.

Data Type

VTCWSTR (string for any valid CSS font name)

Default

Default display font

SCCOPT_REDACTION_LABEL_FONT_SIZE

This option lets you set the size of font to use for redaction labels. The font size may be reduced to allow text to fit within a redaction rectangle.

Data Type

DWORD (size in half points)

Default

9 pts.

SCCOPT_REDACTIONS_ENABLED

This option tells the export to format the output to be redaction-capable. In practical terms what this means is that all embeddings will be rasterized (routed through sccimg) so that a rectangle in an embedding is consistent across all output formats.

Data Type

Boolean

Default

False

SCCOPT_SHOW_REDACTION_LABELS

This option allows you to display redaction labels in your output.

Data Type

VTBOOL

Default

False (no labels)

SCCOPT_FLAG_PAGEREDACTIONS_ENABLE

Note:

SCCOPT_FLAG_PAGEREDACTIONS_ENABLE is supported in releases 8.5.5 onward.

This option allows you to enable PAGE REDACTION during Image and PDF export.

TRUE/1: Enables PAGE REDACTION each and every page.

FALSE/0: Disables the Page Redaction.

Handle Type

VTHDOC

Scope

local

Data Type

VTBOOL

Default Value

FALSE

SCCOPT_FLAG_READ_MHT_FILE_AS_MIME

Note:

SCCOPT_FLAG_READ_MHT_FILE_AS_MIME is supported in releases 8.5.5 onward.

This option lets you enable “extracting objects from the MHT file”.

TRUE/1: Enables bextObjMHT to extracting objects from the MHT file.

FALSE/0: No extraction of objects from MHT file.

Handle Type

VTHDOC, VTHEXPORT

Scope

local

Data Type

VTBOOL

Default Value

FALSE

Font Rendering

This section discusses font rendering options.

SCCOPT_DEFAULTPRINTFONT

This option sets the font to use when the chunker-specified font is not available on the system. It is also the font used when the font in source file is not available on the system performing the conversion.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

SCCVWFONTSPEC Structure

SCCVWFONTSPEC Structure

This structure is used by various options to specify a font.

SCCVWFONTSPEC is a C data structure defined in sccvw.h as follows:

typedef struct
   {
   VTTCHAR  szFace[40];
   VTWORD   wHeight;
   VTWORD   wAttr;
   VTWORD   wType;
   } SCCVWFONTSPEC,  * LPSCCVWFONTSPEC;
Parameters

SCCOPT_PRINTFONTALIAS

This option sets or gets printer font aliases according to the SCCVWFONTALIAS structure.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

The SCCVWFONTALIAS structure.

SCCVWFONTALIAS Structure

This structure is used in the SCCOPT_PRINTFONTALIAS option.

SCCVWFONTALIAS is a C data structure defined in sccvw.h as follows:

typedef struct SCCVWFONTALIAStag
{
    VTDWORD dwSize;
    VTDWORD dwAliasID;
    VTDWORD dwFlags;
    VTWORD szwOriginal[ SCCVW_FONTNAMEMAX ];
    VTWORD szwAlias[ SCCVW_FONTNAMEMAX * SCCVW_MAXALIASES ]
} SCCVWFONTALIAS, * PSCCVWFONTALIAS;
Parameters
Data

The technology assumes the following default mappings. The first value is the szwOriginal Value, the second is the szwAlias Value.

SCCOPT_RENDER_EMBEDDED_FONTS

This option allows you to disable the use of embedded fonts in PDF input files. If the option is set to TRUE, the embedded fonts in the PDF input will be used to render text; if the option is set to FALSE, the embedded fonts will not be used and the fallback is to use fonts available to Outside In to render text.

Handle Type

VTHDOC, VTHEXPORT

Scope

local

Data Type

VTBOOL

Data

A Boolean value indicating if embedded fonts should be rendered.

Default Value

TRUE

SCCOPT_STROKE_TEXT

This option is used to stroke out (display as graphical primitives) text in an AutoCAD file. Setting this option to FALSE would improve performance, but the visual fidelity may be compromised.

Note that when this option is TRUE, some special characters appear as asterisks or question marks due to limited support of characters for stroking out text.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTBOOL

Default

TRUE

Watermarks

This section discusses watermark options.

By default, the watermark image is centered in the middle of the target image.

SCCOPT_GRAPHIC_WATERMARK_OPACITY

This option must be set and defined to turn on watermarking support. A value of 0 is default and turns watermarking off. Values (1 to 255) specify a level of transparency. 255 is fully opaque. 1 is very transparent.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

A value between 1 and 255. The value of 0 turns watermarking off.

Default

0

SCCOPT_GRAPHIC_WATERMARK_PATH

This option needs to be set to specify a watermark file and path.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTLPVOID

Data

The value set using SCCOPT_GRAPHIC_WATERMARK_PATH will be treated as a 256-byte buffer. Its handling is determined by the value set by SCCOPT_GRAPHIC_WATERMARK_IOTYPE. Valid values are:

Default

There is no default. If you intend to use watermarks, you must set this option.

SCCOPT_GRAPHIC_WATERMARK_SCALETYPE

Indicates whether to scale the watermark image or not. A value of SCCGRAPHIC_WATERMARK_SCALETYPE_NONE means that we blend the watermark onto the original graphic with the original watermark height and width. This is the default value. A value of SCCGRAPHIC_WATERMARK_SCALETYPE_PERCENT means that we will scale the watermark to be a certain percentage of the output page size.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

Default

SCCGRAPHIC_WATERMARK_SCALETYPE_NONE

SCCOPT_GRAPHIC_WATERMARK_SCALEPERCENT

Active when SCCOPT_GRAPHIC_WATERMARK_SCALETYPE is set to SCCGRAPHIC_WATERMARK_SCALETYPE_PERCENT. Values (1 to 100) scale the watermark to be a specified percent of its original size. A value of 100 (default) overlays the target image with the watermark image at its original size; e.g., if the original graphic watermark is 4x4 and the target image is 6x8, the graphic watermark will be scaled to 4x4 to overlay the target image.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

Values of 1 to 100 scale the watermark image to a percentage of the watermark image’s size.

Default

100

SCCOPT_GRAPHIC_WATERMARK_HORIZONTAL_OFFSETFROM 

Indicates offset within target image to adjust watermark position.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

The offset values are in terms of % of document size, with valid values from -100 to 100 (default is 0), and is specified by SCCOPT_GRAPHIC_WATERMARK_HORIZONTAL_OFFSET.

Default

SCCOPT_GRAPHIC_WATERMARK_HORIZONTAL_OFFSETFROM_CENTER

SCCOPT_GRAPHIC_WATERMARK_VERT_OFFSETFROM

Indicates offset within target image to adjust watermark position.

Handle Types

VTHDOC, VTHEXPORT

Scope

Local

Data Type

VTDWORD

Data

The offset values are in terms of % of document size, with valid values from -100 to 100 (default is 0), and is specified by SCCOPT_GRAPHIC_WATERMARK_VERTICAL_OFFSET.

Default

SCCOPT_GRAPHIC_WATERMARK_HORIZONTAL_OFFSETFROM_CENTER

Callbacks

This section discusses callback options.

SCCOPT_EX_CALLBACKS

This is an advanced option that casual users of Image Export may ignore.

This option is used to disable callbacks being made from Image Export. Callbacks that are disabled will behave as if they were made and the developer had returned SCCERR_NOTHANDLED.

The option takes a VTDWORD field of flags. When the flag is set, the callback is enabled. By default, all callbacks are enabled. You can activate multiple callbacks by bitwise OR-ing them together. You can also disable multiple callbacks by bitwise &-ing the SCCEX_CALLBACKFLAG_ALLENABLED value with the one’s complement of the corresponding callback flags. The following #defines are to be used for enabling the various callbacks:

Flag Associated Callbacks

SCCEX\_CALLBACKFLAG\_CREATENEWFILE

EX\_CALLBACK\_ID\_CREATENEWFILE

SCCEX\_CALLBACKFLAG\_NEWFILEINFO

EX\_CALLBACK\_ID\_NEWFILEINFO

In addition, the following two special values are available:

Handle Types

VTHDOC

Scope

Local

Data Type

VTDWORD

Data

One or more of the valid flags, bitwise OR-ed together

Default

SCCOPT_EX_UNICODECALLBACKSTR

This option determines the format of strings used in the callback functions. For those structures that contain a field of type BYTE or LPBYTE, a comparable structure has been added which has a similar field of type WORD or LPWORD. These structures will have the same name as the original structure, with the addition of a “W” at the end.

When this option is set to TRUE, any time a callback uses a structure with a string, it will use the new structure. Also, any strings that the callback function returns will be expected to follow the same guidelines. If the option is set to FALSE, all callbacks will use single-byte character strings.

For example, if this option is set to TRUE, and the EX_CALLBACK_ID_CREATENEWFILE callback is called, the pExportData parameter to the callback will point to an EXURLFILEIOCALLBACKDATAW structure. If the option is set to FALSE, the pCommandOrInfoData parameter will point to an EXURLFILEIOCALLBACKDATA structure.

This option should be set before EXOpenExport is called.

Handle Types

VTHDOC

Scope

Local

Data Type

VTBOOL

Data

One of the following values:

Default

FALSE

File System

This section discusses file system options.

SCCOPT_IO_BUFFERSIZE

This set of three options allows the user to adjust buffer sizes to tailor memory usage to the machine’s ability. The numbers specified in these options are in kilobytes. These are advanced options that casual users of Image Export may ignore.

Handle Type

NULL, VTHDOC

Scope

Global

Data Type

SCCBUFFEROPTIONSstructure

Data

A buffer options structure

SCCBUFFEROPTIONS Structure

typedef struct SCCBUFFEROPTIONStag
{
   VTDWORD dwReadBufferSize;    /* size of the I/O Read buffer 
                                in KB */
   VTDWORD dwMMapBufferSize;    /* maximum size for the I/O   
                                Memory Map buffer in KB */
   VTDWORD dwTempBufferSize;    /* maximum size for the memory-
                                mapped temp files in KB */
   VTDWORD dwFlags;             /* use flags */
} SCCBUFFEROPTIONS, *PSCCBUFFEROPTIONS;
Parameters
Default

The default settings for these options are:

Minimum and maximum sizes for each are:

SCCOPT_TEMPDIR

From time to time, the technology needs to create one or more temporary files. This option sets the directory to be used for those files.

It is recommended that this option be set as part of a system to clean up temporary files left behind in the event of abnormal program termination. By using this option with code to delete files older than a predefined time limit, the OEM can help to ensure that the number of temporary files does not grow without limit.

Note:

This option will be ignored if SCCOPT_REDIRECTTEMPFILE is set.

Handle Types

NULL, VTHDOC

Scope

Global

Data Type

SCCUTTEMPDIRSPEC structure

SCCUTTEMPDIRSPEC Structure

This structure is used in the SCCOPT_TEMPDIR option.

SCCUTTEMPDIRSPEC is a C data structure defined in sccvw.h as follows:

typedef struct SCCUTTEMPDIRSPEC
{
   VTDWORD   dwSize;
   VTDWORD   dwSpecType;
   VTBYTE    szTempDirName[SCCUT_FILENAMEMAX];
} SCCUTTEMPDIRSPEC,  * LPSCCUTTEMPDIRSPEC;

There is currently a limitation. dwSpecType describes the contents of szTempDirName. Together, dwSpecType and szTempDirName describe the location of the source file. The only dwSpecType values supported at this time are:

Specifically not supported at this time is IOTYPE_REDIRECT.

Users should also note that temporary files created by the technology are not subject to callbacks (such as EX_CALLBACK_ID_CREATENEWFILE) normally made when files are created.

Parameters
Default

The system default directory for temporary files. On UNIX systems, this is the value of environment variable $TMP. On Windows systems, it is the value of environment variable %TMP%.

SCCOPT_DOCUMENTMEMORYMODE

This option determines the maximum amount of memory that the chunker may use to store the document’s data, from 4 MB to 1 GB. The more memory the chunker has available to it, the less often it needs to re-read data from the document.

Handle Types

NULL, VTHDOC

Scope

Global

Data Type

VTDWORD

Parameters

Default

SCCDOCUMENTMEMORYMODE_LARGE 4 - 256MB

SCCOPT_REDIRECTTEMPFILE

This option is set when the developer wants to use redirected IO to completely take over responsibility for the low level IO calls of the temp file.

Handle Types

NULL, VTHDOC

Scope

Global (not persistent)

Data Type

VTLPVOID: pCallbackFunc

Function pointer of the redirect IO callback.

Redirect call back function:

typedef
{
     VTDWORD (* REDIRECTTEMPFILECALLBACKPROC)
     (HIOFILE *phFile, 
     VTVOID *pSpec, 
     VTDWORD dwFileFlags);

There is another option to handle the temp directory, SCCOPT_TEMPDIR. Only one of these two can be set by the developer. The SCCOPT_TEMPDIR option will be ignored if SCCOPT_REDIRECTTEMPFILE is set. These files may be safely deleted when the Close function is called.

SCCOPT_STAMP_IMAGE_FILE

Image stamp annotations are bitmap images that are “stamped” onto the rendition of a file generated by Outside In when using EXApplyHilites to apply annotations.

The source of the image may be a PNG, JPG, or GIF image. They may be considered special types of rectangular annotation.

In the Export API, image stamps are applied in the following way:

When setting the SCCOPT_STAMP_IMAGE_FILE option, pStampImage must be a location of a PNG, JPG, or GIF image.

dwSpecType should be set to one of the following IO specification types: IOTYPE_ANSIPATH, IOTYPE_UNICODEPATH, IOTYPE_UNIXPATH and IOTYPE_REDIRECT.

For details about IO specifications, see DAOpenDocument.

If the name specified by szStampName has already been used in a previous call to SCCOPT_STAMP_IMAGE_FILE, its file path will be updated with the new value.

Data Type

pointer to EXANNOSTAMPIMAGE structure

Default

none