ToolDoc 화면

Tools · Web App

ToolDoc

PDF·이미지·동영상·HWP 문서 변환부터 글자수 세기, 연봉 계산기, 문서양식까지 설치와 회원가입 없이 쓰는 무료 온라인 도구 모음입니다. 파일은 서버로 보내지 않고 브라우저 안에서 처리합니다.

주소
tool.martius.kr
분야
PDF · 이미지 · 동영상·음성 · 문서(HWP·엑셀) · 텍스트·개발자 · QR · 계산기 · 문서양식
처리 방식
브라우저 안에서 처리 (WebAssembly·Web Worker) · 파일 업로드 없음
이용
무료 · 설치·회원가입 없음 · PWA 설치 가능

만든 이유

PDF 몇 개를 하나로 합치거나 사진 용량을 줄이는 일은 생각보다 자주 생깁니다. 그때마다 프로그램을 새로 설치하기는 번거롭고, 처음 보는 변환 사이트에 계약서나 신분증 사본을 올리는 것도 마음이 편하지 않습니다. ToolDoc은 이런 작은 작업을 설치와 회원가입 없이, 파일을 서버로 보내지 않고 브라우저 안에서 끝낼 수 있도록 만든 도구 모음입니다.

무엇을 할 수 있나

도구는 분야별로 나뉘어 있고, 홈 화면과 검색창에서 이름으로 바로 찾을 수 있습니다. 분야마다 대표적인 도구를 꼽으면 다음과 같습니다.

이와 별도로 문서양식 메뉴가 있습니다. 이력서, 사직서, 근로계약서, 차용증, 위임장, 임대차계약서, 내용증명처럼 자주 찾는 서식을 양식에 따라 Word(docx)나 PDF, 엑셀 파일로 내려받을 수 있고, 이력서·사직서·차용증 같은 일부 양식은 화면에서 내용을 채운 뒤 바로 문서로 받을 수 있습니다. 양식 문구는 직접 작성했고, 양식마다 작성 방법과 꼭 들어가야 할 항목, 주의할 점을 정리한 안내가 붙어 있습니다.

이렇게 쓰면 좋습니다

아이폰으로 찍은 HEIC 사진을 JPG로 바꿔 제출해야 할 때, 스캔한 서류 여러 장을 PDF 하나로 묶을 때, 메일 첨부 용량에 맞춰 사진을 줄일 때, 자기소개서 글자수를 확인할 때처럼 잠깐이면 끝나는 일에 맞춰 두었습니다. Ctrl+K(맥에서는 ⌘K)로 검색창을 열어 도구 이름을 입력하면 바로 이동하고, 자주 쓰는 도구는 즐겨찾기에 넣어 둘 수 있습니다.

도구 페이지마다 사용 방법 세 단계와 자주 묻는 질문, 잘 안 될 때 확인할 점을 적어 두었습니다. 처음 쓰는 도구라면 화면 아래 설명을 한 번 읽어 보면 도움이 됩니다. 앱처럼 홈 화면에 설치(PWA)할 수 있고, 설치해 두면 오프라인에서도 동작하도록 만들었습니다.

데이터와 개인정보

모든 도구는 브라우저 안에서 동작합니다. 불러온 파일과 입력한 내용은 Canvas, Web Worker, WebAssembly로 그 자리에서 처리되며, 처리를 위해 서버로 업로드되지 않습니다. 탭을 닫으면 처리하던 데이터도 함께 사라집니다.

다만 무거운 처리를 하는 일부 도구는 처음 쓸 때 엔진이나 모델 파일을 내려받습니다. 동영상 변환 엔진, 글자 인식(OCR) 엔진, 배경 제거와 얼굴 감지 모델, 화질 개선 모델이 여기에 해당합니다. 대부분은 ToolDoc이 직접 올려 둔 파일을 받지만, 음성 텍스트 변환에 쓰는 Whisper 모델은 Hugging Face 저장소에서, OCR의 언어 데이터는 공개 CDN에서 받아 옵니다. 이때도 파일을 받아 오기만 할 뿐, 사용자의 파일이나 녹음 내용은 전송되지 않습니다. 엔진 용량이 큰 도구는 처음 한 번 내려받는 시간이 걸릴 수 있습니다.

회원가입이 없으므로 이름이나 이메일을 받지 않습니다. 즐겨찾기와 최근 사용한 도구 목록은 브라우저 저장공간에만 남습니다. 방문 통계와 광고는 제3자 서비스가 처리하며, 자세한 내용은 사이트의 개인정보처리방침에 적어 두었습니다.

알아 둘 점

만들면서

설계할 때 세 가지 원칙을 먼저 정했습니다. 파일 처리는 모두 브라우저에서 하고, 도구는 데이터와 화면 컴포넌트의 묶음으로 다루며, 무거운 라이브러리는 그 도구에 들어왔을 때만 불러온다는 것입니다. 모든 도구는 한 곳의 목록(레지스트리)에 등록하고, 카테고리 페이지와 검색, 사이트맵, 관련 도구 추천이 이 목록에서 자동으로 만들어지게 했습니다. 도구를 하나 더할 때 여러 파일을 고치다 빠뜨리는 일을 줄이려는 구조입니다.

서버에서 할 일이 없으니 사이트 전체를 정적 페이지로 만들어 Cloudflare Workers에 올렸습니다. 동영상 변환(ffmpeg), 글자 인식(Tesseract), 음성 인식(Whisper), 문서 스캔과 얼굴 감지(OpenCV) 같은 엔진은 WebAssembly로 돌리고, 계산은 Web Worker로 넘겨 화면이 멈추지 않게 했습니다. 받는 양과 진행률은 화면에 그대로 보여 줍니다.

몇 가지는 직접 부딪히며 정했습니다. 여러 스레드를 쓰는 엔진 빌드는 특정 보안 헤더가 필요한데, 이 헤더가 광고 스크립트와 충돌해 단일 스레드 빌드만 쓰기로 했습니다. 비스듬히 찍은 문서 사진은 변 길이만 재면 세로 문서가 가로로 펴지는 문제가 있어, 네 모서리로 원근을 함께 계산해 종이의 실제 비율을 되찾도록 했습니다. 문서양식 PDF는 한글 글꼴에서 쓴 글자만 골라 넣는데, 기본 도구가 한글 글자를 빠뜨려 다른 방식으로 바꿨습니다.

도구마다 실제 파일을 넣고 결과를 다시 열어 확인하는 자동 테스트를 두고 있습니다. 쓰는 사람에게는 파일을 넣고 결과를 받는 과정만 보이도록, 나머지는 안쪽에서 해결하려고 합니다.