| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| from __future__ import absolute_import |
| from __future__ import print_function |
| from __future__ import unicode_literals |
|
|
| from hwp5.binmodel.controls._shared import Control |
| from hwp5.dataio import Enum |
| from hwp5.dataio import Flags |
| from hwp5.dataio import UINT32 |
| from hwp5.dataio import SHWPUNIT |
| from hwp5.dataio import HWPUNIT |
| from hwp5.dataio import INT16 |
| from hwp5.dataio import BSTR |
| from hwp5.binmodel._shared import Margin |
|
|
|
|
| class CommonControl(Control): |
|
|
| |
| Flow = Enum(FLOAT=0, BLOCK=1, BACK=2, FRONT=3) |
| TextSide = Enum(BOTH=0, LEFT=1, RIGHT=2, LARGER=3) |
| VRelTo = Enum(PAPER=0, PAGE=1, PARAGRAPH=2) |
| HRelTo = Enum(PAPER=0, PAGE=1, COLUMN=2, PARAGRAPH=3) |
| VAlign = Enum(TOP=0, MIDDLE=1, BOTTOM=2) |
| HAlign = Enum(LEFT=0, CENTER=1, RIGHT=2, INSIDE=3, OUTSIDE=4) |
| WidthRelTo = Enum(PAPER=0, PAGE=1, COLUMN=2, PARAGRAPH=3, ABSOLUTE=4) |
| HeightRelTo = Enum(PAPER=0, PAGE=1, ABSOLUTE=2) |
| NumberCategory = Enum(NONE=0, FIGURE=1, TABLE=2, EQUATION=3) |
|
|
| CommonControlFlags = Flags(UINT32, |
| 0, 'inline', |
| 2, 'affect_line_spacing', |
| 3, 4, VRelTo, 'vrelto', |
| 5, 7, VAlign, 'valign', |
| 8, 9, HRelTo, 'hrelto', |
| 10, 12, HAlign, 'halign', |
| 13, 'restrict_in_page', |
| 14, 'overlap_others', |
| 15, 17, WidthRelTo, 'width_relto', |
| 18, 19, HeightRelTo, 'height_relto', |
| 20, 'protect_size_when_vrelto_paragraph', |
| 21, 23, Flow, 'flow', |
| 24, 25, TextSide, 'text_side', |
| 26, 27, NumberCategory, 'number_category') |
|
|
| MARGIN_LEFT = 0 |
| MARGIN_RIGHT = 1 |
| MARGIN_TOP = 2 |
| MARGIN_BOTTOM = 3 |
|
|
| def attributes(cls): |
| ''' 표 64 개체 공통 속성 ''' |
| yield cls.CommonControlFlags, 'flags', |
| yield SHWPUNIT, 'y', |
| yield SHWPUNIT, 'x', |
| yield HWPUNIT, 'width', |
| yield HWPUNIT, 'height', |
| yield INT16, 'z_order', |
| yield INT16, 'unknown1', |
| yield Margin, 'margin', |
| yield UINT32, 'instance_id', |
| yield dict(type=INT16, name='unknown2', version=(5, 0, 0, 5)) |
| yield dict(type=BSTR, name='description', version=(5, 0, 0, 5)) |
| attributes = classmethod(attributes) |
|
|