1 Introduction

This chapter is an introduction to the Oracle Outside In Viewer module. The Viewer is a part of Oracle's Outside In family of OEM technologies, a powerful document viewing and conversion technology that can access the information in more than 600 file formats.

There may be references to other Oracle Outside In Technology SDKs within this manual. To obtain complete documentation for any other Oracle Outside In product, see:

http://www.oracle.com/technetwork/indexes/documentation/index.html#middleware

and click on Outside In Technology.

This chapter includes the following sections:

1.1 What's New in this Release

  • The updated list of supported formats is linked from the page http://www.outsideinsdk.com/. Look for the data sheet with the latest supported formats.

  • The following new formats are supported:

    • Microsoft Word 2016

    • Microsoft Excel 2016

    • Microsoft PowerPoint 2016

    • MS Outlook 2011 for Mac (OLM and EML)

    • Corel WordPerfect X7

    • Corel Quattro Pro X7

    • Corel Presentations X7

    • Corel Draw X7

    • iWork KeyNote (text only)

    • AutoCAD 2015

  • The following new options are introduced:

  • Support for the following general accuracy and fidelity features is provided:

    • MS Word table styles supported

    • MS Office Chart data label styles extended

    • Font selection algorithm improvements implemented

    • Outlook MSG “best body” algorithm implemented

    • PPTX Master slide Transparency provided

    • Four Color (CMYK) progressive JPEG supported

    • Processing of very large spreadsheets containing large areas of white space are optimized for improved performance supported

    • PowerPoint internal hyperlinks active in the output

    • PDF Type 3 embedded font supported

  • The following Operating System support is provided:

    • Windows 10

    • SLES 12

  • The following .NET API changes are implemented:

    • A new configuration object — OutsideInConfig

    • Get method for options

    • Redirected IO for temp files

  • The following Java API changes are implemented:

    • Get method for options

    • Redirected IO for temp files

1.2 What Does the Oracle Outside In Viewer Do?

For each supported platform, the Oracle Outside In Viewer provides a way to create a rectangular view consisting of a horizontal scroll bar, a vertical scroll bar and a display area. This rectangle is referred to as the view window.

Figure 1-1 View Window

Graphic showing view window with blank display

The view window is blank until the developer sends a SCCVW_VIEWFILE message. This message allows the developer to specify a file to be viewed. On some platforms you can specify a bitmap to display when no file is being viewed.

If SCCVW_VIEWFILE returns successfully, the display area will contain the top part of the file specified and scroll bars will be enabled, allowing the user to move around the rest of the file.

Figure 1-2 View Window in Use

Graphic of an aquarium in the view window

Once a file is being viewed, a whole set of messages can be sent by the developer to the view window allowing the developer to print, copy, search, change the look of, and perform a number of other operations on the view.

Eventually, the developer will either close the file (SCCVW_CLOSE) and destroy the view window or make another call to SCCVW_VIEWFILE.

1.3 Architectural Overview

The basic architecture of the Oracle Outside In Viewer is noted below. There are no supported platform distinctions:


Filter/Module Description

Input Filter

The input filters form the base of the architecture. Each one reads a specific file format or set of related formats and sends the data to the chunker module through a standard set of function calls. There are more than 150 of these filters that read more than 600 distinct file formats. Filters are loaded on demand by the data access module.

Chunker

The Chunker module is responsible for caching a certain amount of data from the filter and returning this data as a display engine.

It is also responsible for running the filter to rebuild any data not already in the cache that is requested.

Display Engine

The Display Engine is responsible for reading data from the chunker and displaying it in the view window. It is also responsible for all user interface, clipboard and printing for a given data type. There are currently six display engines: Document, Spreadsheet/Database, Bitmap, Drawing, Archive and Hex.

Display Engines are loaded on demand by the view window.

View Window

The View Window controls all of the modules for this product.


1.4 Definition of Terms


Term Definition

Developer

Someone integrating this technology into another technology or application. Most likelythis is you, the reader.

Source File

The file the developer wishes to view.


1.5 Directory Structure

Each Oracle Outside In product has an sdk directory, under which there is a subdirectory for each platform on which the product ships (for example, vw/sdk/vw_win-x86-32_sdk). Under each of these directories are the following three subdirectories:

  • redist: Contains only the files that the customer is allowed to redistribute. These include all the compiled modules, filter support files, .xsd and .dtd files, cmmap000.bin, and third-party libraries, like freetype.

  • sdk: Contains the other subdirectories that used to be at the root-level of an sdk (common, lib (windows only), resource, samplefiles, and samplecode (previously samples). In addition, one new subdirectory has been added, demo, that holds all of the compiled sample apps and other files that are needed to demo the products. These are files that the customer should not redistribute (.cfg files, exportmaps, etc.).

In the root platform directory (for example, vw/sdk/vw_win-x86-32_sdk), there are two files:

  • README: Explains the contents of the sdk, and that makedemo must be run in order to use the sample applications.

  • makedemo (either .bat or .sh – platform-based): This script will either copy (on Windows) or Symlink (on Unix) the contents of …/redist into …/sdk/demo, so that sample applications can then be run out of the demo directory.