ebandal / H2Orestart

한컴파일을 LibreOffice에서 읽을 수 있도록 하는 extension입니다.
GNU General Public License v3.0
75 stars 6 forks source link

열리지 않는 파일 #30

Open changwoo opened 4 months ago

changwoo commented 4 months ago

안녕하세요.

열리지 않는 파일이 있습니다.

다운로드할 수 있는 파일입니다. [디자인 문서] 면접과 취업

ebandal commented 4 months ago

안녕하세요.

원인은 "문단 번호"내 번호 형식이 없는 경우에도 문단 번호로 스타일을 생성하려는데서 발생했습니다. 일단 문단 번호 없는 경우는 스타일 생성을 스킵하도록 처리하겠습니다. 열리도록 했고, 보이는 모습이 크게 차이가 나서 몇가지 더 수정은 했습니다만,
칼럼 (페이지를 세로 분할) 생성방법이 한컴과 리브레오피스가 차이가 커서 유사하게 변환은 되지 않습니다. 한컴은 문단에 칼럼 분할이 되나, 리브레오피스는 칼럼 분할이 페이지에 적용됩니다.

원본 내용을 확인하면 (Hwpx 로 변환, 확장자를 zip으로 바꾸고, 압축을 풀어 내용 확인),
numbering 노드내 paraHead 의 값이 있는 것도 있고, 없는 것도 있습니다.

<hh:numberings itemCnt="4">
    <hh:numbering id="1" start="1">
        <hh:paraHead start="1" level="1" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0">^1.</hh:paraHead>
        <hh:paraHead start="1" level="2" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="HANGUL_SYLLABLE" charPrIDRef="4294967295" checkable="0">^2.</hh:paraHead>
        <hh:paraHead start="1" level="3" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0">(^3)</hh:paraHead>
        <hh:paraHead start="1" level="4" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="HANGUL_SYLLABLE" charPrIDRef="4294967295" checkable="0">(^4)</hh:paraHead>
        <hh:paraHead start="1" level="5" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0">^5)</hh:paraHead>
        <hh:paraHead start="1" level="6" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="HANGUL_SYLLABLE" charPrIDRef="4294967295" checkable="0">^6)</hh:paraHead>
        <hh:paraHead start="1" level="7" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="CIRCLED_DIGIT" charPrIDRef="4294967295" checkable="1">^7</hh:paraHead>
        <hh:paraHead start="1" level="8" align="LEFT" useInstWidth="0" autoIndent="0" widthAdjust="0" textOffsetType="PERCENT" textOffset="0" numFormat="DIGIT" charPrIDRef="0" checkable="0"/>
        <hh:paraHead start="1" level="9" align="LEFT" useInstWidth="0" autoIndent="0" widthAdjust="0" textOffsetType="PERCENT" textOffset="0" numFormat="DIGIT" charPrIDRef="0" checkable="0"/>
        <hh:paraHead start="1" level="10" align="LEFT" useInstWidth="0" autoIndent="0" widthAdjust="0" textOffsetType="PERCENT" textOffset="0" numFormat="DIGIT" charPrIDRef="0" checkable="0"/>
    </hh:numbering>
    <hh:numbering id="2" start="1">
        <hh:paraHead start="1" level="1" align="LEFT" useInstWidth="0" autoIndent="1" widthAdjust="2000" textOffsetType="PERCENT" textOffset="0" numFormat="DIGIT" charPrIDRef="10" checkable="0">^1</hh:paraHead>
        <hh:paraHead start="1" level="2" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0"/>
        <hh:paraHead start="1" level="3" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0"/>
        <hh:paraHead start="1" level="4" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0"/>
        <hh:paraHead start="1" level="5" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0"/>
        <hh:paraHead start="1" level="6" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0"/>
        <hh:paraHead start="1" level="7" useInstWidth="0" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="DIGIT" charPrIDRef="4294967295" checkable="0"/>
        <hh:paraHead start="1" level="8" align="LEFT" useInstWidth="0" autoIndent="0" widthAdjust="0" textOffsetType="PERCENT" textOffset="0" numFormat="DIGIT" charPrIDRef="0" checkable="0"/>
        <hh:paraHead start="1" level="9" align="LEFT" useInstWidth="0" autoIndent="0" widthAdjust="0" textOffsetType="PERCENT" textOffset="0" numFormat="DIGIT" charPrIDRef="0" checkable="0"/>
        <hh:paraHead start="1" level="10" align="LEFT" useInstWidth="0" autoIndent="0" widthAdjust="0" textOffsetType="PERCENT" textOffset="0" numFormat="DIGIT" charPrIDRef="0" checkable="0"/>
    </hh:numbering>

한컴문서 내용만으로는 예측하지 못한 내용이네요. image

수정사항은 다음번 배포시 포함하겠습니다. 감사합니다.

ebandal commented 3 months ago

열리지 않는 이슈는 v0.6.2 에 수정하였습니다. 다만, 칼럼 표현이 한컴과는 차이가 있어서 한컴 원본과는 상당히 다른 모습으로 변환됩니다. 추가 개선은 어렵습니다.