Also Known As:
Alias | Lotus Picture, PIC |
Type | Vector |
Colors | 6 |
Compression | NA |
Maximum Image Size | Apparently 64Kx64K |
Multiple Images Per File | No |
Numerical Format | NA |
Originator | Lotus Development |
Platform | MS-DOS |
Supporting Applications | Lotus 1-2-3 and competing programs, word-processing and desktop-publishing applications, others |
See Also | Microsoft SYLK |
Usage
Used by the graphing program associated with Lotus 1-2-3
Comments
A widely used format for interchange of data, primarily business
graphics. Somewhat dated. Big-endian in format, although originating
under MS-DOS on Intel-based machines.
Lotus PIC appeared in support of early versions of Lotus 1-2-3; files in PIC format were generated by the main application for use by an auxiliary program called Lotus Print Graph. Although recent versions of the application still support PIC, they have started using the Computer Graphics Metafile (CGM) as well, and we can safely assume that the days of PIC are numbered. Nevertheless, a great deal of data still exists in PIC format.
Contents:
File Organization and Details
For Further Information
The file is very simple and consists of a header, vector data, and an end-of-file indicator. The header appears to be arbitrary and contains the following hex string:
01 00 00 00 01 00 08 00 44 00 00 00 0C 7F 09 06
Following the header is a list of encoded drawing commands, stored either as byte pairs or as 16-bit values. Either form may be followed by arguments. Commands are recognized by reading data either one byte at a time, assembling 16 bits of data in memory, or reading data 16 bits at a time and examining the first byte of each item. Coordinate values are always stored as 16-bit signed integers. Although positional data can theoretically be in the range -32,767 to 32,767, Lotus Print Graph always scales data to fit into the rectangle 0, 0, 3200, 2311.
Drawing commands supported by PIC are listed below:
BN |
color |
N is an 8-bit color value |
A0 XX YY |
move |
Move drawing cursor to XX,YY |
A2 XX YY |
draw |
Draw to XX,YY, update cursor |
30 N-1 X1 Y1...XN YN |
fill |
Filled polygon of N vertices |
D0 N-1 X1 Y1...XN YN |
fill outlined |
Filled polygon with outline |
AC XX YY |
text size |
XX and YY are char cell size |
A7 N |
font |
Set font: type 0 or 1 only |
A8 N STRING |
text |
Draw NULL-terminated text string STRING, N contains direction and alignment information: |
|
|
00horizontal |
|
|
10vertical up |
|
|
20upside down |
|
|
30vertical down |
|
|
00center aligned |
|
|
01left center aligned |
|
|
02top center aligned |
|
|
03right center aligned |
|
|
04bottom center aligned |
|
|
05top left aligned |
|
|
06top right aligned |
|
|
07bottom left aligned |
|
|
08bottom right aligned |
60-6F |
end |
End of image |
The following example draws a line from 0,0 to 100,100 and draws the string "text" with characters fitting into an 8 by 10 cell:
A0 00 00 00 00 A2 00 64 00 64 AC 00 08 00 0A A8 00 74 65 78 74 60
Lotus no longer supports PIC, so it is difficult to get information about it. You might try contacting Lotus at:
Lotus Development Corporation
55 Cambridge Parkway
Cambridge, MA 02142
Voice: 617-577-8500
Voice: 800-831-9679
FAX: 617-225-1197
The following book, available in bookstores or from Lotus, provides additional information about Lotus PIC:
Lotus Development Corporation, Lotus File Formats for 1-2-3, Symphony, & Jazz, Lotus Books, Cambridge, MA, 1986.
Copyright © 1996, 1994 O'Reilly & Associates, Inc. All Rights Reserved.