1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_HWPFILTER_SOURCE_HINFO_H
21 #define INCLUDED_HWPFILTER_SOURCE_HINFO_H
26 #define CHAIN_MAX_PATH 40
27 #define ANNOTATION_LEN 24
34 * Information of page (phisical)
38 unsigned char paper_kind
;
39 unsigned char paper_direction
;
65 /* ?????? ??????, ???????? ???? */
68 char type
; // 0- background color, 1 - external image, 2- embedded image
70 int luminance
; /* ???? ( -100 ~ 100 ) */
71 int contrast
; /* ???? ( -100 ~ 100 ) */
72 char effect
; /* 0-????????, 1-????????????, 2-???? */
74 char filename
[260 + 1]; // filename
75 unsigned char color
[3]; //0 - red, 1 - green, 2 - blue
76 unsigned short flag
; /* 0 - ????????, 1 - ????????, 2 - ??????, 3 - ???????? */
77 int range
; /* 0-????, 1-????????, 3-??????, 4-?????? */
80 char *data
; // image data
93 memset(reserved1
, 0, sizeof(reserved1
));
94 memset(reserved2
, 0, sizeof(reserved2
));
95 memset(filename
, 0, sizeof(filename
));
96 memset(color
, 0, sizeof(color
));
97 memset(reserved3
, 0, sizeof(reserved3
));
103 * Information of printing for chained page
107 unsigned char chain_page_no
;
108 unsigned char chain_footnote_no
;
109 unsigned char chain_filename
[CHAIN_MAX_PATH
];
112 , chain_footnote_no(0)
114 memset(chain_filename
, 0, sizeof(chain_filename
));
120 * Summary of document
124 unsigned short title
[56];
125 unsigned short subject
[56];
126 unsigned short author
[56];
127 unsigned short date
[56];
128 unsigned short keyword
[2][56];
129 unsigned short etc
[3][56];
131 bool Read(HWPFile
&);
135 HWPInfo class?? HWPFile?? ???? ?????? ???? ???? ??????????.
136 ?????? ???? ???? ????????(layout) ?????? ????????????
137 ????????, ???? ???? ?????? ???????? ????. \\
139 HWPInfo ???????? HWPFile?? #GetHWPInfo()# ?????? ???? ???? ?? ????.
144 * Contains the basic information of the hwp document:
145 * margin, layout, paper and internal data.
147 class DLLEXPORT HWPInfo
151 * The column index of a document that is saved at last
155 * The row index of a document that is saved at last
163 PaperBackInfo back_info
;
165 * Sets the attribute of read-only or read/write.
168 unsigned char reserved1
[4];
170 * Information about document chain
172 DocChainInfo chain_info
;
173 unsigned char annotation
[ANNOTATION_LEN
];
175 // unsigned char reserved2[6];
176 short beginpagenum
; /* ?????????? ???? */
178 * Information about footnote
180 short beginfnnum
; /* ???????????? */
181 short countfn
; /* ???? ???? */
182 hunit splinetext
, splinefn
;
184 unsigned char fnchar
;
185 unsigned char fnlinetype
;
188 * Information about page layout
190 hunit bordermargin
[4];
193 unsigned char empty_line_hide
;
194 unsigned char table_move
;
195 unsigned char compressed
;
196 unsigned char reserved3
;
197 short info_block_len
;
198 /* ?????????? 128 ?????????? */
200 * Summary of document
203 unsigned char *info_block
;
208 bool Read(HWPFile
&hwpf
);
209 bool Write(CTextOut
&txtf
);
210 bool Write(CHTMLOut
&html
);
214 /* ???? ???? ?????? */
216 * @short Style of character
221 * Index of character style
223 int index
; /* ???????? ???????? ????. */
228 unsigned char font
[NLanguage
];
229 unsigned char ratio
[NLanguage
];
230 signed char space
[NLanguage
]; /* ???? */
231 unsigned char color
[2];
234 unsigned char reserved
[4];
236 bool Read(HWPFile
&);
239 /* ?? ?????? ???? ?????? */
243 * @short Tab properties
248 unsigned char dot_continue
;
253 * @short Column properties
258 unsigned char separator
;
260 hunit columnlen
, columnlen0
;
264 * @short Style of paragraph
269 * Index of paragraph style
271 int index
; /* ???????? ???????? ???? */
278 unsigned char condense
;
279 unsigned char arrange_type
;
280 TabSet tabs
[MAXTABS
];
283 unsigned char outline
;
284 unsigned char outline_continue
;
285 unsigned char reserved
[2];
287 unsigned char pagebreak
;
289 bool Read(HWPFile
&);
290 // virtual ~ParaShape();
292 #endif // INCLUDED_HWPFILTER_SOURCE_HINFO_H
294 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */