์ค๋ซ๋์ .NET ํ๊ฒฝ์์ HWP ํ์ผ์ ๋ค๋ฃจ๋ ๊ฒ์ ๊ธฐ๋๊ธด ์์ ์ฌ์ ๊ฐ์ ์ผ์ด์์ต๋๋ค. ํ๊ธ๊ณผ์ปดํจํฐ์์ ๊ณต์ SDK๋ฅผ ์ ๊ณตํ์ง๋ง ์ฌ์ค ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ์๋ ๋๋ฌด ๋น์ธ๊ณ ํน์ํ์ต๋๋ค. ๋ํ ์๋์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋๋ฆฌ ์ฐ์ด๋ COM ๊ธฐ๋ฐ API๋ ์ค์ ์ํํธ์จ์ด๋ฅผ ์ค์นํด์ผ ํจ์ ๋ฌผ๋ก ์ต๊ทผ์๋ ๊ณต์ ์ง์๊น์ง ์ค๋จ๋์ด์ ํ๊ธ ํ์ผ์ ์ ๋ง ๋ค๋ฃจ๊ธฐ ๊ณจ์น์ํ ๊ทธ๋ฐ ๋์งํธ ์์ฐ์ด์์ต๋๋ค.
์์ฑํ AI ๊ธฐ๋ฐ์ ์ฝ๋ ์ด์์คํดํธ๊ฐ ๋์คํ๋ ๊ฒ์ ๊ณ๊ธฐ๋ก ์ด๋ฒ์ ์ ๋ Java๋ก ์์ฑ๋ ์คํ์์ค HWP ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ธ neolord0/hwplib๋ฅผ .NET์ผ๋ก ํฌํ ํ์ฌ NuGet์ ์ถ์ํ๊ฒ ๋์์ต๋๋ค. ํฌํ ํ ์๋ก์ด ํจํค์ง ์ด๋ฆ์ HwpLibSharp์ ๋๋ค.
์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด HWP ํ์ผ์ ์ฝ๊ณ , ํ ์คํธ๋ฅผ ์ถ์ถํ๊ณ , ํ๋ ์ด๋ฏธ์ง ๊ฐ์ ์์๋ค์ ํ์ํ๊ณ , ์์ ํ ๋ค์ ์ ์ฅํ๋ ๊ฒ์ด ๊ฐ๋ฅํฉ๋๋ค. ํนํ ์์ฆ ํ๋์ธ RAG ํ์ดํ๋ผ์ธ์์ HWP ๋ฌธ์์ ํ ์คํธ๋ฅผ ์ถ์ถํ๋ ์ฉ๋๋ก ์ ์ฉํ๊ฒ ์ธ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค.
.NET 8.0์ ํ๊ฒ์ผ๋ก ํ๊ณ ์๊ณ , OLE ๋ณตํฉ ๋ฌธ์ ์ฒ๋ฆฌ์๋ OpenMcdf๋ฅผ ์ฌ์ฉํ์ต๋๋ค. Native AOT ์ปดํ์ผ๋ ์ง์ํ๋๋ก ์ค๊ณํ์ต๋๋ค.
์์ง ์คํ์ ์ธ ํ๋ก์ ํธ๋ผ API๊ฐ ๋ณ๊ฒฝ๋ ์ ์๊ณ , ๋ชจ๋ HWP ๊ธฐ๋ฅ์ ์๋ฒฝํ ์ง์ํ์ง๋ ์์ต๋๋ค. ํ์ง๋ง ๊ธฐ๋ณธ์ ์ธ ๋ฌธ์ ์ฝ๊ธฐ/์ฐ๊ธฐ, ํ ์คํธ ์ถ์ถ, ํ ์ฒ๋ฆฌ, ํ๋(๋๋ฆํ) ์กฐ์ ๋ฑ์ ์ ๋์ํฉ๋๋ค.
dotnet add package HwpLibSharp
์ฌ์ฉํด๋ณด์๊ณ ํผ๋๋ฐฑ์ด๋ ์ด์๊ฐ ์์ผ์๋ฉด GitHub์ ๋จ๊ฒจ์ฃผ์ธ์. ๊ธฐ์ฌ๋ ํ์ํฉ๋๋ค!
๋ง์ง๋ง์ผ๋ก, ์๋ณธ Java ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ง๋ค์ด์ฃผ์ neolord0๋๊ป ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ๋๋ถ์ ์ด ํฌํ ์์ ์ด ๊ฐ๋ฅํ์ต๋๋ค.
๊ฐ์ฌํฉ๋๋ค!
