25#ifndef INCLUDED_HWPFILTER_SOURCE_HWPFILE_H
26#define INCLUDED_HWPFILTER_SOURCE_HWPFILE_H
41#define V20SIGNATURE "HWP Document File V2.00 \032\1\2\3\4\5"
42#define V21SIGNATURE "HWP Document File V2.10 \032\1\2\3\4\5"
43#define V30SIGNATURE "HWP Document File V3.00 \032\1\2\3\4\5"
74 std::shared_ptr<ColumnDef> xColdef;
113 int Open( std::unique_ptr<HStream> );
119 int State(
void )
const {
return error_code;}
123 int SetState(
int errcode);
127 bool Read1b(
unsigned char &out);
128 bool Read1b(
char &out);
132 bool Read2b(
unsigned short &out);
133 bool Read2b(
char16_t &out);
137 bool Read4b(
unsigned int &out);
138 bool Read4b(
int &out);
142 size_t Read2b(
void *ptr,
size_t nmemb);
148 size_t ReadBlock(
void *ptr,
size_t size );
152 size_t SkipBlock(
size_t size );
156 void ReadParaList(std::vector<std::unique_ptr<HWPPara>> &aplist,
unsigned char flag = 0);
157 void ReadParaList(std::vector<HWPPara*> &aplist);
161 void SetCompressed(
bool );
165 std::unique_ptr<HIODev> SetIODevice( std::unique_ptr<HIODev> hiodev );
170 int ReadHwpFile( std::unique_ptr<HStream> );
182 void StyleRead(
void);
207 void AddColumnInfo();
208 void SetColumnDef(std::shared_ptr<ColumnDef>
const &);
209 void AddParaShape(std::shared_ptr<ParaShape>
const &);
210 void AddCharShape(std::shared_ptr<CharShape>
const &);
215 void AddTable(std::unique_ptr<Table>);
218 int GetPageMasterNum(
int page);
235 Table *getTable(
int);
249 void push_hpara_type(
unsigned char scflag) { element_import_stack.push_back(scflag); }
252 return std::find(element_import_stack.begin(), element_import_stack.end(), scflag) != element_import_stack.end();
256 void move_to_failed(std::unique_ptr<HWPPara> rPara);
259 int compareCharShape(
CharShape const *shape);
260 int compareParaShape(
ParaShape const *shape);
284 std::vector<std::unique_ptr<HWPPara>>
plist;
290 std::vector<std::unique_ptr<EmPicture>>
emblist;
293 std::vector<std::shared_ptr<ParaShape>>
pslist;
294 std::vector<std::shared_ptr<CharShape>>
cslist;
299 std::vector<std::unique_ptr<Table>>
tables;
DepthGuard(HWPFile &rFile)
hwpio.h (C) 1999 Mizi Research, All rights are reserved
The HWPFile class is the main class of hwp for reading file information from stream.
std::vector< HeaderFooter * > headerfooters
std::vector< std::unique_ptr< ColumnInfo > > columnlist
std::vector< std::unique_ptr< HWPPara > > pfailedlist
std::vector< FBoxStyle * > fbslist
int getParaShapeCount() const
int getCurrentPage() const
std::unique_ptr< HIODev > hiodev
std::vector< unsigned char > element_import_stack
HWPFont & GetHWPFont(void)
HWPInfo & GetHWPInfo(void)
HWPPara * GetFirstPara(void)
int getHeaderFooterCount() const
int getTableCount() const
int getPageNumberCount() const
int getCharShapeCount() const
int State(void) const
Say current state.
std::vector< DateCode * > datecodes
int getMaxSettedPage() const
int getColumnCount() const
std::vector< std::unique_ptr< EmPicture > > emblist
std::vector< std::shared_ptr< CharShape > > cslist
std::unique_ptr< OlePicture > oledata
HWPStyle & GetHWPStyle(void)
int getDateFormatCount() const
std::vector< std::shared_ptr< ParaShape > > pslist
std::vector< std::unique_ptr< HyperText > > hyperlist
bool already_importing_type(unsigned char scflag) const
std::vector< std::unique_ptr< Table > > tables
void push_hpara_type(unsigned char scflag)
int getFBoxStyleCount() const
std::vector< ShowPageNum * > pagenumbers
std::vector< std::unique_ptr< HWPPara > > plist
The HWPFont class has the font list for the document when it's saved.
HWPInfo class는 HWPFile에 대한 정보를 담고 있는 클래스이다.
It represents the paragraph.
Using for global style object like "Standard".
HWPFile * GetCurrentDoc(void)
HWPFile * SetCurrentDoc(HWPFile *hwpfp)
int detect_hwp_version(const char *str)
A cell has four properties to specify the position for itself in hwp.
ColumnInfo(OUString i_sColumnName)
Class for current date and time with specified format.
Style for floating object.
This object is for floating object like table, image, line and so on.
There are four kinds of image.
Input page index in footer or header.