1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 
28 // MARKER(update_precomp.py): autogen include statement, do not remove
29 #include "precompiled_xmloff.hxx"
30 
31 #include <xmloff/PageMasterStyleMap.hxx>
32 
33 #include <xmloff/xmlnmspe.hxx>
34 #include <xmloff/xmltoken.hxx>
35 
36 using namespace ::xmloff::token;
37 
38 #define _MAP(name,prefix,token,type,context)  { name, sizeof(name)-1, prefix, token, type, context, SvtSaveOptions::ODFVER_010 }
39 #define PLMAP(name,prefix,token,type,context) \
40 		_MAP(name,prefix,token,type|XML_TYPE_PROP_PAGE_LAYOUT,context)
41 #define HFMAP(name,prefix,token,type,context) \
42 		_MAP(name,prefix,token,type|XML_TYPE_PROP_HEADER_FOOTER,context)
43 
44 //______________________________________________________________________________
45 
46 const XMLPropertyMapEntry aXMLPageMasterStyleMap[] =
47 {
48 // page master
49 	PLMAP( "PageStyleLayout",	    	XML_NAMESPACE_STYLE,	XML_PAGE_USAGE,				    XML_PM_TYPE_PAGESTYLELAYOUT | MID_FLAG_SPECIAL_ITEM,	CTF_PM_PAGEUSAGE ),
50 	PLMAP( "Width",					XML_NAMESPACE_FO,		XML_PAGE_WIDTH,				    XML_TYPE_MEASURE,										0 ),
51 	PLMAP( "Height",					XML_NAMESPACE_FO,		XML_PAGE_HEIGHT,				XML_TYPE_MEASURE,										0 ),
52 	PLMAP( "NumberingType",			XML_NAMESPACE_STYLE,	XML_NUM_FORMAT,				    XML_PM_TYPE_NUMFORMAT | MID_FLAG_MERGE_PROPERTY,		0 ),
53 	PLMAP( "NumberingType",			XML_NAMESPACE_STYLE,	XML_NUM_LETTER_SYNC,			XML_PM_TYPE_NUMLETTERSYNC,								0 ),
54 	PLMAP( "PrinterPaperTray",		XML_NAMESPACE_STYLE,	XML_PAPER_TRAY_NAME,			XML_TYPE_STRING | MID_FLAG_PROPERTY_MAY_EXCEPT, 		0 ),
55 	PLMAP( "IsLandscape",		    	XML_NAMESPACE_STYLE,	XML_PRINT_ORIENTATION,			XML_PM_TYPE_PRINTORIENTATION,							0 ),
56 	PLMAP( "TopMargin",				XML_NAMESPACE_FO,		XML_MARGIN,				        XML_TYPE_MEASURE,										CTF_PM_MARGINALL ),
57 	PLMAP( "TopMargin",				XML_NAMESPACE_FO,		XML_MARGIN_TOP,				    XML_TYPE_MEASURE,										CTF_PM_MARGINTOP ),
58 	PLMAP( "BottomMargin",			XML_NAMESPACE_FO,		XML_MARGIN_BOTTOM,				XML_TYPE_MEASURE,										CTF_PM_MARGINBOTTOM ),
59 	PLMAP( "LeftMargin",				XML_NAMESPACE_FO,		XML_MARGIN_LEFT,				XML_TYPE_MEASURE,										CTF_PM_MARGINLEFT ),
60 	PLMAP( "RightMargin",		    	XML_NAMESPACE_FO,		XML_MARGIN_RIGHT,				XML_TYPE_MEASURE,										CTF_PM_MARGINRIGHT ),
61 	PLMAP( "TopBorder",				XML_NAMESPACE_FO,		XML_BORDER, 					XML_TYPE_BORDER,										CTF_PM_BORDERALL ),
62 	PLMAP( "TopBorder",				XML_NAMESPACE_FO,		XML_BORDER_TOP,			    	XML_TYPE_BORDER,										CTF_PM_BORDERTOP ),
63 	PLMAP( "BottomBorder",			XML_NAMESPACE_FO,		XML_BORDER_BOTTOM,				XML_TYPE_BORDER,										CTF_PM_BORDERBOTTOM ),
64 	PLMAP( "LeftBorder",				XML_NAMESPACE_FO,		XML_BORDER_LEFT,				XML_TYPE_BORDER,										CTF_PM_BORDERLEFT ),
65 	PLMAP( "RightBorder",		    	XML_NAMESPACE_FO,		XML_BORDER_RIGHT,				XML_TYPE_BORDER,										CTF_PM_BORDERRIGHT ),
66 	PLMAP( "TopBorder",				XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH,			XML_TYPE_BORDER_WIDTH,									CTF_PM_BORDERWIDTHALL ),
67 	PLMAP( "TopBorder",				XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_TOP,		XML_TYPE_BORDER_WIDTH,									CTF_PM_BORDERWIDTHTOP ),
68 	PLMAP( "BottomBorder",			XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_BOTTOM,	XML_TYPE_BORDER_WIDTH,									CTF_PM_BORDERWIDTHBOTTOM ),
69 	PLMAP( "LeftBorder",				XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_LEFT, 	XML_TYPE_BORDER_WIDTH,									CTF_PM_BORDERWIDTHLEFT ),
70 	PLMAP( "RightBorder",		    	XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_RIGHT,	XML_TYPE_BORDER_WIDTH,									CTF_PM_BORDERWIDTHRIGHT ),
71 	PLMAP( "TopBorderDistance",		XML_NAMESPACE_FO,		XML_PADDING,					XML_TYPE_MEASURE,										CTF_PM_PADDINGALL ),
72 	PLMAP( "TopBorderDistance",		XML_NAMESPACE_FO,		XML_PADDING_TOP,				XML_TYPE_MEASURE,										CTF_PM_PADDINGTOP ),
73 	PLMAP( "BottomBorderDistance",	XML_NAMESPACE_FO,		XML_PADDING_BOTTOM, 			XML_TYPE_MEASURE,										CTF_PM_PADDINGBOTTOM ),
74 	PLMAP( "LeftBorderDistance",		XML_NAMESPACE_FO,		XML_PADDING_LEFT,				XML_TYPE_MEASURE,										CTF_PM_PADDINGLEFT ),
75 	PLMAP( "RightBorderDistance", 	XML_NAMESPACE_FO,		XML_PADDING_RIGHT,				XML_TYPE_MEASURE,										CTF_PM_PADDINGRIGHT ),
76 	PLMAP( "ShadowFormat",			XML_NAMESPACE_STYLE,	XML_SHADOW,					    XML_TYPE_TEXT_SHADOW,									0 ),
77 	PLMAP( "BackColor",				XML_NAMESPACE_FO,		XML_BACKGROUND_COLOR,			XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY,	0 ),
78 	PLMAP( "BackTransparent",		    XML_NAMESPACE_FO,		XML_BACKGROUND_COLOR,			XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE,		0 ),
79 	PLMAP( "BackGraphicLocation",	    XML_NAMESPACE_STYLE,	XML_POSITION,					XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM,		CTF_PM_GRAPHICPOSITION ),
80 	PLMAP( "BackGraphicFilter",		XML_NAMESPACE_STYLE,	XML_FILTER_NAME,				XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM,				CTF_PM_GRAPHICFILTER ),
81 	PLMAP( "BackGraphicURL",			XML_NAMESPACE_STYLE,	XML_BACKGROUND_IMAGE,			XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM,				CTF_PM_GRAPHICURL ),
82 	PLMAP( "PrintAnnotations",		XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTANNOTATIONS | MID_FLAG_MULTI_PROPERTY,							CTF_PM_PRINT_ANNOTATIONS ),
83 	PLMAP( "PrintCharts",			    XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTCHARTS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE,	CTF_PM_PRINT_CHARTS ),
84 	PLMAP( "PrintDrawing",			XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTDRAWING | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE,	CTF_PM_PRINT_DRAWING ),
85 	PLMAP( "PrintFormulas",			XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTFORMULAS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE,	CTF_PM_PRINT_FORMULAS ),
86 	PLMAP( "PrintGrid",				XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTGRID | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE,		CTF_PM_PRINT_GRID ),
87 	PLMAP( "PrintHeaders",			XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTHEADERS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE,	CTF_PM_PRINT_HEADERS ),
88 	PLMAP( "PrintObjects",			XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTOBJECTS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE,	CTF_PM_PRINT_OBJECTS ),
89 	PLMAP( "PrintZeroValues",		    XML_NAMESPACE_STYLE,	XML_PRINT,						XML_PM_TYPE_PRINTZEROVALUES | MID_FLAG_MERGE_ATTRIBUTE,							CTF_PM_PRINT_ZEROVALUES ),
90 	PLMAP( "PrintDownFirst",			XML_NAMESPACE_STYLE,	XML_PRINT_PAGE_ORDER,			XML_PM_TYPE_PRINTPAGEORDER,								0 ),
91 	PLMAP( "FirstPageNumber",		    XML_NAMESPACE_STYLE,	XML_FIRST_PAGE_NUMBER,			XML_PM_TYPE_FIRSTPAGENUMBER,							0 ),
92 	PLMAP( "PageScale",				XML_NAMESPACE_STYLE,	XML_SCALE_TO,					XML_TYPE_PERCENT16,										CTF_PM_SCALETO ),
93 	PLMAP( "ScaleToPages",			XML_NAMESPACE_STYLE,	XML_SCALE_TO_PAGES, 			XML_TYPE_NUMBER16,										CTF_PM_SCALETOPAGES ),
94     PLMAP( "ScaleToPagesX",			XML_NAMESPACE_STYLE,	XML_SCALE_TO_X,      			XML_TYPE_NUMBER16,										CTF_PM_SCALETOX ),
95     PLMAP( "ScaleToPagesY",			XML_NAMESPACE_STYLE,	XML_SCALE_TO_Y, 	    		XML_TYPE_NUMBER16,										CTF_PM_SCALETOY ),
96 	PLMAP( "CenterHorizontally",		XML_NAMESPACE_STYLE,	XML_TABLE_CENTERING,			XML_PM_TYPE_CENTER_HORIZONTAL | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, 0 ),
97 	PLMAP( "CenterVertically",		XML_NAMESPACE_STYLE,	XML_TABLE_CENTERING,			XML_PM_TYPE_CENTER_VERTICAL | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, 0 ),
98 	PLMAP( "TextColumns",			    XML_NAMESPACE_STYLE,	XML_COLUMNS,	MID_FLAG_ELEMENT_ITEM|XML_TYPE_TEXT_COLUMNS, CTF_PM_TEXTCOLUMNS ),
99 	PLMAP( "RegisterModeActive",		XML_NAMESPACE_STYLE,	XML_REGISTER_TRUE,	XML_TYPE_BOOL, 0 ),
100 	PLMAP( "RegisterParagraphStyle",	XML_NAMESPACE_STYLE,	XML_REGISTER_TRUTH_REF_STYLE_NAME,	XML_TYPE_STYLENAME| MID_FLAG_SPECIAL_ITEM_IMPORT, CTF_PM_REGISTER_STYLE ),
101     PLMAP( "WritingMode",                 XML_NAMESPACE_STYLE,    XML_WRITING_MODE,               XML_TYPE_TEXT_WRITING_MODE, 0 ),
102 
103     PLMAP( "GridColor", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_COLOR, XML_TYPE_COLOR, 0 ),
104     PLMAP( "GridLines", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_LINES, XML_TYPE_NUMBER16, 0 ),
105     PLMAP( "GridBaseHeight", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_BASE_HEIGHT, XML_TYPE_MEASURE, 0 ),
106     PLMAP( "GridRubyHeight", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_RUBY_HEIGHT, XML_TYPE_MEASURE, 0 ),
107     PLMAP( "GridMode", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_MODE, XML_TYPE_LAYOUT_GRID_MODE, 0 ),
108     PLMAP( "RubyBelow", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_RUBY_BELOW, XML_TYPE_BOOL, 0 ),
109     PLMAP( "GridPrint", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_PRINT, XML_TYPE_BOOL, 0 ),
110     PLMAP( "GridDisplay", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_DISPLAY, XML_TYPE_BOOL, 0 ),
111 
112 	//text grid enhancement for better CJK support
113     PLMAP( "GridBaseWidth", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_BASE_WIDTH, XML_TYPE_MEASURE, CTP_PM_GRID_BASE_WIDTH ),
114     PLMAP( "GridSnapToChars", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_SNAP_TO_CHARS, XML_TYPE_BOOL, CTP_PM_GRID_SNAP_TO_CHARS ),
115   	//export as a default attribute
116     PLMAP( "StandardPageMode", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_STANDARD_MODE, XML_TYPE_BOOL|MID_FLAG_DEFAULT_ITEM_EXPORT, CTF_PM_STANDARD_MODE ),
117 
118 	PLMAP( "UserDefinedAttributes",	XML_NAMESPACE_TEXT,		XML_XMLNS,						XML_TYPE_ATTRIBUTE_CONTAINER | MID_FLAG_SPECIAL_ITEM, 0 ),
119 
120 // footnote
121 	PLMAP( "FootnoteHeight",			XML_NAMESPACE_STYLE,	XML_FOOTNOTE_MAX_HEIGHT, XML_TYPE_MEASURE, CTF_PM_FTN_HEIGTH ),
122 	PLMAP( "FootnoteLineAdjust",		XML_NAMESPACE_STYLE,	XML__EMPTY,	    XML_TYPE_TEXT_HORIZONTAL_ADJUST|MID_FLAG_SPECIAL_ITEM,	CTF_PM_FTN_LINE_ADJUST ),
123 	PLMAP( "FootnoteLineColor",		XML_NAMESPACE_STYLE,	XML__EMPTY, 	XML_TYPE_COLOR|MID_FLAG_SPECIAL_ITEM,		CTF_PM_FTN_LINE_COLOR ),
124 	PLMAP( "FootnoteLineDistance",	XML_NAMESPACE_STYLE,	XML__EMPTY, 	XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM,CTF_PM_FTN_DISTANCE ),
125 	PLMAP( "FootnoteLineRelativeWidth", XML_NAMESPACE_STYLE,	XML__EMPTY, 	XML_TYPE_PERCENT8|MID_FLAG_SPECIAL_ITEM,	CTF_PM_FTN_LINE_WIDTH ),
126 	PLMAP( "FootnoteLineTextDistance", XML_NAMESPACE_STYLE,	XML__EMPTY, 	XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM,	CTF_PM_FTN_LINE_DISTANCE ),
127 	PLMAP( "FootnoteLineWeight",		XML_NAMESPACE_STYLE,	XML_FOOTNOTE_SEP,	XML_TYPE_MEASURE16|MID_FLAG_ELEMENT_ITEM,	CTF_PM_FTN_LINE_WEIGTH ),
128 
129 // header
130 	HFMAP( "HeaderHeight",				XML_NAMESPACE_SVG,		XML_HEIGHT, 					XML_TYPE_MEASURE,		CTF_PM_HEADERHEIGHT ),
131 	HFMAP( "HeaderHeight",				XML_NAMESPACE_FO,		XML_MIN_HEIGHT, 				XML_TYPE_MEASURE,		CTF_PM_HEADERMINHEIGHT ),
132 	HFMAP( "HeaderIsDynamicHeight",		XML_NAMESPACE_STYLE,	XML__EMPTY,					    XML_TYPE_BOOL,			CTF_PM_HEADERDYNAMIC ),
133 	HFMAP( "HeaderLeftMargin",			XML_NAMESPACE_FO,		XML_MARGIN,						XML_TYPE_MEASURE,		CTF_PM_HEADERMARGINALL ),
134 	HFMAP( "HeaderLeftMargin",			XML_NAMESPACE_FO,		XML_MARGIN_LEFT,				XML_TYPE_MEASURE,		CTF_PM_HEADERMARGINLEFT ),
135 	HFMAP( "HeaderRightMargin",			XML_NAMESPACE_FO,		XML_MARGIN_RIGHT,				XML_TYPE_MEASURE,		CTF_PM_HEADERMARGINRIGHT ),
136 	HFMAP( "HeaderBodyDistance",		XML_NAMESPACE_FO,		XML_MARGIN_BOTTOM,				XML_TYPE_MEASURE,		CTF_PM_HEADERMARGINBOTTOM ),
137 	HFMAP( "HeaderTopBorder",		    	XML_NAMESPACE_FO,		XML_BORDER,					    XML_TYPE_BORDER,		CTF_PM_HEADERBORDERALL ),
138 	HFMAP( "HeaderTopBorder",		    	XML_NAMESPACE_FO,		XML_BORDER_TOP, 				XML_TYPE_BORDER,		CTF_PM_HEADERBORDERTOP ),
139 	HFMAP( "HeaderBottomBorder",			XML_NAMESPACE_FO,		XML_BORDER_BOTTOM,				XML_TYPE_BORDER,		CTF_PM_HEADERBORDERBOTTOM ),
140 	HFMAP( "HeaderLeftBorder",			XML_NAMESPACE_FO,		XML_BORDER_LEFT,				XML_TYPE_BORDER,		CTF_PM_HEADERBORDERLEFT ),
141 	HFMAP( "HeaderRightBorder",			XML_NAMESPACE_FO,		XML_BORDER_RIGHT,				XML_TYPE_BORDER,		CTF_PM_HEADERBORDERRIGHT ),
142 	HFMAP( "HeaderTopBorder",		    	XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH,			XML_TYPE_BORDER_WIDTH,	CTF_PM_HEADERBORDERWIDTHALL ),
143 	HFMAP( "HeaderTopBorder",		    	XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_TOP,		XML_TYPE_BORDER_WIDTH,	CTF_PM_HEADERBORDERWIDTHTOP ),
144 	HFMAP( "HeaderBottomBorder",			XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_BOTTOM,	XML_TYPE_BORDER_WIDTH,	CTF_PM_HEADERBORDERWIDTHBOTTOM ),
145 	HFMAP( "HeaderLeftBorder",			XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_LEFT, 	XML_TYPE_BORDER_WIDTH,	CTF_PM_HEADERBORDERWIDTHLEFT ),
146 	HFMAP( "HeaderRightBorder",			XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_RIGHT,	XML_TYPE_BORDER_WIDTH,	CTF_PM_HEADERBORDERWIDTHRIGHT ),
147 	HFMAP( "HeaderTopBorderDistance", 	XML_NAMESPACE_FO,		XML_PADDING,					XML_TYPE_MEASURE,		CTF_PM_HEADERPADDINGALL ),
148 	HFMAP( "HeaderTopBorderDistance", 	XML_NAMESPACE_FO,		XML_PADDING_TOP,				XML_TYPE_MEASURE,		CTF_PM_HEADERPADDINGTOP ),
149 	HFMAP( "HeaderBottomBorderDistance",	XML_NAMESPACE_FO,		XML_PADDING_BOTTOM, 			XML_TYPE_MEASURE,		CTF_PM_HEADERPADDINGBOTTOM ),
150 	HFMAP( "HeaderLeftBorderDistance",	XML_NAMESPACE_FO,		XML_PADDING_LEFT,				XML_TYPE_MEASURE,		CTF_PM_HEADERPADDINGLEFT ),
151 	HFMAP( "HeaderRightBorderDistance",	XML_NAMESPACE_FO,		XML_PADDING_RIGHT,				XML_TYPE_MEASURE,		CTF_PM_HEADERPADDINGRIGHT ),
152 	HFMAP( "HeaderShadowFormat",			XML_NAMESPACE_STYLE,	XML_SHADOW, 					XML_TYPE_TEXT_SHADOW,	CTF_PM_HEADERFLAG ),
153 	HFMAP( "HeaderBackColor",		    	XML_NAMESPACE_FO,		XML_BACKGROUND_COLOR,			XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY,	CTF_PM_HEADERFLAG ),
154 	HFMAP( "HeaderBackTransparent",		XML_NAMESPACE_FO,		XML_BACKGROUND_COLOR,			XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE,		CTF_PM_HEADERFLAG ),
155 	HFMAP( "HeaderBackGraphicLocation",	XML_NAMESPACE_STYLE,	XML_POSITION,					XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM,		CTF_PM_HEADERGRAPHICPOSITION ),
156 	HFMAP( "HeaderBackGraphicFilter",	    XML_NAMESPACE_STYLE,	XML_FILTER_NAME,				XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM,				CTF_PM_HEADERGRAPHICFILTER ),
157 	HFMAP( "HeaderBackGraphicURL",		XML_NAMESPACE_STYLE,	XML_BACKGROUND_IMAGE,			XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM,				CTF_PM_HEADERGRAPHICURL ),
158     HFMAP( "HeaderDynamicSpacing",        XML_NAMESPACE_STYLE,    XML_DYNAMIC_SPACING,            XML_TYPE_BOOL,          CTF_PM_HEADERFLAG ),
159 
160 // footer
161 	HFMAP( "FooterHeight",				XML_NAMESPACE_SVG,		XML_HEIGHT, 					XML_TYPE_MEASURE,		CTF_PM_FOOTERHEIGHT ),
162 	HFMAP( "FooterHeight",				XML_NAMESPACE_FO,		XML_MIN_HEIGHT, 				XML_TYPE_MEASURE,		CTF_PM_FOOTERMINHEIGHT ),
163 	HFMAP( "FooterIsDynamicHeight",		XML_NAMESPACE_STYLE,	XML__EMPTY, 					XML_TYPE_BOOL,			CTF_PM_FOOTERDYNAMIC ),
164 	HFMAP( "FooterLeftMargin",			XML_NAMESPACE_FO,		XML_MARGIN,						XML_TYPE_MEASURE,		CTF_PM_FOOTERMARGINALL ),
165 	HFMAP( "FooterLeftMargin",			XML_NAMESPACE_FO,		XML_MARGIN_LEFT,				XML_TYPE_MEASURE,		CTF_PM_FOOTERMARGINLEFT ),
166 	HFMAP( "FooterRightMargin",			XML_NAMESPACE_FO,		XML_MARGIN_RIGHT,				XML_TYPE_MEASURE,		CTF_PM_FOOTERMARGINRIGHT ),
167 	HFMAP( "FooterBodyDistance",		XML_NAMESPACE_FO,		XML_MARGIN_TOP, 				XML_TYPE_MEASURE,		CTF_PM_FOOTERMARGINTOP ),
168 	HFMAP( "FooterTopBorder",		    	XML_NAMESPACE_FO,		XML_BORDER, 					XML_TYPE_BORDER,		CTF_PM_FOOTERBORDERALL ),
169 	HFMAP( "FooterTopBorder",		    	XML_NAMESPACE_FO,		XML_BORDER_TOP, 				XML_TYPE_BORDER,		CTF_PM_FOOTERBORDERTOP ),
170 	HFMAP( "FooterBottomBorder",			XML_NAMESPACE_FO,		XML_BORDER_BOTTOM,				XML_TYPE_BORDER,		CTF_PM_FOOTERBORDERBOTTOM ),
171 	HFMAP( "FooterLeftBorder",			XML_NAMESPACE_FO,		XML_BORDER_LEFT,				XML_TYPE_BORDER,		CTF_PM_FOOTERBORDERLEFT ),
172 	HFMAP( "FooterRightBorder",			XML_NAMESPACE_FO,		XML_BORDER_RIGHT,				XML_TYPE_BORDER,		CTF_PM_FOOTERBORDERRIGHT ),
173 	HFMAP( "FooterTopBorder",		    	XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH,			XML_TYPE_BORDER_WIDTH,	CTF_PM_FOOTERBORDERWIDTHALL ),
174 	HFMAP( "FooterTopBorder",		    	XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_TOP,		XML_TYPE_BORDER_WIDTH,	CTF_PM_FOOTERBORDERWIDTHTOP ),
175 	HFMAP( "FooterBottomBorder",			XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_BOTTOM,	XML_TYPE_BORDER_WIDTH,	CTF_PM_FOOTERBORDERWIDTHBOTTOM ),
176 	HFMAP( "FooterLeftBorder",			XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_LEFT, 	XML_TYPE_BORDER_WIDTH,	CTF_PM_FOOTERBORDERWIDTHLEFT ),
177 	HFMAP( "FooterRightBorder",			XML_NAMESPACE_STYLE,	XML_BORDER_LINE_WIDTH_RIGHT,	XML_TYPE_BORDER_WIDTH,	CTF_PM_FOOTERBORDERWIDTHRIGHT ),
178 	HFMAP( "FooterTopBorderDistance", 	XML_NAMESPACE_FO,		XML_PADDING,					XML_TYPE_MEASURE,		CTF_PM_FOOTERPADDINGALL ),
179 	HFMAP( "FooterTopBorderDistance", 	XML_NAMESPACE_FO,		XML_PADDING_TOP,				XML_TYPE_MEASURE,		CTF_PM_FOOTERPADDINGTOP ),
180 	HFMAP( "FooterBottomBorderDistance",	XML_NAMESPACE_FO,		XML_PADDING_BOTTOM, 			XML_TYPE_MEASURE,		CTF_PM_FOOTERPADDINGBOTTOM ),
181 	HFMAP( "FooterLeftBorderDistance",	XML_NAMESPACE_FO,		XML_PADDING_LEFT,				XML_TYPE_MEASURE,		CTF_PM_FOOTERPADDINGLEFT ),
182 	HFMAP( "FooterRightBorderDistance",	XML_NAMESPACE_FO,		XML_PADDING_RIGHT,				XML_TYPE_MEASURE,		CTF_PM_FOOTERPADDINGRIGHT ),
183 	HFMAP( "FooterShadowFormat",			XML_NAMESPACE_STYLE,	XML_SHADOW, 					XML_TYPE_TEXT_SHADOW,	CTF_PM_FOOTERFLAG ),
184 	HFMAP( "FooterBackColor",		    	XML_NAMESPACE_FO,		XML_BACKGROUND_COLOR,			XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY,	CTF_PM_FOOTERFLAG ),
185 	HFMAP( "FooterBackTransparent",		XML_NAMESPACE_FO,		XML_BACKGROUND_COLOR,			XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE,		CTF_PM_FOOTERFLAG ),
186 	HFMAP( "FooterBackGraphicLocation",	XML_NAMESPACE_STYLE,	XML_POSITION,					XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM,		CTF_PM_FOOTERGRAPHICPOSITION ),
187 	HFMAP( "FooterBackGraphicFilter", 	XML_NAMESPACE_STYLE,	XML_FILTER_NAME,				XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM,				CTF_PM_FOOTERGRAPHICFILTER ),
188 	HFMAP( "FooterBackGraphicURL",		XML_NAMESPACE_STYLE,	XML_BACKGROUND_IMAGE,			XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM,				CTF_PM_FOOTERGRAPHICURL ),
189     HFMAP( "FooterDynamicSpacing",        XML_NAMESPACE_STYLE,    XML_DYNAMIC_SPACING,           XML_TYPE_BOOL,          CTF_PM_FOOTERFLAG ),
190 
191 	{ 0L, 0, 0, XML_EMPTY, 0, 0, SvtSaveOptions::ODFVER_010 }
192 };
193 
194