def attributes(): yield UINT16, 'byteorder' yield UINT16, 'format' yield UINT16, 'osversion' yield UINT16, 'os' yield ARRAY(BYTE, 16), 'clsid' yield N_ARRAY(UINT32, MSOLEPropertySectionDesc), 'sections'
def attributes(): yield GradationTypeFlags, 'type', yield UINT32, 'shear', # 기울임 각 (도) yield Coord32, 'center', yield UINT32, 'blur', # 번짐 정도: 0-100 # TODO: 스펙 1.2에 따르면 색상 수 > 2인 경우 # 색상이 바뀌는 위치 배열이 온다고 함 yield N_ARRAY(UINT32, COLORREF), 'colors',
def attributes(cls): ''' 표 70 표 개체 속성 ''' yield cls.Flags, 'flags' yield UINT16, 'rows' yield UINT16, 'cols' yield HWPUNIT16, 'cellspacing' # 표 72 안쪽 여백 정보 yield Margin, 'padding' yield dict(type=X_ARRAY(UINT16, ref_member('rows')), name='rowcols') yield UINT16, 'borderfill_id' yield dict(type=N_ARRAY(UINT16, ZoneInfo), name='validZones', version=(5, 0, 0, 7))
def attributes(cls): ''' 표 98 곡선 개체 속성 ''' yield N_ARRAY(UINT16, Coord), 'points'
def attributes(): yield BYTE, 'type', yield UINT32, 'shear', yield Coord32, 'center', yield UINT32, 'blur', yield N_ARRAY(UINT32, COLORREF), 'colors',
def attributes(cls): yield dict(type=cls.Flags, name='flags') yield dict(type=N_ARRAY(UINT32, Tab), name='tabs')
def attributes(): from hwp5.dataio import N_ARRAY from hwp5.dataio import BYTE yield UINT32, 'id' yield N_ARRAY(UINT32, BYTE), 'name'
def attributes(): from hwp5.dataio import N_ARRAY yield N_ARRAY(UINT32, MSOLEPropertyName), 'names'
def attributes(): from hwp5.dataio import N_ARRAY yield UINT32, 'bytesize' yield N_ARRAY(UINT32, MSOLEPropertyDesc), 'properties'
def attributes(cls): ''' 표 78 개체 요소 속성 ''' yield dict(type=CHID, name='chid0', condition=parent_must_be_gso) yield CHID, 'chid' yield SHWPUNIT, 'x_in_group' yield SHWPUNIT, 'y_in_group' yield WORD, 'level_in_group' yield WORD, 'local_version' yield SHWPUNIT, 'initial_width' yield SHWPUNIT, 'initial_height' yield SHWPUNIT, 'width' yield SHWPUNIT, 'height' yield cls.Flags, 'flags' yield WORD, 'angle' yield Coord, 'rotation_center' ''' 표 79 Rendering 정보 ''' yield WORD, 'scalerotations_count' yield Matrix, 'translation' yield dict(type=X_ARRAY(ScaleRotationMatrix, ref_member('scalerotations_count')), name='scalerotations') # # Container # yield dict(type=N_ARRAY(WORD, CHID), name='controls', condition=chid_is_container) # # Rectangle # ''' 표 81 테두리 선 정보 ''' yield dict(type=BorderLine, name='border', condition=chid_is_rect) ''' 표 83 Outline style ''' # TODO: Outline ??? yield dict(type=cls.FillFlags, name='fill_flags', condition=chid_is_rect) yield dict(type=UINT16, name='unknown', condition=chid_is_rect) yield dict(type=UINT8, name='unknown1', condition=chid_is_rect) yield dict(type=FillColorPattern, name='fill_colorpattern', condition=chid_is_rect_and_fill_colorpattern) yield dict(type=FillGradation, name='fill_gradation', condition=chid_is_rect_and_fill_gradation) yield dict(type=FillImage, name='fill_image', condition=chid_is_rect_and_fill_image) yield dict(type=UINT32, name='fill_shape', condition=chid_is_rect) yield dict(type=BYTE, name='fill_blur_center', condition=chid_is_rect_and_fill_gradation) # TODO: 아래 두 필드: chid == $rec일 때만인지 확인 필요 yield dict(type=HexBytes(5), name='unknown2', condition=chid_is_rect, version=(5, 0, 2, 4)) yield dict(type=HexBytes(16), name='unknown3', condition=chid_is_rect, version=(5, 0, 2, 4)) # # Line # yield dict(type=BorderLine, name='line', condition=chid_is_line)
def attributes(): yield UINT16, 'byteOrder' yield UINT16, 'version' yield UINT32, 'systemIdentifier' yield ARRAY(BYTE, 16), 'clsid' yield N_ARRAY(UINT32, PropertySetDesc), 'propsetDescList'
def attributes(): from hwp5.dataio import N_ARRAY yield N_ARRAY(UINT32, DictionaryEntry), 'entries'
def test_new(self): t1 = ARRAY(INT32, 3) t2 = ARRAY(INT32, 3) assert t1 is t2 assert N_ARRAY(INT32, INT32) is N_ARRAY(INT32, INT32)