๊ฐ์ฅ ์ค์: 100% Client-side Processing (๋ธ๋ผ์ฐ์ ๋ก์ปฌ ๊ตฌ๋)
์จ๋ผ์ธ์ ๊ฒ์๋๋ ๋๋ถ๋ถ์ ๋ฌด๋ฃ PDF ํธ์ง ์ฌ์ดํธ๋ค์ ์ฌ์ฉ์์ ํ์ผ์ ๊ทธ๋ค์ ํด๋ผ์ฐ๋ ์๋ฒ๋ก ์ ๋ก๋ํ์ฌ ์ฒ๋ฆฌํ ํ ๋ค์ ๋ค์ด๋ก๋ํ๊ฒ ๋ง๋ญ๋๋ค. ์ด ๊ฒฝ์ฐ ๋น์ ์ ๊ฐ์ธ์ ๋ณด๋ ํ์ฌ ๊ธฐ๋ฐ์ด ๋ด๊ธด ๋ฌธ์๊ฐ ์ธ๋ถ๋ง์ ๋ ธ์ถ๋ ์ํ์ด ์์ต๋๋ค.
ํ์ง๋ง ๋ณธ ํด์ pdf-lib.js ์์ง์ ํตํด ๊ณ ๊ฐ๋์ ๊ธฐ๊ธฐ(PC/๋ชจ๋ฐ์ผ) ๋ธ๋ผ์ฐ์ ๋ฉ๋ชจ๋ฆฌ ์์์ ์ง์ PDF ์กฐ์ํฉ๋๋ค. ํ์ผ ์ ๋ณด๋ ์ ํฌ ์๋ฒ๋ก ๋จ ํ ๋ฒ๋ ์ ์ก๋์ง ์์ผ๋ฉฐ, ์๋ฒ๋ฅผ ๊ฑฐ์น์ง ์๊ธฐ ๋๋ฌธ์ ์๋ ๋ฉด์์๋ ๋์ฉ๋ ์์
์ ํจ์ฌ ์ ๋ฆฌํฉ๋๋ค. ๋ณด์์ด ์ค์ํ ์ด๋ ฅ์, ๊ณ์ฝ์, ๋ฒ์ ์ฆ๋ช
์๋ฅ๋ ์์ฌํ๊ณ ์ฒ๋ฆฌํ์ธ์.
์ผ๋ฐ์ ์ธ ์ปจ๋ฒํฐ ํด๋ค์ PDF๋ฅผ ํ ๋ฒ ์ด๋ฏธ์ง(JPG/PNG)๋ก ๋ ๋๋ง(Rasterize)ํ ๋ค ๋ค์ PDF๋ก ๊ฐ์ธ๋ ๋ฐฉ์์ ์ทจํด ๊ธ์จ๊ฐ ํ๋ ค์ง๊ฑฐ๋ ๋ฒกํฐ ์์ฑ์ด ํ๊ดด๋๋ ๋จ์ ์ด ์์ต๋๋ค.
๋น์ฌ์ ํธ์ง ์์ง์ ์๋ณธ PDF์ ๋ฐ์ดํธ(Byte) ๋ฐฐ์ด๊ณผ ๋ด๋ถ ์ค๋ธ์ ํธ ํธ๋ฆฌ(Cross-Reference Table) ์์ค์ ์ง์ ์ฌ๊ตฌ์ฑ(Re-indexing)ํ๋ฏ๋ก, ๋ฌธ์ ์์ ๋ฐํ์๋ ํ ์คํธ ๋ณต์ฌ(DRM ๋ฑ ์ ํ ์๋ ๊ฒฝ์ฐ)์ ์๋ณธ ์ด๋ฏธ์ง ์์ถ ํ์ง, ํฐํธ ์๋ฒ ๋ฉ ๋ฑ ๋ฉํ๋ฐ์ดํฐ๊ฐ ๋จ 1%์ ์์ค ์์ด ์ํ ๊ทธ๋๋ก ์ ์ง๋๋ ๋ฌด์์ค(Lossless) ์กฐ์์ ๋ณด์ฅํฉ๋๋ค.