[Libreoffice-commits] core.git: sw/source
Mike Kaganski
mike.kaganski at collabora.com
Wed Nov 29 21:38:35 UTC 2017
sw/source/filter/ww8/sprmids.hxx | 165 +++
sw/source/filter/ww8/ww8par6.cxx | 1837 +++++++++++++++------------------------
2 files changed, 906 insertions(+), 1096 deletions(-)
New commits:
commit 42dafb5c7bd218f4d368fbd1113fa4a0fcd7f0cb
Author: Mike Kaganski <mike.kaganski at collabora.com>
Date: Wed Nov 29 13:01:05 2017 +0300
ww8: use sprm names instead of numbers
Added sprms for Word 6 binary format; removed obsolete comments.
Change-Id: Iac88f8df9397f81586e39c1cf152c762be8f9aed
Reviewed-on: https://gerrit.libreoffice.org/45474
Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
Tested-by: Mike Kaganski <mike.kaganski at collabora.com>
diff --git a/sw/source/filter/ww8/sprmids.hxx b/sw/source/filter/ww8/sprmids.hxx
index 6a97a405249f..09cddb24a960 100644
--- a/sw/source/filter/ww8/sprmids.hxx
+++ b/sw/source/filter/ww8/sprmids.hxx
@@ -73,6 +73,171 @@ const sal_uInt16 LN_TSetShd80 = 0x7627;
const sal_uInt16 LN_TSetShdOdd80 = 0x7628;
const sal_uInt16 LN_TDiagLine = 0xd62a;
+namespace v6
+{
+// Microsoft Word for Windows 6.0 Binary File Format
+ // Parameter size
+const sal_uInt16 sprmPIstd = 2; // short
+const sal_uInt16 sprmPIstdPermute = 3; // variable
+const sal_uInt16 sprmPIncLv1 = 4; // byte
+const sal_uInt16 sprmPJc = 5; // byte
+const sal_uInt16 sprmPFSideBySide = 6; // byte
+const sal_uInt16 sprmPFKeep = 7; // byte
+const sal_uInt16 sprmPFKeepFollow = 8; // byte
+const sal_uInt16 sprmPPageBreakBefore = 9; // byte
+const sal_uInt16 sprmPBrcl = 10; // byte
+const sal_uInt16 sprmPBrcp = 11; // byte
+const sal_uInt16 sprmPAnld = 12; // variable
+const sal_uInt16 sprmPNLvlAnm = 13; // byte
+const sal_uInt16 sprmPFNoLineNumb = 14; // byte
+const sal_uInt16 sprmPChgTabsPapx = 15; // variable
+const sal_uInt16 sprmPDxaRight = 16; // word
+const sal_uInt16 sprmPDxaLeft = 17; // word
+const sal_uInt16 sprmPNest = 18; // word
+const sal_uInt16 sprmPDxaLeft1 = 19; // word
+const sal_uInt16 sprmPDyaLine = 20; // long
+const sal_uInt16 sprmPDyaBefore = 21; // word
+const sal_uInt16 sprmPDyaAfter = 22; // word
+const sal_uInt16 sprmPChgTabs = 23; // variable
+const sal_uInt16 sprmPFInTable = 24; // byte
+const sal_uInt16 sprmPTtp = 25; // byte
+const sal_uInt16 sprmPDxaAbs = 26; // word
+const sal_uInt16 sprmPDyaAbs = 27; // word
+const sal_uInt16 sprmPDxaWidth = 28; // word
+const sal_uInt16 sprmPPc = 29; // byte
+const sal_uInt16 sprmPBrcTop10 = 30; // word
+const sal_uInt16 sprmPBrcLeft10 = 31; // word
+const sal_uInt16 sprmPBrcBottom10 = 32; // word
+const sal_uInt16 sprmPBrcRight10 = 33; // word
+const sal_uInt16 sprmPBrcBetween10 = 34; // word
+const sal_uInt16 sprmPBrcBar10 = 35; // word
+const sal_uInt16 sprmPFromText10 = 36; // word
+const sal_uInt16 sprmPWr = 37; // byte
+const sal_uInt16 sprmPBrcTop = 38; // word
+const sal_uInt16 sprmPBrcLeft = 39; // word
+const sal_uInt16 sprmPBrcBottom = 40; // word
+const sal_uInt16 sprmPBrcRight = 41; // word
+const sal_uInt16 sprmPBrcBetween = 42; // word
+const sal_uInt16 sprmPBrcBar = 43; // word
+const sal_uInt16 sprmPFNoAutoHyph = 44; // byte
+const sal_uInt16 sprmPWHeightAbs = 45; // word
+const sal_uInt16 sprmPDcs = 46; // short
+const sal_uInt16 sprmPShd = 47; // word
+const sal_uInt16 sprmPDyaFromText = 48; // word
+const sal_uInt16 sprmPDxaFromText = 49; // word
+const sal_uInt16 sprmPFLocked = 50; // byte
+const sal_uInt16 sprmPFWidowControl = 51; // byte
+const sal_uInt16 sprmPRuler = 52;
+const sal_uInt16 sprmCFStrikeRM = 65; // bit
+const sal_uInt16 sprmCFRMark = 66; // bit
+const sal_uInt16 sprmCFFldVanish = 67; // bit
+const sal_uInt16 sprmCPicLocation = 68; // variable
+const sal_uInt16 sprmCIbstRMark = 69; // short
+const sal_uInt16 sprmCDttmRMark = 70; // long
+const sal_uInt16 sprmCFData = 71; // bit
+const sal_uInt16 sprmCRMReason = 72; // short
+const sal_uInt16 sprmCChse = 73; // 3 bytes
+const sal_uInt16 sprmCSymbol = 74; // variable
+const sal_uInt16 sprmCFOle2 = 75; // bit
+const sal_uInt16 sprmCIstd = 80; // short
+const sal_uInt16 sprmCIstdPermute = 81; // variable
+const sal_uInt16 sprmCDefault = 82; // variable
+const sal_uInt16 sprmCPlain = 83; // 0
+const sal_uInt16 sprmCFBold = 85; // byte
+const sal_uInt16 sprmCFItalic = 86; // byte
+const sal_uInt16 sprmCFStrike = 87; // byte
+const sal_uInt16 sprmCFOutline = 88; // byte
+const sal_uInt16 sprmCFShadow = 89; // byte
+const sal_uInt16 sprmCFSmallCaps = 90; // byte
+const sal_uInt16 sprmCFCaps = 91; // byte
+const sal_uInt16 sprmCFVanish = 92; // byte
+const sal_uInt16 sprmCFtc = 93; // word
+const sal_uInt16 sprmCKul = 94; // byte
+const sal_uInt16 sprmCSizePos = 95; // 3 bytes
+const sal_uInt16 sprmCDxaSpace = 96; // word
+const sal_uInt16 sprmCLid = 97; // word
+const sal_uInt16 sprmCIco = 98; // byte
+const sal_uInt16 sprmCHps = 99; // byte
+const sal_uInt16 sprmCHpsInc = 100; // byte
+const sal_uInt16 sprmCHpsPos = 101; // byte
+const sal_uInt16 sprmCHpsPosAdj = 102; // byte
+const sal_uInt16 sprmCMajority = 103; // variable
+const sal_uInt16 sprmCIss = 104; // byte
+const sal_uInt16 sprmCHpsNew50 = 105; // variable
+const sal_uInt16 sprmCHpsInc1 = 106; // variable
+const sal_uInt16 sprmCHpsKern = 107; // short
+const sal_uInt16 sprmCMajority50 = 108; // variable
+const sal_uInt16 sprmCHpsMul = 109; // short
+const sal_uInt16 sprmCCondHyhen = 110; // short
+const sal_uInt16 sprmCFSpec = 117; // bit
+const sal_uInt16 sprmCFObj = 118; // bit
+const sal_uInt16 sprmPicBrcl = 119; // byte
+const sal_uInt16 sprmPicScale = 120; // length
+const sal_uInt16 sprmPicBrcTop = 121; // word
+const sal_uInt16 sprmPicBrcLeft = 122; // word
+const sal_uInt16 sprmPicBrcBottom = 123; // word
+const sal_uInt16 sprmPicBrcRight = 124; // word
+const sal_uInt16 sprmSScnsPgn = 131; // byte
+const sal_uInt16 sprmSiHeadingPgn = 132; // byte
+const sal_uInt16 sprmSOlstAnm = 133; // variable
+const sal_uInt16 sprmSDxaColWidth = 136; // 3 bytes
+const sal_uInt16 sprmSDxaColSpacing = 137; // 3 bytes
+const sal_uInt16 sprmSFEvenlySpaced = 138; // byte
+const sal_uInt16 sprmSFProtected = 139; // byte
+const sal_uInt16 sprmSDmBinFirst = 140; // word
+const sal_uInt16 sprmSDmBinOther = 141; // word
+const sal_uInt16 sprmSBkc = 142; // byte
+const sal_uInt16 sprmSFTitlePage = 143; // byte
+const sal_uInt16 sprmSCcolumns = 144; // word
+const sal_uInt16 sprmSDxaColumns = 145; // word
+const sal_uInt16 sprmSFAutoPgn = 146; // byte
+const sal_uInt16 sprmSNfcPgn = 147; // byte
+const sal_uInt16 sprmSDyaPgn = 148; // short
+const sal_uInt16 sprmSDxaPgn = 149; // short
+const sal_uInt16 sprmSFPgnRestart = 150; // byte
+const sal_uInt16 sprmSFEndnote = 151; // byte
+const sal_uInt16 sprmSLnc = 152; // byte
+const sal_uInt16 sprmSGprfIhdt = 153; // byte
+const sal_uInt16 sprmSNLnnMod = 154; // word
+const sal_uInt16 sprmSDxaLnn = 155; // word
+const sal_uInt16 sprmSDyaHdrTop = 156; // word
+const sal_uInt16 sprmSDyaHdrBottom = 157; // word
+const sal_uInt16 sprmSLBetween = 158; // byte
+const sal_uInt16 sprmSVjc = 159; // byte
+const sal_uInt16 sprmSLnnMin = 160; // word
+const sal_uInt16 sprmSPgnStart = 161; // word
+const sal_uInt16 sprmSBOrientation = 162; // byte
+const sal_uInt16 sprmSBCustomize = 163;
+const sal_uInt16 sprmSXaPage = 164; // word
+const sal_uInt16 sprmSYaPage = 165; // word
+const sal_uInt16 sprmSDxaLeft = 166; // word
+const sal_uInt16 sprmSDxaRight = 167; // word
+const sal_uInt16 sprmSDyaTop = 168; // word
+const sal_uInt16 sprmSDyaBottom = 169; // word
+const sal_uInt16 sprmSDzaGutter = 170; // word
+const sal_uInt16 sprmSDMPaperReq = 171; // word
+const sal_uInt16 sprmTJc = 182; // word (low
+const sal_uInt16 sprmTDxaLeft = 183; // word
+const sal_uInt16 sprmTDxaGapHalf = 184; // word
+const sal_uInt16 sprmTFCantSplit = 185; // byte
+const sal_uInt16 sprmTTableHeader = 186; // byte
+const sal_uInt16 sprmTTableBorders = 187; // 12 bytes
+const sal_uInt16 sprmTDefTable10 = 188; // variable
+const sal_uInt16 sprmTDyaRowHeight = 189; // word
+const sal_uInt16 sprmTDefTable = 190;
+const sal_uInt16 sprmTDefTableShd = 191;
+const sal_uInt16 sprmTTlp = 192; // 4 bytes
+const sal_uInt16 sprmTSetBrc = 193; // 5 bytes
+const sal_uInt16 sprmTInsert = 194; // 4 bytes
+const sal_uInt16 sprmTDelete = 195; // word
+const sal_uInt16 sprmTDxaCol = 196; // 4 bytes
+const sal_uInt16 sprmTMerge = 197; // word
+const sal_uInt16 sprmTSplit = 198; // word
+const sal_uInt16 sprmTSetBrc10 = 199; // 5 bytes
+const sal_uInt16 sprmTSetShd = 200; // 4 bytes
+const sal_uInt16 sprmMax = 208;
+}
+
// [MS-DOC] - v20170112 Section 2.2.5.1
enum class sgc
{
diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx
index 3678807b542f..c33b07057738 100644
--- a/sw/source/filter/ww8/ww8par6.cxx
+++ b/sw/source/filter/ww8/ww8par6.cxx
@@ -856,22 +856,22 @@ void wwSectionManager::CreateSep(const long nTextPos)
static const sal_uInt16 aVer67Ids0[] =
{
- /*sprmSBkc*/ 142,
- /*sprmSFTitlePage*/ 143,
- /*sprmSNfcPgn*/ 147,
- /*sprmSCcolumns*/ 144,
- /*sprmSDxaColumns*/ 145,
- /*sprmSLBetween*/ 158
+ NS_sprm::v6::sprmSBkc,
+ NS_sprm::v6::sprmSFTitlePage,
+ NS_sprm::v6::sprmSNfcPgn,
+ NS_sprm::v6::sprmSCcolumns,
+ NS_sprm::v6::sprmSDxaColumns,
+ NS_sprm::v6::sprmSLBetween
};
static const sal_uInt16 aVer8Ids0[] =
{
- /*sprmSBkc*/ 0x3009,
- /*sprmSFTitlePage*/ 0x300A,
- /*sprmSNfcPgn*/ 0x300E,
- /*sprmSCcolumns*/ 0x500B,
- /*sprmSDxaColumns*/ 0x900C,
- /*sprmSLBetween*/ 0x3019
+ NS_sprm::sprmSBkc,
+ NS_sprm::sprmSFTitlePage,
+ NS_sprm::sprmSNfcPgn,
+ NS_sprm::sprmSCcolumns,
+ NS_sprm::sprmSDxaColumns,
+ NS_sprm::sprmSLBetween
};
const sal_uInt16* pIds = eVer <= ww::eWW2 ? aVer2Ids0 : eVer <= ww::eWW7 ? aVer67Ids0 : aVer8Ids0;
@@ -899,10 +899,10 @@ void wwSectionManager::CreateSep(const long nTextPos)
if (aNewSection.maSep.nfcPgn > 4)
aNewSection.maSep.nfcPgn = 0;
- aNewSection.maSep.fUnlocked = eVer > ww::eWW2 ? ReadBSprm(pSep, (eVer <= ww::eWW7 ? 139 : 0x3006), 0 ) : 0;
+ aNewSection.maSep.fUnlocked = eVer > ww::eWW2 ? ReadBSprm(pSep, (eVer <= ww::eWW7 ? NS_sprm::v6::sprmSFProtected : NS_sprm::sprmSFProtected), 0 ) : 0;
// sprmSFBiDi
- aNewSection.maSep.fBiDi = eVer >= ww::eWW8 ? ReadBSprm(pSep, 0x3228, 0) : 0;
+ aNewSection.maSep.fBiDi = eVer >= ww::eWW8 ? ReadBSprm(pSep, NS_sprm::sprmSFBiDi, 0) : 0;
// Reading section property sprmSCcolumns - one less than the number of columns in the section.
// It must be less than MAX_NO_OF_SEP_COLUMNS according the WW8 specification.
@@ -923,15 +923,15 @@ void wwSectionManager::CreateSep(const long nTextPos)
{
// sprmSFEvenlySpaced
aNewSection.maSep.fEvenlySpaced =
- sal_uInt8(ReadBSprm(pSep, (eVer <= ww::eWW7 ? 138 : 0x3005), 1) != 0);
+ sal_uInt8(ReadBSprm(pSep, (eVer <= ww::eWW7 ? NS_sprm::v6::sprmSFEvenlySpaced : NS_sprm::sprmSFEvenlySpaced), 1) != 0);
if (aNewSection.maSep.ccolM1 > 0 && !aNewSection.maSep.fEvenlySpaced)
{
int nColumnDataIdx = 0;
aNewSection.maSep.rgdxaColumnWidthSpacing[nColumnDataIdx] = 0;
- const sal_uInt16 nColumnWidthSprmId = ( eVer <= ww::eWW7 ? 136 : 0xF203 );
- const sal_uInt16 nColumnSpacingSprmId = ( eVer <= ww::eWW7 ? 137 : 0xF204 );
+ const sal_uInt16 nColumnWidthSprmId = ( eVer <= ww::eWW7 ? NS_sprm::v6::sprmSDxaColWidth : NS_sprm::sprmSDxaColWidth);
+ const sal_uInt16 nColumnSpacingSprmId = ( eVer <= ww::eWW7 ? NS_sprm::v6::sprmSDxaColSpacing : NS_sprm::sprmSDxaColSpacing);
const sal_uInt8 nColumnCount = static_cast< sal_uInt8 >(aNewSection.maSep.ccolM1 + 1);
for ( sal_uInt8 nColumn = 0; nColumn < nColumnCount; ++nColumn )
{
@@ -977,30 +977,30 @@ void wwSectionManager::CreateSep(const long nTextPos)
static const sal_uInt16 aVer67Ids1[] =
{
- /*sprmSBOrientation*/ 162,
- /*sprmSXaPage*/ 164,
- /*sprmSYaPage*/ 165,
- /*sprmSDxaLeft*/ 166,
- /*sprmSDxaRight*/ 167,
- /*sprmSDzaGutter*/ 170,
- /*sprmSFPgnRestart*/ 150,
- /*sprmSPgnStart*/ 161,
- /*sprmSDmBinFirst*/ 140,
- /*sprmSDmBinOther*/ 141
+ NS_sprm::v6::sprmSBOrientation,
+ NS_sprm::v6::sprmSXaPage,
+ NS_sprm::v6::sprmSYaPage,
+ NS_sprm::v6::sprmSDxaLeft,
+ NS_sprm::v6::sprmSDxaRight,
+ NS_sprm::v6::sprmSDzaGutter,
+ NS_sprm::v6::sprmSFPgnRestart,
+ NS_sprm::v6::sprmSPgnStart,
+ NS_sprm::v6::sprmSDmBinFirst,
+ NS_sprm::v6::sprmSDmBinOther
};
static const sal_uInt16 aVer8Ids1[] =
{
- /*sprmSBOrientation*/ 0x301d,
- /*sprmSXaPage*/ 0xB01F,
- /*sprmSYaPage*/ 0xB020,
- /*sprmSDxaLeft*/ 0xB021,
- /*sprmSDxaRight*/ 0xB022,
- /*sprmSDzaGutter*/ 0xB025,
- /*sprmSFPgnRestart*/ 0x3011,
- /*sprmSPgnStart97*/ 0x501C,
- /*sprmSDmBinFirst*/ 0x5007,
- /*sprmSDmBinOther*/ 0x5008
+ NS_sprm::sprmSBOrientation,
+ NS_sprm::sprmSXaPage,
+ NS_sprm::sprmSYaPage,
+ NS_sprm::sprmSDxaLeft,
+ NS_sprm::sprmSDxaRight,
+ NS_sprm::sprmSDzaGutter,
+ NS_sprm::sprmSFPgnRestart,
+ NS_sprm::sprmSPgnStart97,
+ NS_sprm::sprmSDmBinFirst,
+ NS_sprm::sprmSDmBinOther
};
pIds = eVer <= ww::eWW2 ? aVer2Ids1 : eVer <= ww::eWW7 ? aVer67Ids1 : aVer8Ids1;
@@ -1031,7 +1031,7 @@ void wwSectionManager::CreateSep(const long nTextPos)
aNewSection.maSep.dzaGutter = ReadUSprm( pSep, pIds[5], 0);
- aNewSection.maSep.fRTLGutter = static_cast< sal_uInt8 >(eVer >= ww::eWW8 ? ReadUSprm( pSep, 0x322A, 0 ) : 0);
+ aNewSection.maSep.fRTLGutter = static_cast< sal_uInt8 >(eVer >= ww::eWW8 ? ReadUSprm( pSep, NS_sprm::sprmSFRTLGutter, 0 ) : 0);
// Page Number Restarts - sprmSFPgnRestart
aNewSection.maSep.fPgnRestart = ReadBSprm(pSep, pIds[6], 0);
@@ -1042,11 +1042,11 @@ void wwSectionManager::CreateSep(const long nTextPos)
if (eVer >= ww::eWW6)
{
- aRes = pSep->HasSprm(eVer <= ww::eWW7 ? 132 : 0x3001);
+ aRes = pSep->HasSprm(eVer <= ww::eWW7 ? NS_sprm::v6::sprmSiHeadingPgn : NS_sprm::sprmSiHeadingPgn);
if (aRes.pSprm && aRes.nRemainingData >= 1)
aNewSection.maSep.iHeadingPgn = *aRes.pSprm;
- aRes = pSep->HasSprm(eVer <= ww::eWW7 ? 131 : 0x3000);
+ aRes = pSep->HasSprm(eVer <= ww::eWW7 ? NS_sprm::v6::sprmSScnsPgn : NS_sprm::sprmScnsPgn);
if (aRes.pSprm && aRes.nRemainingData >= 1)
aNewSection.maSep.cnsPgn = *aRes.pSprm;
}
@@ -1078,25 +1078,25 @@ void wwSectionManager::CreateSep(const long nTextPos)
static const sal_uInt16 aVer67Ids2[] =
{
- /*sprmSDyaTop*/ 168,
- /*sprmSDyaBottom*/ 169,
- /*sprmSDyaHdrTop*/ 156,
- /*sprmSDyaHdrBottom*/ 157,
- /*sprmSNLnnMod*/ 154,
- /*sprmSLnc*/ 152,
- /*sprmSDxaLnn*/ 155,
- /*sprmSLnnMin*/ 160
+ NS_sprm::v6::sprmSDyaTop,
+ NS_sprm::v6::sprmSDyaBottom,
+ NS_sprm::v6::sprmSDyaHdrTop,
+ NS_sprm::v6::sprmSDyaHdrBottom,
+ NS_sprm::v6::sprmSNLnnMod,
+ NS_sprm::v6::sprmSLnc,
+ NS_sprm::v6::sprmSDxaLnn,
+ NS_sprm::v6::sprmSLnnMin
};
static const sal_uInt16 aVer8Ids2[] =
{
- /*sprmSDyaTop*/ 0x9023,
- /*sprmSDyaBottom*/ 0x9024,
- /*sprmSDyaHdrTop*/ 0xB017,
- /*sprmSDyaHdrBottom*/ 0xB018,
- /*sprmSNLnnMod*/ 0x5015,
- /*sprmSLnc*/ 0x3013,
- /*sprmSDxaLnn*/ 0x9016,
- /*sprmSLnnMin*/ 0x501B
+ NS_sprm::sprmSDyaTop,
+ NS_sprm::sprmSDyaBottom,
+ NS_sprm::sprmSDyaHdrTop,
+ NS_sprm::sprmSDyaHdrBottom,
+ NS_sprm::sprmSNLnnMod,
+ NS_sprm::sprmSLnc,
+ NS_sprm::sprmSDxaLnn,
+ NS_sprm::sprmSLnnMin
};
pIds = eVer <= ww::eWW2 ? aVer2Ids2 : eVer <= ww::eWW7 ? aVer67Ids2 : aVer8Ids2;
@@ -1108,15 +1108,15 @@ void wwSectionManager::CreateSep(const long nTextPos)
if (eVer >= ww::eWW8)
{
- aNewSection.maSep.wTextFlow = ReadUSprm(pSep, 0x5033, 0);
- aNewSection.maSep.clm = ReadUSprm( pSep, 0x5032, 0 );
- aNewSection.maSep.dyaLinePitch = ReadUSprm(pSep, 0x9031, 360);
- aRes = pSep->HasSprm(0x7030);
+ aNewSection.maSep.wTextFlow = ReadUSprm(pSep, NS_sprm::sprmSTextFlow, 0);
+ aNewSection.maSep.clm = ReadUSprm( pSep, NS_sprm::sprmSClm, 0 );
+ aNewSection.maSep.dyaLinePitch = ReadUSprm(pSep, NS_sprm::sprmSDyaLinePitch, 360);
+ aRes = pSep->HasSprm(NS_sprm::sprmSDxtCharSpace);
if (aRes.pSprm && aRes.nRemainingData >= 4)
aNewSection.maSep.dxtCharSpace = SVBT32ToUInt32(aRes.pSprm);
//sprmSPgbProp
- sal_uInt16 pgbProp = ReadSprm( pSep, 0x522F, 0 );
+ sal_uInt16 pgbProp = ReadSprm( pSep, NS_sprm::sprmSPgbProp, 0 );
aNewSection.maSep.pgbApplyTo = pgbProp & 0x0007;
aNewSection.maSep.pgbPageDepth = (pgbProp & 0x0018) >> 3;
aNewSection.maSep.pgbOffsetFrom = (pgbProp & 0x00E0) >> 5;
@@ -1291,13 +1291,29 @@ static sal_uInt8 lcl_ReadBorders(bool bVer67, WW8_BRCVer9* brc, WW8PLCFx_Cp_FKP*
else
{
- static const sal_uInt16 aVer67Ids[5] = { 38, 39, 40, 41, 42 };
-
- static const sal_uInt16 aVer8Ids[5] =
- { 0x6424, 0x6425, 0x6426, 0x6427, 0x6428 };
-
- static const sal_uInt16 aVer9Ids[5] =
- { 0xC64E, 0xC64F, 0xC650, 0xC651, 0xC652 };
+ static const sal_uInt16 aVer67Ids[5] = {
+ NS_sprm::v6::sprmPBrcTop,
+ NS_sprm::v6::sprmPBrcLeft,
+ NS_sprm::v6::sprmPBrcBottom,
+ NS_sprm::v6::sprmPBrcRight,
+ NS_sprm::v6::sprmPBrcBetween
+ };
+
+ static const sal_uInt16 aVer8Ids[5] = {
+ NS_sprm::sprmPBrcTop80,
+ NS_sprm::sprmPBrcLeft80,
+ NS_sprm::sprmPBrcBottom80,
+ NS_sprm::sprmPBrcRight80,
+ NS_sprm::sprmPBrcBetween80
+ };
+
+ static const sal_uInt16 aVer9Ids[5] = {
+ NS_sprm::sprmPBrcTop,
+ NS_sprm::sprmPBrcLeft,
+ NS_sprm::sprmPBrcBottom,
+ NS_sprm::sprmPBrcRight,
+ NS_sprm::sprmPBrcBetween
+ };
if( pPap )
{
@@ -1539,7 +1555,7 @@ inline bool SetValSprm( sal_Int16* pVar, const WW8RStyle* pStyle, sal_uInt16 nId
}
/*
-#i1930 revealed that sprm 0x360D as used in tables can affect the frame
+#i1930 revealed that sprm 0x360D (sprmTPc) as used in tables can affect the frame
around the table. Its full structure is not fully understood as yet.
*/
void WW8FlyPara::ApplyTabPos(const WW8_TablePos *pTabPos)
@@ -1606,7 +1622,7 @@ void WW8FlyPara::Read(sal_uInt8 nOrigSp29, WW8PLCFx_Cp_FKP* pPap)
SetValSprm( &nUpMgn, pPap, 48 ); // U-border //sprmPDyaFromText
SetValSprm( &nLoMgn, pPap, 48 ); // D-border //sprmPDyaFromText
- SprmResult aS = pPap->HasSprm(37); //sprmPWr
+ SprmResult aS = pPap->HasSprm(NS_sprm::v6::sprmPWr);
if (aS.pSprm && aS.nRemainingData >= 1)
nSp37 = *aS.pSprm;
}
@@ -1675,7 +1691,7 @@ void WW8FlyPara::ReadFull(sal_uInt8 nOrigSp29, SwWW8ImplReader* pIo)
// in APO ?
//sprmPPc
- SprmResult aS = pPap->HasSprm( bVer67 ? 29 : 0x261B );
+ SprmResult aS = pPap->HasSprm( bVer67 ? NS_sprm::v6::sprmPPc : NS_sprm::sprmPPc);
// no -> graphics Apo
if (!aS.pSprm || aS.nRemainingData < 1)
@@ -1713,33 +1729,33 @@ void WW8FlyPara::Read(sal_uInt8 nOrigSp29, WW8RStyle const * pStyle)
{
if (bVer67)
{
- SetValSprm( &nSp26, pStyle, 26 ); // X-position
+ SetValSprm( &nSp26, pStyle, NS_sprm::v6::sprmPDxaAbs ); // X-position
//set in me or in parent style
- mbVertSet |= SetValSprm(&nSp27, pStyle, 27); // Y-position
- SetValSprm( &nSp45, pStyle, 45 ); // height
- SetValSprm( &nSp28, pStyle, 28 ); // width
- SetValSprm( &nLeMgn, pStyle, 49 ); // L-border
- SetValSprm( &nRiMgn, pStyle, 49 ); // R-border
- SetValSprm( &nUpMgn, pStyle, 48 ); // U-border
- SetValSprm( &nLoMgn, pStyle, 48 ); // D-border
-
- SprmResult aS = pStyle->HasParaSprm( 37 ); // wrapping
+ mbVertSet |= SetValSprm(&nSp27, pStyle, NS_sprm::v6::sprmPDyaAbs); // Y-position
+ SetValSprm( &nSp45, pStyle, NS_sprm::v6::sprmPWHeightAbs ); // height
+ SetValSprm( &nSp28, pStyle, NS_sprm::v6::sprmPDxaWidth ); // width
+ SetValSprm( &nLeMgn, pStyle, NS_sprm::v6::sprmPDxaFromText ); // L-border
+ SetValSprm( &nRiMgn, pStyle, NS_sprm::v6::sprmPDxaFromText ); // R-border
+ SetValSprm( &nUpMgn, pStyle, NS_sprm::v6::sprmPDyaFromText ); // U-border
+ SetValSprm( &nLoMgn, pStyle, NS_sprm::v6::sprmPDyaFromText ); // D-border
+
+ SprmResult aS = pStyle->HasParaSprm( NS_sprm::v6::sprmPWr ); // wrapping
if (aS.pSprm && aS.nRemainingData >= 1)
nSp37 = *aS.pSprm;
}
else
{
- SetValSprm( &nSp26, pStyle, 0x8418 ); // X-position
+ SetValSprm( &nSp26, pStyle, NS_sprm::sprmPDxaAbs ); // X-position
//set in me or in parent style
- mbVertSet |= SetValSprm(&nSp27, pStyle, 0x8419); // Y-position
- SetValSprm( &nSp45, pStyle, 0x442B ); // height
- SetValSprm( &nSp28, pStyle, 0x841A ); // width
- SetValSprm( &nLeMgn, pStyle, 0x842F ); // L-border
- SetValSprm( &nRiMgn, pStyle, 0x842F ); // R-border
- SetValSprm( &nUpMgn, pStyle, 0x842E ); // U-border
- SetValSprm( &nLoMgn, pStyle, 0x842E ); // D-border
-
- SprmResult aS = pStyle->HasParaSprm( 0x2423 ); // wrapping
+ mbVertSet |= SetValSprm(&nSp27, pStyle, NS_sprm::sprmPDyaAbs); // Y-position
+ SetValSprm( &nSp45, pStyle, NS_sprm::sprmPWHeightAbs ); // height
+ SetValSprm( &nSp28, pStyle, NS_sprm::sprmPDxaWidth ); // width
+ SetValSprm( &nLeMgn, pStyle, NS_sprm::sprmPDxaFromText ); // L-border
+ SetValSprm( &nRiMgn, pStyle, NS_sprm::sprmPDxaFromText ); // R-border
+ SetValSprm( &nUpMgn, pStyle, NS_sprm::sprmPDyaFromText ); // U-border
+ SetValSprm( &nLoMgn, pStyle, NS_sprm::sprmPDyaFromText ); // D-border
+
+ SprmResult aS = pStyle->HasParaSprm( NS_sprm::sprmPWr ); // wrapping
if (aS.pSprm && aS.nRemainingData >= 1)
nSp37 = *aS.pSprm;
}
@@ -1808,7 +1824,7 @@ bAutoWidth(false),
bToggelPos(false)
{
//#i119466 mapping "Around" wrap setting to "Parallel" for table
- const bool bIsTable = rIo.m_xPlcxMan->HasParaSprm(0x2416).pSprm;
+ const bool bIsTable = rIo.m_xPlcxMan->HasParaSprm(NS_sprm::sprmPFInTable).pSprm;
if (bIsTable && rWW.nSp37 == 2)
eSurround = css::text::WrapTextMode_PARALLEL;
@@ -2317,9 +2333,9 @@ bool SwWW8ImplReader::IsDropCap()
{
SprmResult aDCS;
if (m_bVer67)
- aDCS = pPap->HasSprm(46);
+ aDCS = pPap->HasSprm(NS_sprm::v6::sprmPDcs);
else
- aDCS = m_xPlcxMan->GetPapPLCF()->HasSprm(0x442C);
+ aDCS = m_xPlcxMan->GetPapPLCF()->HasSprm(NS_sprm::sprmPDcs);
if (aDCS.pSprm && aDCS.nRemainingData >= 2)
{
/*
@@ -2860,7 +2876,7 @@ void SwWW8ImplReader::Read_BoldUsw( sal_uInt16 nId, const sal_uInt8* pData, shor
sal_uInt8 nI;
// the attribute number for "double strike-through" breaks rank
- if (0x2A53 == nId)
+ if (NS_sprm::sprmCFDStrike == nId)
nI = nContigiousWestern; // The out of sequence western id
else
{
@@ -2868,9 +2884,9 @@ void SwWW8ImplReader::Read_BoldUsw( sal_uInt16 nId, const sal_uInt8* pData, shor
if (eVersion <= ww::eWW2)
nI = static_cast< sal_uInt8 >(nId - 60);
else if (eVersion < ww::eWW8)
- nI = static_cast< sal_uInt8 >(nId - 85);
+ nI = static_cast< sal_uInt8 >(nId - NS_sprm::v6::sprmCFBold);
else
- nI = static_cast< sal_uInt8 >(nId - 0x0835);
+ nI = static_cast< sal_uInt8 >(nId - NS_sprm::sprmCFBold);
}
sal_uInt16 nMask = 1 << nI;
@@ -2899,7 +2915,7 @@ void SwWW8ImplReader::Read_BoldUsw( sal_uInt16 nId, const sal_uInt8* pData, shor
if (m_xPlcxMan && eVersion > ww::eWW2)
{
SprmResult aCharIstd =
- m_xPlcxMan->GetChpPLCF()->HasSprm(m_bVer67 ? 80 : 0x4A30);
+ m_xPlcxMan->GetChpPLCF()->HasSprm(m_bVer67 ? NS_sprm::v6::sprmCIstd : NS_sprm::sprmCIstd);
if (aCharIstd.pSprm && aCharIstd.nRemainingData >= 2)
pSI = GetStyle(SVBT16ToShort(aCharIstd.pSprm));
}
@@ -3047,7 +3063,7 @@ void SwWW8ImplReader::Read_BoldBiDiUsw(sal_uInt16 nId, const sal_uInt8* pData,
else if (eVersion < ww::eWW8)
nI = static_cast< sal_uInt8 >(nId - 111);
else
- nI = static_cast< sal_uInt8 >(nId - 0x085C);
+ nI = static_cast< sal_uInt8 >(nId - NS_sprm::sprmCFBoldBi);
OSL_ENSURE(nI <= 1, "not happening");
if (nI > 1)
@@ -3066,7 +3082,7 @@ void SwWW8ImplReader::Read_BoldBiDiUsw(sal_uInt16 nId, const sal_uInt8* pData,
if (m_xPlcxMan)
{
SprmResult aCharIstd =
- m_xPlcxMan->GetChpPLCF()->HasSprm(m_bVer67 ? 80 : 0x4A30);
+ m_xPlcxMan->GetChpPLCF()->HasSprm(m_bVer67 ? NS_sprm::v6::sprmCIstd : NS_sprm::sprmCIstd);
if (aCharIstd.pSprm && aCharIstd.nRemainingData >= 2)
pSI = GetStyle(SVBT16ToShort(aCharIstd.pSprm));
}
@@ -3717,18 +3733,18 @@ void SwWW8ImplReader::Read_FontCode( sal_uInt16 nId, const sal_uInt8* pData, sho
{ // (see sprmCSymbol) is valid!
switch( nId )
{
- case 113: //WW7
- case 0x4A51: //"Other" font, override with BiDi if it exists
- case 0x4A5E: //BiDi Font
+ case 113: //WW7
+ case NS_sprm::sprmCRgFtc2: //"Other" font, override with BiDi if it exists
+ case NS_sprm::sprmCFtcBi: //BiDi Font
nId = RES_CHRATR_CTL_FONT;
break;
- case 93: //WW6
- case 111: //WW7
- case 0x4A4f:
+ case NS_sprm::v6::sprmCFtc: //WW6
+ case 111: //WW7
+ case NS_sprm::sprmCRgFtc0:
nId = RES_CHRATR_FONT;
break;
- case 112: //WW7
- case 0x4A50:
+ case 112: //WW7
+ case NS_sprm::sprmCRgFtc1:
nId = RES_CHRATR_CJK_FONT;
break;
default:
@@ -3763,14 +3779,14 @@ void SwWW8ImplReader::Read_FontSize( sal_uInt16 nId, const sal_uInt8* pData, sho
{
switch( nId )
{
- case 74:
- case 99:
- case 0x4a43:
+ case 74: // WW2
+ case NS_sprm::v6::sprmCHps:
+ case NS_sprm::sprmCHps:
nId = RES_CHRATR_FONTSIZE;
break;
case 85: //WW2
case 116: //WW7
- case 0x4a61:
+ case NS_sprm::sprmCHpsBi:
nId = RES_CHRATR_CTL_FONTSIZE;
break;
default:
@@ -3839,18 +3855,18 @@ void SwWW8ImplReader::Read_Language( sal_uInt16 nId, const sal_uInt8* pData, sho
{
switch( nId )
{
- case 97:
- case 0x486D: //sprmCRgLid0_80
- case 0x4873: //Methinks, uncertain
+ case NS_sprm::v6::sprmCLid:
+ case NS_sprm::sprmCRgLid0_80:
+ case NS_sprm::sprmCRgLid0:
nId = RES_CHRATR_LANGUAGE;
break;
- case 0x486E: //sprmCRgLid1_80
- case 0x4874: //Methinks, uncertain
+ case NS_sprm::sprmCRgLid1_80:
+ case NS_sprm::sprmCRgLid1:
nId = RES_CHRATR_CJK_LANGUAGE;
break;
- case 83:
- case 114:
- case 0x485F:
+ case 83: // WW2
+ case 114: // WW7
+ case NS_sprm::sprmCLidBi:
nId = RES_CHRATR_CTL_LANGUAGE;
break;
default:
@@ -3924,7 +3940,7 @@ void SwWW8ImplReader::Read_FontKern( sal_uInt16, const sal_uInt8* pData, short n
void SwWW8ImplReader::Read_CharShadow( sal_uInt16, const sal_uInt8* pData, short nLen )
{
//Has newer colour variant, ignore this old variant
- if (!m_bVer67 && m_xPlcxMan && m_xPlcxMan->GetChpPLCF()->HasSprm(0xCA71).pSprm)
+ if (!m_bVer67 && m_xPlcxMan && m_xPlcxMan->GetChpPLCF()->HasSprm(NS_sprm::sprmCShd).pSprm)
return;
if (nLen < 2)
@@ -4011,9 +4027,9 @@ bool lcl_HasExplicitLeft(const WW8PLCFMan *pPlcxMan, bool bVer67)
if (pPap)
{
if (bVer67)
- return pPap->HasSprm(17).pSprm;
+ return pPap->HasSprm(NS_sprm::v6::sprmPDxaLeft).pSprm;
else
- return (pPap->HasSprm(0x840F).pSprm || pPap->HasSprm(0x845E).pSprm);
+ return (pPap->HasSprm(NS_sprm::sprmPDxaLeft80).pSprm || pPap->HasSprm(NS_sprm::sprmPDxaLeft).pSprm);
}
return false;
}
@@ -4067,18 +4083,18 @@ void SwWW8ImplReader::Read_LR( sal_uInt16 nId, const sal_uInt8* pData, short nLe
switch (nId)
{
//Left becomes after;
- case 17:
- nId = 16;
+ case NS_sprm::v6::sprmPDxaLeft:
+ nId = NS_sprm::v6::sprmPDxaRight;
break;
- case 0x840F:
- nId = 0x840E;
+ case NS_sprm::sprmPDxaLeft80:
+ nId = NS_sprm::sprmPDxaRight80;
break;
//Right becomes before;
- case 16:
- nId = 17;
+ case NS_sprm::v6::sprmPDxaRight:
+ nId = NS_sprm::v6::sprmPDxaLeft;
break;
- case 0x840E:
- nId = 0x840F;
+ case NS_sprm::sprmPDxaRight80:
+ nId = NS_sprm::sprmPDxaLeft80;
break;
}
}
@@ -4089,9 +4105,9 @@ void SwWW8ImplReader::Read_LR( sal_uInt16 nId, const sal_uInt8* pData, short nLe
switch (nId)
{
//sprmPDxaLeft
- case 17:
- case 0x840F:
- case 0x845E:
+ case NS_sprm::v6::sprmPDxaLeft:
+ case NS_sprm::sprmPDxaLeft80:
+ case NS_sprm::sprmPDxaLeft:
aLR.SetTextLeft( nPara );
if (m_pAktColl && m_nAktColl < m_vColl.size())
{
@@ -4100,9 +4116,9 @@ void SwWW8ImplReader::Read_LR( sal_uInt16 nId, const sal_uInt8* pData, short nLe
bLeftIndentSet = true; // #i105414#
break;
//sprmPDxaLeft1
- case 19:
- case 0x8411:
- case 0x8460:
+ case NS_sprm::v6::sprmPDxaLeft1:
+ case NS_sprm::sprmPDxaLeft180:
+ case NS_sprm::sprmPDxaLeft1:
/*
As part of an attempt to break my spirit ww 8+ formats can contain
ww 7- lists. If they do and the list is part of the style, then
@@ -4116,7 +4132,7 @@ void SwWW8ImplReader::Read_LR( sal_uInt16 nId, const sal_uInt8* pData, short nLe
*/
if (m_xPlcxMan && m_nAktColl < m_vColl.size() && m_vColl[m_nAktColl].m_bHasBrokenWW6List)
{
- SprmResult aIsZeroed = m_xPlcxMan->GetPapPLCF()->HasSprm(0x460B);
+ SprmResult aIsZeroed = m_xPlcxMan->GetPapPLCF()->HasSprm(NS_sprm::sprmPIlfo);
if (aIsZeroed.pSprm && aIsZeroed.nRemainingData >= 1 && *aIsZeroed.pSprm == 0)
{
const SvxLRSpaceItem &rLR =
@@ -4153,9 +4169,9 @@ void SwWW8ImplReader::Read_LR( sal_uInt16 nId, const sal_uInt8* pData, short nLe
bFirstLinOfstSet = true; // #i103711#
break;
//sprmPDxaRight
- case 16:
- case 0x840E:
- case 0x845D:
+ case NS_sprm::v6::sprmPDxaRight:
+ case NS_sprm::sprmPDxaRight80:
+ case NS_sprm::sprmPDxaRight:
aLR.SetRight( nPara );
break;
default:
@@ -4323,13 +4339,13 @@ void SwWW8ImplReader::Read_UL( sal_uInt16 nId, const sal_uInt8* pData, short nLe
switch( nId )
{
//sprmPDyaBefore
- case 21:
- case 0xA413:
+ case NS_sprm::v6::sprmPDyaBefore:
+ case NS_sprm::sprmPDyaBefore:
aUL.SetUpper( nPara );
break;
//sprmPDyaAfter
- case 22:
- case 0xA414:
+ case NS_sprm::v6::sprmPDyaAfter:
+ case NS_sprm::sprmPDyaAfter:
aUL.SetLower( nPara );
break;
default:
@@ -4410,7 +4426,7 @@ bool SwWW8ImplReader::IsRightToLeft()
bool bRTL = false;
SprmResult aDir;
if (m_xPlcxMan)
- aDir = m_xPlcxMan->GetPapPLCF()->HasSprm(0x2441);
+ aDir = m_xPlcxMan->GetPapPLCF()->HasSprm(NS_sprm::sprmPFBiDi);
if (aDir.pSprm && aDir.nRemainingData >= 1)
bRTL = *aDir.pSprm != 0;
else
@@ -4434,7 +4450,7 @@ void SwWW8ImplReader::Read_RTLJustify( sal_uInt16, const sal_uInt8* pData, short
//If we are in a ltr paragraph this is the same as normal Justify,
//If we are in a rtl paragraph the meaning is reversed.
if (!IsRightToLeft())
- Read_Justify(0x2403 /*dummy*/, pData, nLen);
+ Read_Justify(NS_sprm::sprmPJc80 /*dummy*/, pData, nLen);
else
{
SvxAdjust eAdjust(SvxAdjust::Right);
@@ -4470,13 +4486,13 @@ void SwWW8ImplReader::Read_BoolItem( sal_uInt16 nId, const sal_uInt8* pData, sho
{
switch( nId )
{
- case 0x2433:
+ case NS_sprm::sprmPFKinsoku:
nId = RES_PARATR_FORBIDDEN_RULES;
break;
- case 0x2435:
+ case NS_sprm::sprmPFOverflowPunct:
nId = RES_PARATR_HANGINGPUNCTUATION;
break;
- case 0x2437:
+ case NS_sprm::sprmPFAutoSpaceDE:
nId = RES_PARATR_SCRIPTSPACE;
break;
default:
@@ -4508,7 +4524,7 @@ void SwWW8ImplReader::Read_Emphasis( sal_uInt16, const sal_uInt8* pData, short n
//one is ignored
SprmResult aLang;
if (m_xPlcxMan)
- aLang = m_xPlcxMan->GetChpPLCF()->HasSprm(0x486E);
+ aLang = m_xPlcxMan->GetChpPLCF()->HasSprm(NS_sprm::sprmCRgLid1_80);
if (aLang.pSprm && aLang.nRemainingData >= 2)
nLang = LanguageType(SVBT16ToShort(aLang.pSprm));
@@ -4581,8 +4597,8 @@ void SwWW8ImplReader::Read_Relief( sal_uInt16 nId, const sal_uInt8* pData, short
const SvxCharReliefItem* pOld = static_cast<const SvxCharReliefItem*>(
GetFormatAttr( RES_CHRATR_RELIEF ));
- FontRelief nNewValue = 0x854 == nId ? FontRelief::Engraved
- : ( 0x858 == nId ? FontRelief::Embossed
+ FontRelief nNewValue = NS_sprm::sprmCFImprint == nId ? FontRelief::Engraved
+ : ( NS_sprm::sprmCFEmboss == nId ? FontRelief::Embossed
: FontRelief::NONE );
if( pOld->GetValue() == nNewValue )
{
@@ -4752,7 +4768,7 @@ void SwWW8Shade::SetShade(ColorData nFore, ColorData nBack, sal_uInt16 nIndex)
void SwWW8ImplReader::Read_Shade( sal_uInt16, const sal_uInt8* pData, short nLen )
{
- if (!m_bVer67 && m_xPlcxMan && m_xPlcxMan->GetPapPLCF()->HasSprm(0xC64D).pSprm)
+ if (!m_bVer67 && m_xPlcxMan && m_xPlcxMan->GetPapPLCF()->HasSprm(NS_sprm::sprmPShd).pSprm)
return;
if (nLen < 2)
@@ -4903,7 +4919,7 @@ void SwWW8ImplReader::Read_Border(sal_uInt16 , const sal_uInt8*, short nLen)
void SwWW8ImplReader::Read_CharBorder(sal_uInt16 nId, const sal_uInt8* pData, short nLen )
{
//Ignore this old border type
- //if (!bVer67 && pPlcxMan && pPlcxMan->GetChpPLCF()->HasSprm(0xCA72))
+ //if (!bVer67 && pPlcxMan && pPlcxMan->GetChpPLCF()->HasSprm(NS_sprm::sprmCBrc))
// return;
if (nLen < 0)
@@ -5077,27 +5093,29 @@ bool SwWW8ImplReader::ParseTabPos(WW8_TablePos *pTabPos, WW8PLCFx_Cp_FKP* pPap)
{
bool bRet = false;
memset(pTabPos, 0, sizeof(WW8_TablePos));
- SprmResult aRes = pPap->HasSprm(0x360D);
+ // sprmTPc contains a PositionCodeOperand structure that specifies the origin
+ // that is used to calculate the table position when it is absolutely positioned
+ SprmResult aRes = pPap->HasSprm(NS_sprm::sprmTPc);
if (aRes.pSprm && aRes.nRemainingData >= 1)
{
pTabPos->nSp29 = *aRes.pSprm;
pTabPos->nSp37 = 2; //Possible fail area, always parallel wrap
- aRes = pPap->HasSprm(0x940E);
+ aRes = pPap->HasSprm(NS_sprm::sprmTDxaAbs);
if (aRes.pSprm && aRes.nRemainingData >= 2)
pTabPos->nSp26 = SVBT16ToShort(aRes.pSprm);
- aRes = pPap->HasSprm(0x940F);
+ aRes = pPap->HasSprm(NS_sprm::sprmTDyaAbs);
if (aRes.pSprm && aRes.nRemainingData >= 2)
pTabPos->nSp27 = SVBT16ToShort(aRes.pSprm);
- aRes = pPap->HasSprm(0x9410);
+ aRes = pPap->HasSprm(NS_sprm::sprmTDxaFromText);
if (aRes.pSprm && aRes.nRemainingData >= 2)
pTabPos->nLeMgn = SVBT16ToShort(aRes.pSprm);
- aRes = pPap->HasSprm(0x941E);
+ aRes = pPap->HasSprm(NS_sprm::sprmTDxaFromTextRight);
if (aRes.pSprm && aRes.nRemainingData >= 2)
pTabPos->nRiMgn = SVBT16ToShort(aRes.pSprm);
- aRes = pPap->HasSprm(0x9411);
+ aRes = pPap->HasSprm(NS_sprm::sprmTDyaFromText);
if (aRes.pSprm && aRes.nRemainingData >= 2)
pTabPos->nUpMgn = SVBT16ToShort(aRes.pSprm);
- aRes = pPap->HasSprm(0x941F);
+ aRes = pPap->HasSprm(NS_sprm::sprmTDyaFromTextBottom);
if (aRes.pSprm && aRes.nRemainingData >= 2)
pTabPos->nLoMgn = SVBT16ToShort(aRes.pSprm);
pTabPos->bNoFly = !FloatingTableConversion(pPap);
@@ -5334,358 +5352,208 @@ const wwSprmDispatcher *GetWW6SprmDispatcher()
{
static SprmReadInfo aSprms[] =
{
- {0, nullptr}, // "0" default resp. error
- // will be skipped!
- {2, &SwWW8ImplReader::Read_StyleCode}, //"sprmPIstd", pap.istd
- //(style code)
- {3, nullptr}, //"sprmPIstdPermute", pap.istd
- //permutation
- {4, nullptr}, //"sprmPIncLv1",
- //pap.istddifference
- {5, &SwWW8ImplReader::Read_Justify}, //"sprmPJc", pap.jc
- //(justification)
- {6, nullptr}, //"sprmPFSideBySide",
- //pap.fSideBySide
- {7, &SwWW8ImplReader::Read_KeepLines}, //"sprmPFKeep", pap.fKeep
- {8, &SwWW8ImplReader::Read_KeepParas}, //"sprmPFKeepFollow ",
- //pap.fKeepFollow
- {9, &SwWW8ImplReader::Read_BreakBefore}, //"sprmPPageBreakBefore",
- //pap.fPageBreakBefore
- {10, nullptr}, //"sprmPBrcl", pap.brcl
- {11, nullptr}, //"sprmPBrcp ", pap.brcp
- {12, &SwWW8ImplReader::Read_ANLevelDesc}, //"sprmPAnld", pap.anld (ANLD
- //structure)
- {13, &SwWW8ImplReader::Read_ANLevelNo}, //"sprmPNLvlAnm", pap.nLvlAnm
- //nn
- {14, &SwWW8ImplReader::Read_NoLineNumb}, //"sprmPFNoLineNumb", ap.fNoLnn
- {15, &SwWW8ImplReader::Read_Tab}, //"?sprmPChgTabsPapx",
- //pap.itbdMac, ...
- {16, &SwWW8ImplReader::Read_LR}, //"sprmPDxaRight", pap.dxaRight
- {17, &SwWW8ImplReader::Read_LR}, //"sprmPDxaLeft", pap.dxaLeft
- {18, nullptr}, //"sprmPNest", pap.dxaLeft
- {19, &SwWW8ImplReader::Read_LR}, //"sprmPDxaLeft1", pap.dxaLeft1
- {20, &SwWW8ImplReader::Read_LineSpace}, //"sprmPDyaLine", pap.lspd
- //an LSPD
- {21, &SwWW8ImplReader::Read_UL}, //"sprmPDyaBefore",
- //pap.dyaBefore
- {22, &SwWW8ImplReader::Read_UL}, //"sprmPDyaAfter", pap.dyaAfter
- {23, nullptr}, //"?sprmPChgTabs", pap.itbdMac,
- //pap.rgdxaTab, ...
- {24, nullptr}, //"sprmPFInTable", pap.fInTable
- {25, &SwWW8ImplReader::Read_TabRowEnd}, //"sprmPTtp", pap.fTtp
- {26, nullptr}, //"sprmPDxaAbs", pap.dxaAbs
- {27, nullptr}, //"sprmPDyaAbs", pap.dyaAbs
- {28, nullptr}, //"sprmPDxaWidth", pap.dxaWidth
- {29, &SwWW8ImplReader::Read_ApoPPC}, //"sprmPPc", pap.pcHorz,
- //pap.pcVert
- {30, nullptr}, //"sprmPBrcTop10", pap.brcTop
- //BRC10
- {31, nullptr}, //"sprmPBrcLeft10",
- //pap.brcLeft BRC10
- {32, nullptr}, //"sprmPBrcBottom10",
- //pap.brcBottom BRC10
- {33, nullptr}, //"sprmPBrcRight10",
- //pap.brcRight BRC10
- {34, nullptr}, //"sprmPBrcBetween10",
- //pap.brcBetween BRC10
- {35, nullptr}, //"sprmPBrcBar10", pap.brcBar
- //BRC10
- {36, nullptr}, //"sprmPFromText10",
- //pap.dxaFromText dxa
- {37, nullptr}, //"sprmPWr", pap.wr wr
- {38, &SwWW8ImplReader::Read_Border}, //"sprmPBrcTop", pap.brcTop BRC
- {39, &SwWW8ImplReader::Read_Border}, //"sprmPBrcLeft",
- //pap.brcLeft BRC
- {40, &SwWW8ImplReader::Read_Border}, //"sprmPBrcBottom",
- //pap.brcBottom BRC
- {41, &SwWW8ImplReader::Read_Border}, //"sprmPBrcRight",
- //pap.brcRight BRC
- {42, &SwWW8ImplReader::Read_Border}, //"sprmPBrcBetween",
- //pap.brcBetween BRC
- {43, nullptr}, //"sprmPBrcBar", pap.brcBar
- //BRC word
- {44, &SwWW8ImplReader::Read_Hyphenation}, //"sprmPFNoAutoHyph",
- //pap.fNoAutoHyph
- {45, nullptr}, //"sprmPWHeightAbs",
- //pap.wHeightAbs w
- {46, nullptr}, //"sprmPDcs", pap.dcs DCS
- {47, &SwWW8ImplReader::Read_Shade}, //"sprmPShd", pap.shd SHD
- {48, nullptr}, //"sprmPDyaFromText",
- //pap.dyaFromText dya
- {49, nullptr}, //"sprmPDxaFromText",
- //pap.dxaFromText dxa
- {50, nullptr}, //"sprmPFLocked", pap.fLocked
- //0 or 1 byte
- {51, &SwWW8ImplReader::Read_WidowControl}, //"sprmPFWidowControl",
- //pap.fWidowControl 0 or 1 byte
- {52, nullptr}, //"?sprmPRuler 52",
- {53, nullptr}, //"??53",
- {54, nullptr}, //"??54",
- {55, nullptr}, //"??55",
- {56, nullptr}, //"??56",
- {57, nullptr}, //"??57",
- {58, nullptr}, //"??58",
- {59, nullptr}, //"??59",
- {60, nullptr}, //"??60",
- {61, nullptr}, //"??61",
- {62, nullptr}, //"??62",
- {63, nullptr}, //"??63",
- {64, &SwWW8ImplReader::Read_ParaBiDi}, //"rtl bidi ?
- {65, &SwWW8ImplReader::Read_CFRMarkDel}, //"sprmCFStrikeRM",
- //chp.fRMarkDel 1 or 0 bit
- {66, &SwWW8ImplReader::Read_CFRMark}, //"sprmCFRMark", chp.fRMark
- //1 or 0 bit
- {67, &SwWW8ImplReader::Read_FieldVanish}, //"sprmCFFieldVanish",
- //chp.fFieldVanish 1 or 0 bit
- {68, &SwWW8ImplReader::Read_PicLoc}, //"sprmCPicLocation",
- //chp.fcPic and chp.fSpec
- {69, nullptr}, //"sprmCIbstRMark",
- //chp.ibstRMark index into
- //sttbRMark
- {70, nullptr}, //"sprmCDttmRMark", chp.dttm
- //DTTM long
- {71, nullptr}, //"sprmCFData", chp.fData 1 or
- //0 bit
- {72, nullptr}, //"sprmCRMReason",
- //chp.idslRMReason an index to
- //a table
- {73, &SwWW8ImplReader::Read_CharSet}, //"sprmCChse", chp.fChsDiff
- //and chp.chse 3 bytes
- {74, &SwWW8ImplReader::Read_Symbol}, //"sprmCSymbol", chp.fSpec,
- //chp.chSym and chp.ftcSym
- {75, &SwWW8ImplReader::Read_Obj}, //"sprmCFOle2", chp.fOle2 1
- //or 0 bit
- {76, nullptr}, //"??76",
- {77, nullptr}, //"??77",
- {78, nullptr}, //"??78",
- {79, nullptr}, //"??79",
- {80, &SwWW8ImplReader::Read_CColl}, //"sprmCIstd", chp.istd istd,
- //see stylesheet definition
- //short
- {81, nullptr}, //"sprmCIstdPermute", chp.istd
- //permutation vector
- {82, nullptr}, //"sprmCDefault", whole CHP
- //none variable length
- {83, nullptr}, //"sprmCPlain", whole CHP
- //none 0
- {84, nullptr}, //"??84",
- {85, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFBold", chp.fBold 0,1,
- //128, or 129 byte
- {86, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFItalic", chp.fItalic
- //0,1, 128, or 129 byte
- {87, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFStrike", chp.fStrike
- //0,1, 128, or 129 byte
- {88, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFOutline", chp.fOutline
- //0,1, 128, or 129 byte
- {89, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFShadow", chp.fShadow
- //0,1, 128, or 129 byte
- {90, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFSmallCaps",
- //chp.fSmallCaps 0,1, 128, or
- //129 byte
- {91, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFCaps", chp.fCaps 0,1,
- //128, or 129 byte
- {92, &SwWW8ImplReader::Read_BoldUsw}, //"sprmCFVanish", chp.fVanish
- //0,1, 128, or 129 byte
- {93, &SwWW8ImplReader::Read_FontCode}, //"sprmCFtc", chp.ftc ftc word
- {94, &SwWW8ImplReader::Read_Underline}, // "sprmCKul", chp.kul kul byte
- {95, nullptr}, //"sprmCSizePos", chp.hps,
- //chp.hpsPos 3 bytes
- {96, &SwWW8ImplReader::Read_Kern}, //"sprmCDxaSpace",
- //chp.dxaSpace dxa word
- {97, &SwWW8ImplReader::Read_Language}, //"sprmCLid", chp.lid LID word
- {98, &SwWW8ImplReader::Read_TextColor}, //"sprmCIco", chp.ico ico byte
- {99, &SwWW8ImplReader::Read_FontSize}, //"sprmCHps", chp.hps hps word!
- {100, nullptr}, //"sprmCHpsInc", chp.hps byte
- {101, &SwWW8ImplReader::Read_SubSuperProp}, //"sprmCHpsPos", chp.hpsPos
- //hps byte
- {102, nullptr}, //"sprmCHpsPosAdj", chp.hpsPos
- //hps byte
- {103, &SwWW8ImplReader::Read_Majority}, //"?sprmCMajority", chp.fBold,
- //chp.fItalic, chp.fSmallCaps
- {104, &SwWW8ImplReader::Read_SubSuper}, //"sprmCIss", chp.iss iss byte
- {105, nullptr}, //"sprmCHpsNew50", chp.hps hps
- //variable width, length
- //always recorded as 2
- {106, nullptr}, //"sprmCHpsInc1", chp.hps
- //complex variable width,
- //length always recorded as 2
- {107, &SwWW8ImplReader::Read_FontKern}, //"sprmCHpsKern", chp.hpsKern
- //hps short
- {108, &SwWW8ImplReader::Read_Majority}, //"sprmCMajority50", chp.fBold,
- //chp.fItalic, chp.fSmallCaps,
- // chp.fVanish, ...
- {109, nullptr}, //"sprmCHpsMul", chp.hps
- //percentage to grow hps short
- {110, nullptr}, //"sprmCCondHyhen", chp.ysri
- //ysri short
- {111, &SwWW8ImplReader::Read_AmbiguousSPRM}, //sprmCFBoldBi or font code
- {112, &SwWW8ImplReader::Read_AmbiguousSPRM}, //sprmCFItalicBi or font code
- {113, &SwWW8ImplReader::Read_FontCode}, //sprmCFtcBi
- {114, &SwWW8ImplReader::Read_Language}, //sprmClidBi
- {115, &SwWW8ImplReader::Read_TextColor}, //sprmCIcoBi
- {116, &SwWW8ImplReader::Read_FontSize}, //sprmCHpsBi
- {117, &SwWW8ImplReader::Read_Special}, //"sprmCFSpec", chp.fSpec 1
- //or 0 bit
- {118, &SwWW8ImplReader::Read_Obj}, //"sprmCFObj", chp.fObj 1 or 0
- //bit
- {119, nullptr}, //"sprmPicBrcl", pic.brcl brcl
- //(see PIC structure
- //definition) byte
- {120, nullptr}, //"sprmPicScale", pic.mx,
- //pic.my, pic.dxaCropleft,
- {121, nullptr}, //"sprmPicBrcTop", pic.brcTop
- //BRC word
- {122, nullptr}, //"sprmPicBrcLeft",
- //pic.brcLeft BRC word
- {123, nullptr}, //"sprmPicBrcBottom",
- //pic.brcBottom BRC word
- {124, nullptr}, //"sprmPicBrcRight",
- //pic.brcRight BRC word
- {125, nullptr}, //"??125",
- {126, nullptr}, //"??126",
- {127, nullptr}, //"??127",
- {128, nullptr}, //"??128",
- {129, nullptr}, //"??129",
- {130, nullptr}, //"??130",
- {131, nullptr}, //"sprmSScnsPgn", sep.cnsPgn
- //cns byte
- {132, nullptr}, //"sprmSiHeadingPgn",
- //sep.iHeadingPgn heading
- //number level byte
- {133, &SwWW8ImplReader::Read_OLST}, //"sprmSOlstAnm", sep.olstAnm
- //OLST variable length
- {134, nullptr}, //"??135",
- {135, nullptr}, //"??135",
- {136, nullptr}, //"sprmSDxaColWidth",
- //sep.rgdxaColWidthSpacing
- //complex 3 bytes
- {137, nullptr}, //"sprmSDxaColSpacing",
- //sep.rgdxaColWidthSpacing
- //complex 3 bytes
- {138, nullptr}, //"sprmSFEvenlySpaced",
- //sep.fEvenlySpaced 1 or 0 byte
- {139, nullptr}, //"sprmSFProtected",
- //sep.fUnlocked 1 or 0 byte
- {140, nullptr}, //"sprmSDmBinFirst",
- //sep.dmBinFirst word
- {141, nullptr}, //"sprmSDmBinOther",
- //sep.dmBinOther word
- {142, nullptr}, //"sprmSBkc", sep.bkc bkc
- //byte BreakCode
- {143, nullptr}, //"sprmSFTitlePage",
- //sep.fTitlePage 0 or 1 byte
- {144, nullptr}, //"sprmSCcolumns", sep.ccolM1
- //# of cols - 1 word
- {145, nullptr}, //"sprmSDxaColumns",
- //sep.dxaColumns dxa word
- {146, nullptr}, //"sprmSFAutoPgn",
- //sep.fAutoPgn obsolete byte
- {147, nullptr}, //"sprmSNfcPgn", sep.nfcPgn
- //nfc byte
- {148, nullptr}, //"sprmSDyaPgn", sep.dyaPgn
- //dya short
- {149, nullptr}, //"sprmSDxaPgn", sep.dxaPgn
- //dya short
- {150, nullptr}, //"sprmSFPgnRestart",
- //sep.fPgnRestart 0 or 1 byte
- {151, nullptr}, //"sprmSFEndnote", sep.fEndnote
- //0 or 1 byte
- {152, nullptr}, //"sprmSLnc", sep.lnc lnc byte
- {153, nullptr}, //"sprmSGprfIhdt", sep.grpfIhdt
- //grpfihdt byte
- {154, nullptr}, //"sprmSNLnnMod", sep.nLnnMod
- //non-neg int. word
- {155, nullptr}, //"sprmSDxaLnn", sep.dxaLnn
- //dxa word
- {156, nullptr}, //"sprmSDyaHdrTop",
- //sep.dyaHdrTop dya word
- {157, nullptr}, //"sprmSDyaHdrBottom",
- //sep.dyaHdrBottom dya word
- {158, nullptr}, //"sprmSLBetween",
- //sep.fLBetween 0 or 1 byte
- {159, nullptr}, //"sprmSVjc", sep.vjc vjc byte
- {160, nullptr}, //"sprmSLnnMin", sep.lnnMin
- //lnn word
- {161, nullptr}, //"sprmSPgnStart", sep.pgnStart
- //pgn word
- {162, nullptr}, //"sprmSBOrientation",
- //sep.dmOrientPage dm byte
- {163, nullptr}, //"?SprmSBCustomize 163", ?
- {164, nullptr}, //"sprmSXaPage", sep.xaPage xa
- //word
- {165, nullptr}, //"sprmSYaPage", sep.yaPage ya
- //word
- {166, nullptr}, //"sprmSDxaLeft", sep.dxaLeft
- //dxa word
- {167, nullptr}, //"sprmSDxaRight", sep.dxaRight
- //dxa word
- {168, nullptr}, //"sprmSDyaTop", sep.dyaTop //dya word
- {169, nullptr}, //"sprmSDyaBottom",
- //sep.dyaBottom dya word
- {170, nullptr}, //"sprmSDzaGutter",
- //sep.dzaGutter dza word
- {171, nullptr}, //"sprmSDMPaperReq",
- //sep.dmPaperReq dm word
- {172, nullptr}, //"??172",
- {173, nullptr}, //"??173",
- {174, nullptr}, //"??174",
- {175, nullptr}, //"??175",
- {176, nullptr}, //"??176",
- {177, nullptr}, //"??177",
- {178, nullptr}, //"??178",
- {179, nullptr}, //"??179",
- {180, nullptr}, //"??180",
- {181, nullptr}, //"??181",
- {182, nullptr}, //"sprmTJc", tap.jc jc word
- //(low order byte is
- //significant)
- {183, nullptr}, //"sprmTDxaLeft",
- //tap.rgdxaCenter dxa word
- {184, nullptr}, //"sprmTDxaGapHalf",
- //tap.dxaGapHalf,
- //tap.rgdxaCenter dxa word
- {185, nullptr}, //"sprmTFCantSplit"
- //tap.fCantSplit 1 or 0 byte
- {186, nullptr}, //"sprmTTableHeader",
- //tap.fTableHeader 1 or 0 byte
- {187, nullptr}, //"sprmTTableBorders",
- //tap.rgbrcTable complex
- //12 bytes
- {188, nullptr}, //"sprmTDefTable10",
- //tap.rgdxaCenter, tap.rgtc
- //complex variable length
- {189, nullptr}, //"sprmTDyaRowHeight",
- //tap.dyaRowHeight dya word
- {190, nullptr}, //"?sprmTDefTable", tap.rgtc
- //complex
- {191, nullptr}, //"?sprmTDefTableShd",
- //tap.rgshd complex
- {192, nullptr}, //"sprmTTlp", tap.tlp TLP
- //4 bytes
- {193, nullptr}, //"sprmTSetBrc",
- //tap.rgtc[].rgbrc complex
- //5 bytes
- {194, nullptr}, //"sprmTInsert",
- //tap.rgdxaCenter,
- //tap.rgtc complex 4 bytes
- {195, nullptr}, //"sprmTDelete",
- //tap.rgdxaCenter,
- //tap.rgtc complex word
- {196, nullptr}, //"sprmTDxaCol",
- //tap.rgdxaCenter complex
- //4 bytes
- {197, nullptr}, //"sprmTMerge",
- //tap.fFirstMerged,
- //tap.fMerged complex word
- {198, nullptr}, //"sprmTSplit",
- //tap.fFirstMerged,
- //tap.fMerged complex word
- {199, nullptr}, //"sprmTSetBrc10",
- //tap.rgtc[].rgbrc complex
- //5 bytes
- {200, nullptr}, //"sprmTSetShd", tap.rgshd
- //complex 4 bytes
- {207, nullptr}, //dunno
+ {0, nullptr}, // "0" default resp. error
+ // will be skipped!
+ {NS_sprm::v6::sprmPIstd, &SwWW8ImplReader::Read_StyleCode}, // pap.istd (style code)
+ {NS_sprm::v6::sprmPIstdPermute, nullptr}, // pap.istd permutation
+ {NS_sprm::v6::sprmPIncLv1, nullptr}, // pap.istddifference
+ {NS_sprm::v6::sprmPJc, &SwWW8ImplReader::Read_Justify}, // pap.jc (justification)
+ {NS_sprm::v6::sprmPFSideBySide, nullptr}, // pap.fSideBySide
+ {NS_sprm::v6::sprmPFKeep, &SwWW8ImplReader::Read_KeepLines}, // pap.fKeep
+ {NS_sprm::v6::sprmPFKeepFollow, &SwWW8ImplReader::Read_KeepParas}, // pap.fKeepFollow
+ {NS_sprm::v6::sprmPPageBreakBefore, &SwWW8ImplReader::Read_BreakBefore}, // pap.fPageBreakBefore
+ {NS_sprm::v6::sprmPBrcl, nullptr}, // pap.brcl
+ {NS_sprm::v6::sprmPBrcp, nullptr}, // pap.brcp
+ {NS_sprm::v6::sprmPAnld, &SwWW8ImplReader::Read_ANLevelDesc}, // pap.anld (ANLD structure)
+ {NS_sprm::v6::sprmPNLvlAnm, &SwWW8ImplReader::Read_ANLevelNo}, // pap.nLvlAnm nn
+ {NS_sprm::v6::sprmPFNoLineNumb, &SwWW8ImplReader::Read_NoLineNumb}, // ap.fNoLnn
+ {NS_sprm::v6::sprmPChgTabsPapx, &SwWW8ImplReader::Read_Tab}, // pap.itbdMac, ...
+ {NS_sprm::v6::sprmPDxaRight, &SwWW8ImplReader::Read_LR}, // pap.dxaRight
+ {NS_sprm::v6::sprmPDxaLeft, &SwWW8ImplReader::Read_LR}, // pap.dxaLeft
+ {NS_sprm::v6::sprmPNest, nullptr}, // pap.dxaLeft
+ {NS_sprm::v6::sprmPDxaLeft1, &SwWW8ImplReader::Read_LR}, // pap.dxaLeft1
+ {NS_sprm::v6::sprmPDyaLine, &SwWW8ImplReader::Read_LineSpace}, // pap.lspd an LSPD
+ {NS_sprm::v6::sprmPDyaBefore, &SwWW8ImplReader::Read_UL}, // pap.dyaBefore
+ {NS_sprm::v6::sprmPDyaAfter, &SwWW8ImplReader::Read_UL}, // pap.dyaAfter
+ {NS_sprm::v6::sprmPChgTabs, nullptr}, // pap.itbdMac, pap.rgdxaTab, ...
+ {NS_sprm::v6::sprmPFInTable, nullptr}, // pap.fInTable
+ {NS_sprm::v6::sprmPTtp, &SwWW8ImplReader::Read_TabRowEnd}, // pap.fTtp
+ {NS_sprm::v6::sprmPDxaAbs, nullptr}, // pap.dxaAbs
+ {NS_sprm::v6::sprmPDyaAbs, nullptr}, // pap.dyaAbs
+ {NS_sprm::v6::sprmPDxaWidth, nullptr}, // pap.dxaWidth
+ {NS_sprm::v6::sprmPPc, &SwWW8ImplReader::Read_ApoPPC}, // pap.pcHorz, pap.pcVert
+ {NS_sprm::v6::sprmPBrcTop10, nullptr}, // pap.brcTop BRC10
+ {NS_sprm::v6::sprmPBrcLeft10, nullptr}, // pap.brcLeft BRC10
+ {NS_sprm::v6::sprmPBrcBottom10, nullptr}, // pap.brcBottom BRC10
+ {NS_sprm::v6::sprmPBrcRight10, nullptr}, // pap.brcRight BRC10
+ {NS_sprm::v6::sprmPBrcBetween10, nullptr}, // pap.brcBetween BRC10
+ {NS_sprm::v6::sprmPBrcBar10, nullptr}, // pap.brcBar BRC10
+ {NS_sprm::v6::sprmPFromText10, nullptr}, // pap.dxaFromText dxa
+ {NS_sprm::v6::sprmPWr, nullptr}, // pap.wr wr
+ {NS_sprm::v6::sprmPBrcTop, &SwWW8ImplReader::Read_Border}, // pap.brcTop BRC
+ {NS_sprm::v6::sprmPBrcLeft, &SwWW8ImplReader::Read_Border}, // pap.brcLeft BRC
+ {NS_sprm::v6::sprmPBrcBottom, &SwWW8ImplReader::Read_Border}, // pap.brcBottom BRC
+ {NS_sprm::v6::sprmPBrcRight, &SwWW8ImplReader::Read_Border}, // pap.brcRight BRC
+ {NS_sprm::v6::sprmPBrcBetween, &SwWW8ImplReader::Read_Border}, // pap.brcBetween BRC
+ {NS_sprm::v6::sprmPBrcBar, nullptr}, // pap.brcBar BRC word
+ {NS_sprm::v6::sprmPFNoAutoHyph, &SwWW8ImplReader::Read_Hyphenation}, // pap.fNoAutoHyph
+ {NS_sprm::v6::sprmPWHeightAbs, nullptr}, // pap.wHeightAbs w
+ {NS_sprm::v6::sprmPDcs, nullptr}, // pap.dcs DCS
+ {NS_sprm::v6::sprmPShd, &SwWW8ImplReader::Read_Shade}, // pap.shd SHD
+ {NS_sprm::v6::sprmPDyaFromText, nullptr}, // pap.dyaFromText dya
+ {NS_sprm::v6::sprmPDxaFromText, nullptr}, // pap.dxaFromText dxa
+ {NS_sprm::v6::sprmPFLocked, nullptr}, // pap.fLocked 0 or 1 byte
+ {NS_sprm::v6::sprmPFWidowControl, &SwWW8ImplReader::Read_WidowControl}, // pap.fWidowControl 0 or 1 byte
+ {NS_sprm::v6::sprmPRuler, nullptr},
+ {53, nullptr}, //"??53",
+ {54, nullptr}, //"??54",
+ {55, nullptr}, //"??55",
+ {56, nullptr}, //"??56",
+ {57, nullptr}, //"??57",
+ {58, nullptr}, //"??58",
+ {59, nullptr}, //"??59",
+ {60, nullptr}, //"??60",
+ {61, nullptr}, //"??61",
+ {62, nullptr}, //"??62",
+ {63, nullptr}, //"??63",
+ {64, &SwWW8ImplReader::Read_ParaBiDi}, //"rtl bidi ?
+ {NS_sprm::v6::sprmCFStrikeRM, &SwWW8ImplReader::Read_CFRMarkDel}, // chp.fRMarkDel 1 or 0 bit
+ {NS_sprm::v6::sprmCFRMark, &SwWW8ImplReader::Read_CFRMark}, // chp.fRMark 1 or 0 bit
+ {NS_sprm::v6::sprmCFFldVanish, &SwWW8ImplReader::Read_FieldVanish}, // chp.fFieldVanish 1 or 0 bit
+ {NS_sprm::v6::sprmCPicLocation, &SwWW8ImplReader::Read_PicLoc}, // chp.fcPic and chp.fSpec
+ {NS_sprm::v6::sprmCIbstRMark, nullptr}, // chp.ibstRMark index into sttbRMark
+ {NS_sprm::v6::sprmCDttmRMark, nullptr}, // chp.dttm DTTM long
+ {NS_sprm::v6::sprmCFData, nullptr}, // chp.fData 1 or 0 bit
+ {NS_sprm::v6::sprmCRMReason, nullptr}, // chp.idslRMReason an index to a table
+ {NS_sprm::v6::sprmCChse, &SwWW8ImplReader::Read_CharSet}, // chp.fChsDiff and chp.chse 3 bytes
+ {NS_sprm::v6::sprmCSymbol, &SwWW8ImplReader::Read_Symbol}, // chp.fSpec, chp.chSym and chp.ftcSym
+ {NS_sprm::v6::sprmCFOle2, &SwWW8ImplReader::Read_Obj}, // chp.fOle2 1 or 0 bit
+ {76, nullptr}, //"??76",
+ {77, nullptr}, //"??77",
+ {78, nullptr}, //"??78",
+ {79, nullptr}, //"??79",
+ {NS_sprm::v6::sprmCIstd, &SwWW8ImplReader::Read_CColl}, // chp.istd istd, see stylesheet definition; short
+ {NS_sprm::v6::sprmCIstdPermute, nullptr}, // chp.istd permutation vector
+ {NS_sprm::v6::sprmCDefault, nullptr}, // whole CHP none variable length
+ {NS_sprm::v6::sprmCPlain, nullptr}, // whole CHP none 0
+ {84, nullptr}, //"??84",
+ {NS_sprm::v6::sprmCFBold, &SwWW8ImplReader::Read_BoldUsw}, // chp.fBold 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFItalic, &SwWW8ImplReader::Read_BoldUsw}, // chp.fItalic 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFStrike, &SwWW8ImplReader::Read_BoldUsw}, // chp.fStrike 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFOutline, &SwWW8ImplReader::Read_BoldUsw}, // chp.fOutline 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFShadow, &SwWW8ImplReader::Read_BoldUsw}, // chp.fShadow 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFSmallCaps, &SwWW8ImplReader::Read_BoldUsw}, // chp.fSmallCaps 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFCaps, &SwWW8ImplReader::Read_BoldUsw}, // chp.fCaps 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFVanish, &SwWW8ImplReader::Read_BoldUsw}, // chp.fVanish 0,1, 128, or 129 byte
+ {NS_sprm::v6::sprmCFtc, &SwWW8ImplReader::Read_FontCode}, // chp.ftc ftc word
+ {NS_sprm::v6::sprmCKul, &SwWW8ImplReader::Read_Underline}, // chp.kul kul byte
+ {NS_sprm::v6::sprmCSizePos, nullptr}, // chp.hps, chp.hpsPos 3 bytes
+ {NS_sprm::v6::sprmCDxaSpace, &SwWW8ImplReader::Read_Kern}, // chp.dxaSpace dxa word
+ {NS_sprm::v6::sprmCLid, &SwWW8ImplReader::Read_Language}, // chp.lid LID word
+ {NS_sprm::v6::sprmCIco, &SwWW8ImplReader::Read_TextColor}, // chp.ico ico byte
+ {NS_sprm::v6::sprmCHps, &SwWW8ImplReader::Read_FontSize}, // chp.hps hps word!
+ {NS_sprm::v6::sprmCHpsInc, nullptr}, // chp.hps byte
+ {NS_sprm::v6::sprmCHpsPos, &SwWW8ImplReader::Read_SubSuperProp}, // chp.hpsPos hps byte
+ {NS_sprm::v6::sprmCHpsPosAdj, nullptr}, // chp.hpsPos hps byte
+ {NS_sprm::v6::sprmCMajority, &SwWW8ImplReader::Read_Majority}, // chp.fBold, chp.fItalic, chp.fSmallCaps
+ {NS_sprm::v6::sprmCIss, &SwWW8ImplReader::Read_SubSuper}, // chp.iss iss byte
+ {NS_sprm::v6::sprmCHpsNew50, nullptr}, // chp.hps hps variable width, length always recorded as 2
+ {NS_sprm::v6::sprmCHpsInc1, nullptr}, // chp.hps complex variable width, length always recorded as 2
+ {NS_sprm::v6::sprmCHpsKern, &SwWW8ImplReader::Read_FontKern}, // chp.hpsKern hps short
+ {NS_sprm::v6::sprmCMajority50, &SwWW8ImplReader::Read_Majority}, // chp.fBold, chp.fItalic, chp.fSmallCaps, chp.fVanish, ...
+ {NS_sprm::v6::sprmCHpsMul, nullptr}, // chp.hps percentage to grow hps short
+ {NS_sprm::v6::sprmCCondHyhen, nullptr}, // chp.ysri ysri short
+ {111, &SwWW8ImplReader::Read_AmbiguousSPRM},//sprmCFBoldBi or font code
+ {112, &SwWW8ImplReader::Read_AmbiguousSPRM},//sprmCFItalicBi or font code
+ {113, &SwWW8ImplReader::Read_FontCode}, //sprmCFtcBi
+ {114, &SwWW8ImplReader::Read_Language}, //sprmClidBi
+ {115, &SwWW8ImplReader::Read_TextColor}, //sprmCIcoBi
+ {116, &SwWW8ImplReader::Read_FontSize}, //sprmCHpsBi
+ {NS_sprm::v6::sprmCFSpec, &SwWW8ImplReader::Read_Special}, // chp.fSpec 1 or 0 bit
+ {NS_sprm::v6::sprmCFObj, &SwWW8ImplReader::Read_Obj}, // chp.fObj 1 or 0 bit
+ {NS_sprm::v6::sprmPicBrcl, nullptr}, // pic.brcl brcl (see PIC structure definition) byte
+ {NS_sprm::v6::sprmPicScale, nullptr}, // pic.mx, pic.my, pic.dxaCropleft,
+ {NS_sprm::v6::sprmPicBrcTop, nullptr}, // pic.brcTop BRC word
+ {NS_sprm::v6::sprmPicBrcLeft, nullptr}, // pic.brcLeft BRC word
+ {NS_sprm::v6::sprmPicBrcBottom, nullptr}, // pic.brcBottom BRC word
+ {NS_sprm::v6::sprmPicBrcRight, nullptr}, // pic.brcRight BRC word
+ {125, nullptr}, //"??125",
+ {126, nullptr}, //"??126",
+ {127, nullptr}, //"??127",
+ {128, nullptr}, //"??128",
+ {129, nullptr}, //"??129",
+ {130, nullptr}, //"??130",
+ {NS_sprm::v6::sprmSScnsPgn, nullptr}, // sep.cnsPgn cns byte
+ {NS_sprm::v6::sprmSiHeadingPgn, nullptr}, // sep.iHeadingPgn heading number level byte
+ {NS_sprm::v6::sprmSOlstAnm, &SwWW8ImplReader::Read_OLST}, // sep.olstAnm OLST variable length
+ {134, nullptr}, //"??135",
+ {135, nullptr}, //"??135",
+ {NS_sprm::v6::sprmSDxaColWidth, nullptr}, // sep.rgdxaColWidthSpacing complex 3 bytes
+ {NS_sprm::v6::sprmSDxaColSpacing, nullptr}, // sep.rgdxaColWidthSpacing complex 3 bytes
+ {NS_sprm::v6::sprmSFEvenlySpaced, nullptr}, // sep.fEvenlySpaced 1 or 0 byte
+ {NS_sprm::v6::sprmSFProtected, nullptr}, // sep.fUnlocked 1 or 0 byte
+ {NS_sprm::v6::sprmSDmBinFirst, nullptr}, // sep.dmBinFirst word
+ {NS_sprm::v6::sprmSDmBinOther, nullptr}, // sep.dmBinOther word
+ {NS_sprm::v6::sprmSBkc, nullptr}, // sep.bkc bkc byte BreakCode
+ {NS_sprm::v6::sprmSFTitlePage, nullptr}, // sep.fTitlePage 0 or 1 byte
+ {NS_sprm::v6::sprmSCcolumns, nullptr}, // sep.ccolM1 # of cols - 1 word
+ {NS_sprm::v6::sprmSDxaColumns, nullptr}, // sep.dxaColumns dxa word
+ {NS_sprm::v6::sprmSFAutoPgn, nullptr}, // sep.fAutoPgn obsolete byte
+ {NS_sprm::v6::sprmSNfcPgn, nullptr}, // sep.nfcPgn nfc byte
+ {NS_sprm::v6::sprmSDyaPgn, nullptr}, // sep.dyaPgn dya short
+ {NS_sprm::v6::sprmSDxaPgn, nullptr}, // sep.dxaPgn dya short
+ {NS_sprm::v6::sprmSFPgnRestart, nullptr}, // sep.fPgnRestart 0 or 1 byte
+ {NS_sprm::v6::sprmSFEndnote, nullptr}, // sep.fEndnote 0 or 1 byte
+ {NS_sprm::v6::sprmSLnc, nullptr}, // sep.lnc lnc byte
+ {NS_sprm::v6::sprmSGprfIhdt, nullptr}, // sep.grpfIhdt grpfihdt byte
+ {NS_sprm::v6::sprmSNLnnMod, nullptr}, // sep.nLnnMod non-neg int. word
+ {NS_sprm::v6::sprmSDxaLnn, nullptr}, // sep.dxaLnn dxa word
+ {NS_sprm::v6::sprmSDyaHdrTop, nullptr}, // sep.dyaHdrTop dya word
+ {NS_sprm::v6::sprmSDyaHdrBottom, nullptr}, // sep.dyaHdrBottom dya word
+ {NS_sprm::v6::sprmSLBetween, nullptr}, // sep.fLBetween 0 or 1 byte
+ {NS_sprm::v6::sprmSVjc, nullptr}, // sep.vjc vjc byte
+ {NS_sprm::v6::sprmSLnnMin, nullptr}, // sep.lnnMin lnn word
+ {NS_sprm::v6::sprmSPgnStart, nullptr}, // sep.pgnStart pgn word
+ {NS_sprm::v6::sprmSBOrientation, nullptr}, // sep.dmOrientPage dm byte
+ {NS_sprm::v6::sprmSBCustomize, nullptr}, // ?
+ {NS_sprm::v6::sprmSXaPage, nullptr}, // sep.xaPage xa word
+ {NS_sprm::v6::sprmSYaPage, nullptr}, // sep.yaPage ya word
+ {NS_sprm::v6::sprmSDxaLeft, nullptr}, // sep.dxaLeft dxa word
+ {NS_sprm::v6::sprmSDxaRight, nullptr}, // sep.dxaRight dxa word
+ {NS_sprm::v6::sprmSDyaTop, nullptr}, // sep.dyaTop dya word
+ {NS_sprm::v6::sprmSDyaBottom, nullptr}, // sep.dyaBottom dya word
+ {NS_sprm::v6::sprmSDzaGutter, nullptr}, // sep.dzaGutter dza word
+ {NS_sprm::v6::sprmSDMPaperReq, nullptr}, // sep.dmPaperReq dm word
+ {172, nullptr}, //"??172",
+ {173, nullptr}, //"??173",
+ {174, nullptr}, //"??174",
+ {175, nullptr}, //"??175",
+ {176, nullptr}, //"??176",
+ {177, nullptr}, //"??177",
+ {178, nullptr}, //"??178",
+ {179, nullptr}, //"??179",
+ {180, nullptr}, //"??180",
+ {181, nullptr}, //"??181",
+ {NS_sprm::v6::sprmTJc, nullptr}, // tap.jc jc word (low order byte is significant)
+ {NS_sprm::v6::sprmTDxaLeft, nullptr}, // tap.rgdxaCenter dxa word
+ {NS_sprm::v6::sprmTDxaGapHalf, nullptr}, // tap.dxaGapHalf, tap.rgdxaCenter dxa word
+ {NS_sprm::v6::sprmTFCantSplit, nullptr}, // tap.fCantSplit 1 or 0 byte
+ {NS_sprm::v6::sprmTTableHeader, nullptr}, // tap.fTableHeader 1 or 0 byte
+ {NS_sprm::v6::sprmTTableBorders, nullptr}, // tap.rgbrcTable complex 12 bytes
+ {NS_sprm::v6::sprmTDefTable10, nullptr}, // tap.rgdxaCenter, tap.rgtc complex variable length
+ {NS_sprm::v6::sprmTDyaRowHeight, nullptr}, // tap.dyaRowHeight dya word
+ {NS_sprm::v6::sprmTDefTable, nullptr}, // tap.rgtc complex
+ {NS_sprm::v6::sprmTDefTableShd, nullptr}, // tap.rgshd complex
+ {NS_sprm::v6::sprmTTlp, nullptr}, // tap.tlp TLP 4 bytes
+ {NS_sprm::v6::sprmTSetBrc, nullptr}, // tap.rgtc[].rgbrc complex 5 bytes
+ {NS_sprm::v6::sprmTInsert, nullptr}, // tap.rgdxaCenter, tap.rgtc complex 4 bytes
+ {NS_sprm::v6::sprmTDelete, nullptr}, // tap.rgdxaCenter, tap.rgtc complex word
+ {NS_sprm::v6::sprmTDxaCol, nullptr}, // tap.rgdxaCenter complex 4 bytes
+ {NS_sprm::v6::sprmTMerge, nullptr}, // tap.fFirstMerged, tap.fMerged complex word
+ {NS_sprm::v6::sprmTSplit, nullptr}, // tap.fFirstMerged, tap.fMerged complex word
+ {NS_sprm::v6::sprmTSetBrc10, nullptr}, // tap.rgtc[].rgbrc complex 5 bytes
+ {NS_sprm::v6::sprmTSetShd, nullptr}, // tap.rgshd complex 4 bytes
+ {207, nullptr}, //dunno
};
static wwSprmDispatcher aSprmSrch(aSprms, SAL_N_ELEMENTS(aSprms));
@@ -5696,588 +5564,365 @@ const wwSprmDispatcher *GetWW8SprmDispatcher()
{
static SprmReadInfo aSprms[] =
{
- {0, nullptr}, // "0" default resp. error
-
- {0x4600, &SwWW8ImplReader::Read_StyleCode}, //"sprmPIstd" pap.istd;istd
- //(style code);short;
- {0xC601, nullptr}, //"sprmPIstdPermute" pap.istd;
- //permutation vector;
- //variable length;
- {0x2602, nullptr}, //"sprmPIncLvl" pap.istd,
- //pap.lvl;difference between
- //istd of base PAP and istd of
- //PAP to be produced; byte;
- {0x2403, &SwWW8ImplReader::Read_Justify}, //"sprmPJc" pap.jc;jc
- //(justification);byte;
- {NS_sprm::LN_PFSideBySide, nullptr}, //"sprmPFSideBySide"
- //pap.fSideBySide;0 or 1;byte;
- {0x2405, &SwWW8ImplReader::Read_KeepLines}, //"sprmPFKeep" pap.fKeep;0 or
- //1;byte;
- {0x2406, &SwWW8ImplReader::Read_KeepParas}, //"sprmPFKeepFollow"
- //pap.fKeepFollow;0 or 1;byte;
- {0x2407, &SwWW8ImplReader::Read_BreakBefore},//"sprmPFPageBreakBefore"
- //pap.fPageBreakBefore;0 or 1;
- //byte;
- {NS_sprm::LN_PBrcl, nullptr}, //"sprmPBrcl" pap.brcl;brcl;
- //byte;
- {NS_sprm::LN_PBrcp, nullptr}, //"sprmPBrcp" pap.brcp;brcp;
- //byte;
- {0x260A, &SwWW8ImplReader::Read_ListLevel}, //"sprmPIlvl" pap.ilvl;ilvl;
- //byte;
- {0x460B, &SwWW8ImplReader::Read_LFOPosition},//"sprmPIlfo" pap.ilfo;ilfo
- //(list index) ;short;
- {0x240C, &SwWW8ImplReader::Read_NoLineNumb}, //"sprmPFNoLineNumb"
- //pap.fNoLnn;0 or 1;byte;
- {0xC60D, &SwWW8ImplReader::Read_Tab}, //"sprmPChgTabsPapx"
- //pap.itbdMac, pap.rgdxaTab,
- //pap.rgtbd;complex;variable
- //length
- {0x840E, &SwWW8ImplReader::Read_LR}, //Word 97 version of "sprmPDxaRight" pap.dxaRight;
- //dxa;word;
- {0x840F, &SwWW8ImplReader::Read_LR}, //Apparently Word 97 version of "sprmPDxaLeft" pap.dxaLeft;
- //dxa;word;
- {0x4610, nullptr}, //"sprmPNest" pap.dxaLeft;
- //dxa;word;
- {0x8411, &SwWW8ImplReader::Read_LR}, //Word 97 version of "sprmPDxaLeft1" pap.dxaLeft1;
- //dxa;word;
- {0x6412, &SwWW8ImplReader::Read_LineSpace}, //"sprmPDyaLine" pap.lspd;
- //an LSPD, a long word
- //structure consisting of a
- //short of dyaLine followed by
- //a short of fMultLinespace;
- //long;
- {0xA413, &SwWW8ImplReader::Read_UL}, //"sprmPDyaBefore"
- //pap.dyaBefore;dya;word;
- {0xA414, &SwWW8ImplReader::Read_UL}, //"sprmPDyaAfter" pap.dyaAfter;
- //dya;word;
- {0xC615, nullptr}, //"sprmPChgTabs" pap.itbdMac,
- //pap.rgdxaTab, pap.rgtbd;
- //complex;variable length;
- {0x2416, nullptr}, //"sprmPFInTable" pap.fInTable;
- //0 or 1;byte;
- {0x2417, &SwWW8ImplReader::Read_TabRowEnd}, //"sprmPFTtp" pap.fTtp;0 or 1;
- //byte;
- {0x8418, nullptr}, //"sprmPDxaAbs" pap.dxaAbs;dxa;
- //word;
- {0x8419, nullptr}, //"sprmPDyaAbs" pap.dyaAbs;dya;
- //word;
- {0x841A, nullptr}, //"sprmPDxaWidth" pap.dxaWidth;
- //dxa;word;
- {0x261B, &SwWW8ImplReader::Read_ApoPPC}, //"sprmPPc" pap.pcHorz,
- //pap.pcVert;complex;byte;
- {NS_sprm::LN_PBrcTop10, nullptr}, //"sprmPBrcTop10" pap.brcTop;
- //BRC10;word;
- {NS_sprm::LN_PBrcLeft10, nullptr}, //"sprmPBrcLeft10" pap.brcLeft;
- //BRC10;word;
- {NS_sprm::LN_PBrcBottom10, nullptr}, //"sprmPBrcBottom10"
- //pap.brcBottom;BRC10;word;
- {NS_sprm::LN_PBrcRight10, nullptr}, //"sprmPBrcRight10"
- //pap.brcRight;BRC10;word;
- {NS_sprm::LN_PBrcBetween10, nullptr}, //"sprmPBrcBetween10"
- //pap.brcBetween;BRC10;word;
- {NS_sprm::LN_PBrcBar10, nullptr}, //"sprmPBrcBar10" pap.brcBar;
- //BRC10;word;
- {0x4622, nullptr}, //"sprmPDxaFromText10"
- //pap.dxaFromText;dxa;word;
- {0x2423, nullptr}, //"sprmPWr" pap.wr;wr;byte;
- {0x6424, &SwWW8ImplReader::Read_Border}, //"sprmPBrcTop80" pap.brcTop;BRC;
- //long;
- {0x6425, &SwWW8ImplReader::Read_Border}, //"sprmPBrcLeft80" pap.brcLeft;
- //BRC;long;
- {0x6426, &SwWW8ImplReader::Read_Border}, //"sprmPBrcBottom80"
- //pap.brcBottom;BRC;long;
- {0x6427, &SwWW8ImplReader::Read_Border}, //"sprmPBrcRight80" pap.brcRight;
- //BRC;long;
- {0x6428, &SwWW8ImplReader::Read_Border}, //"sprmPBrcBetween80"
- //pap.brcBetween;BRC;long;
- {0x6629, nullptr}, //"sprmPBrcBar" pap.brcBar;BRC;
- //long;
- {0x242A, &SwWW8ImplReader::Read_Hyphenation},//"sprmPFNoAutoHyph"
- //pap.fNoAutoHyph;0 or 1;byte;
- {0x442B, nullptr}, //"sprmPWHeightAbs"
- //pap.wHeightAbs;w;word;
- {0x442C, nullptr}, //"sprmPDcs" pap.dcs;DCS;short;
- {0x442D, &SwWW8ImplReader::Read_Shade}, //"sprmPShd" pap.shd;SHD;word;
- {0x842E, nullptr}, //"sprmPDyaFromText"
- //pap.dyaFromText;dya;word;
- {0x842F, nullptr}, //"sprmPDxaFromText"
- //pap.dxaFromText;dxa;word;
- {0x2430, nullptr}, //"sprmPFLocked" pap.fLocked;
- //0 or 1;byte;
- {0x2431, &SwWW8ImplReader::Read_WidowControl},//"sprmPFWidowControl"
- //pap.fWidowControl;0 or 1;byte
- {NS_sprm::LN_PRuler, nullptr}, //"sprmPRuler" variable length;
- {0x2433, &SwWW8ImplReader::Read_BoolItem}, //"sprmPFKinsoku" pap.fKinsoku;
- //0 or 1;byte;
- {0x2434, nullptr}, //"sprmPFWordWrap"
- //pap.fWordWrap;0 or 1;byte;
- {0x2435, &SwWW8ImplReader::Read_BoolItem}, //"sprmPFOverflowPunct"
- //pap.fOverflowPunct; 0 or 1;
- //byte;
- {0x2436, nullptr}, //"sprmPFTopLinePunct"
- //pap.fTopLinePunct;0 or 1;byte
- {0x2437, &SwWW8ImplReader::Read_BoolItem}, //"sprmPFAutoSpaceDE"
- //pap.fAutoSpaceDE;0 or 1;byte;
- {0x2438, nullptr}, //"sprmPFAutoSpaceDN"
- //pap.fAutoSpaceDN;0 or 1;byte;
- {NS_sprm::sprmPWAlignFont, &SwWW8ImplReader::Read_AlignFont}, //"sprmPWAlignFont"
- //pap.wAlignFont;iFa; word;
- {0x443A, nullptr}, //"sprmPFrameTextFlow"
- //pap.fVertical pap.fBackward
- //pap.fRotateFont;complex; word
- {NS_sprm::LN_PISnapBaseLine, nullptr}, //"sprmPISnapBaseLine" obsolete
- //not applicable in Word97
- //and later versions;;byte;
- {NS_sprm::LN_PAnld, &SwWW8ImplReader::Read_ANLevelDesc},//"sprmPAnld" pap.anld;;
- //variable length;
- {NS_sprm::LN_PPropRMark, nullptr}, //"sprmPPropRMark"
- //pap.fPropRMark;complex;
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list