2.7.4 Dop97

The Dop97 structure contains document and compatibility settings. These settings influence the appearance and behavior of the current document and store the document-level state.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

dop95 (88 bytes)

...

...

adt

doptypography (310 bytes)

...

...

...

dogrid

...

...

A

lvlDop

B

C

D

E

F

G

H

I

J

K

L

unused5

asumyi

...

...

...

cChWS

...

cChWSWithSubdocs

...

grfDocEvents

...

M

N

KeyVirusSession30

...

space (30 bytes)

...

...

...

cpMaxListCacheMainDoc

ilfoLastBulletMain

ilfoLastNumberMain

cDBC

cDBCWithSubdocs

reserved3a

nfcFtnRef

nfcEdnRef

hpsZoomFontPag

dywDispPag

dop95 (88 bytes):  A Dop95 that specifies document and compatibility settings.

adt (2 bytes):  Specifies the document classification as specified in [ECMA-376] Part 4, Section 2.15.1.29 documentType; the values are mapped as follows.

adt value

ECMA attribute value

0x0000

notSpecified

0x0001

letter

0x0002

eMail

doptypography (310 bytes):  A DopTypography that specifies typography settings.

dogrid (10 bytes):  A Dogrid that specifies the draw object grid settings.

A - unused1 (1 bit):  This bit is undefined and MUST be ignored.

lvlDop (4 bits):  This value SHOULD<173> specify which outline levels were showing in outline view at the time of the last save operation. This MUST be a value between 0 and 9, inclusive, or this value MUST be 15. 

Value

Levels showing

0x0

Heading 1

0x1

Headings 1 and 2

0x2

Headings 1, 2 and 3

0x3

Headings 1, 2, 3 and 4

0x4

Headings 1, 2, 3, 4 and 5

0x5

Headings 1, 2, 3, 4, 5 and 6

0x6

Headings 1, 2, 3, 4, 5, 6 and 7

0x7

Headings 1, 2, 3, 4, 5, 6, 7 and 8

0x8

Headings 1, 2, 3, 4, 5 , 6, 7, 8 and 9

0x9

All levels

0xF

All levels

B - fGramAllDone (1 bit):  Specifies whether the grammar of all content in this document was checked.

C - fGramAllClean (1 bit):  Specifies whether all content in this document can be considered grammatically correct.

D - fSubsetFonts (1 bit):  Specifies whether to subset fonts when embedding as specified in [ECMA-376] Part 4, Section 2.8.2.15 saveSubsetFonts, where embedTrueTypeFonts refers to DopBase.fEmbedFonts.

E - unused2 (1 bit):  This value is undefined and MUST be ignored.

F - fHtmlDoc (1 bit):  This value SHOULD<174> be 0.

G - fDiskLvcInvalid (1 bit):  This bit MAY<175> specify whether the saved ListNum field cache contains valid information. The ListNum field cache is specified by FibRgFcLcb97.fcPlcfBteLvc.

H - fSnapBorder (1 bit):  Specifies whether to align paragraph and table borders with the page border, as specified in [ECMA-376] Part 4, Section 2.15.1.2 alignBordersAndEdges.

I - fIncludeHeader (1 bit):  Specifies whether to draw the page border so that it includes the header area.

J - fIncludeFooter (1 bit):  Specifies whether to draw the page border so that it includes the footer area.

K - unused3 (1 bit):  This value is undefined and MUST be ignored.

L - unused4 (1 bit):  This value is undefined and MUST be ignored.

unused5 (2 bytes): This value is undefined and MUST be ignored.

asumyi (12 bytes):  An Asumyi that specifies the AutoSummary settings.

cChWS (4 bytes):  Specifies the last calculated or estimated count of characters in the main document depending on the values of fExactCWords and fIncludeSubdocsInStats. The count of characters includes whitespace.

cChWSWithSubdocs (4 bytes):  Specifies the last calculated or estimated count of characters in the main document, footnotes, endnotes, and text boxes that are anchored in the main document, depending on fExactCWords and fIncludeSubdocsInStats. The count of characters includes whitespace.

grfDocEvents (4 bytes):  A bit field that specifies which document events are fired. The individual bits and their meanings are as follows.

Bit Mask

Event

0x00000001

New

0x00000002

Open

0x00000004

Close

0x00000008

Sync

0x00000010

XMLAfterInsert

0x00000020

XMLBeforeDelete

0x00000100

BBAfterInsert

0x00000200

BBBeforeDelete

0x00000400

BBOnExit

0x00000800

BBOnEnter

0x00001000

StoreUpdate

0x00002000

BBContentUpdate

0x00004000

LegoAfterInsert

All other bits MUST be set to 0.

M - fVirusPrompted (1 bit):  Specifies whether the macro security prompt is shown in this session for this document.

N - fVirusLoadSafe (1 bit): Specifies whether to disable macros for this session.

KeyVirusSession30 (30 bits):  A random value to match against the current session key. If they match, this is the same session.

space (30 bytes):  This value is undefined and MUST be ignored.

cpMaxListCacheMainDoc (4 bytes):  This value MAY<176> specify the maximum CP value for which the ListNum field cache contains valid information. The ListNum field cache is specified by FibRgFcLcb97.fcPlcfBteLvc.

ilfoLastBulletMain (2 bytes):  Specifies the index of the last LFO structure that was used for bullets in the document before the save operation. This value MUST be between 0 and a number that is one less than the number of entries in FibRgFcLcb97.fcPlfLfo, unless there are 0 entries, in which case this value MUST be 0.

ilfoLastNumberMain (2 bytes):  Specifies the index of the last LFO structure that was used for list numbering in the document before the save operation. This value MUST be between 0 and a number that is one less than the number of entries in FibRgFcLcb97.fcPlfLfo, unless there are 0 entries, in which case this value MUST be 0.

cDBC (4 bytes):  Specifies the last calculated or estimated count of double-byte characters in the main document, depending on the values of DopBase.fExactCWords and DopBase.fIncludeSubdocsInStats. The count of characters includes whitespace.

cDBCWithSubdocs (4 bytes):  Specifies the last calculated or estimated count of double-byte characters in the main document, footnotes, endnotes, and text boxes anchored in the main document depending on DopBase.fExactCWords and DopBase.fIncludeSubdocsInStats. The character count includes whitespace.

reserved3a (4 bytes):  This value is undefined and MUST be ignored.

nfcFtnRef (2 bytes):  An MSONFC (as specified in [MS-OSHARED] section 2.2.1.3) that, for those documents that have an nFib which is less than or equal to 0x00D9, specifies the numbering format code to use for footnotes in the document.

nfcEdnRef (2 bytes):  An MSONFC (as specified in [MS-OSHARED] section 2.2.1.3) that, for those documents that have an nFib which is less than or equal to 0x00D9, specifies the numbering format code to use for endnotes in the document.

hpsZoomFontPag (2 bytes): Specifies the size, in half points, of the maximum font size to be enlarged in the view "online layout" at the time the document was last paginated. This value SHOULD<177> be ignored.

dywDispPag (2 bytes):  Height of the screen, in pixels, at the time that the document was last paginated. This value SHOULD<178> be ignored.