diff --git a/src/main/resources/messages_ko_KR.properties b/src/main/resources/messages_ko_KR.properties
new file mode 100644
index 00000000..5e34defa
--- /dev/null
+++ b/src/main/resources/messages_ko_KR.properties
@@ -0,0 +1,489 @@
+###########
+# Generic #
+###########
+# the direction that the language is written (ltr = left to right, rtl = right to left)
+language.direction=ltr
+
+pdfPrompt=PDF 선택
+multiPdfPrompt=PDF 선택(2개 이상)
+multiPdfDropPrompt=사용할 모든 PDF를 선택(또는 드래그 앤 드롭)하세요
+imgPrompt=이미지 선택
+genericSubmit=제출
+processTimeWarning=경고: 파일 크기에 따라 1분 정도 소요될 수 있습니다
+pageOrderPrompt=페이지 순서(쉼표로 구분된 페이지 번호 목록 입력):
+goToPage=이동
+true=참
+false=거짓
+unknown=알 수 없음
+save=저장
+close=닫기
+filesSelected=개 파일 선택됨
+noFavourites=즐겨찾기 없음
+bored=기다리는 게 지루하신가요?
+#############
+# HOME-PAGE #
+#############
+home.desc=당신의 PDF에 필요한 모든 것이 있는 로컬 호스팅된 원스톱 숍입니다.
+
+
+navbar.convert=변환
+navbar.security=보안
+navbar.other=기타
+navbar.darkmode=다크 모드
+navbar.pageOps=Page Operations
+
+home.multiTool.title=PDF 멀티 툴
+home.multiTool.desc=페이지를 병합, 회전, 재배열, 제거하세요.
+
+home.merge.title=병합
+home.merge.desc=여러 개의 PDF를 쉽게 하나로 합치세요.
+
+home.split.title=분할
+home.split.desc=PDF를 여러 개의 문서로 분할하세요.
+
+home.rotate.title=회전
+home.rotate.desc=PDF를 쉽게 회전하세요.
+
+home.imageToPdf.title=Image to PDF
+home.imageToPdf.desc=이미지(PNG, JPEG, GIF)를 PDF로 변환하세요.
+
+home.pdfToImage.title=PDF to Image
+home.pdfToImage.desc=PDF를 이미지(PNG, JPEG, GIF)로 변환하세요.
+
+home.pdfOrganiser.title=정렬
+home.pdfOrganiser.desc=페이지를 원하는 순서대로 제거/재배열하세요.
+
+home.addImage.title=사진 추가
+home.addImage.desc=PDF의 설정된 위치에 이미지를 추가하세요.(개발 중)
+
+home.watermark.title=워터마크 추가
+home.watermark.desc=PDF 문서에 사용자 지정 워터마크를 추가하세요.
+
+home.remove-watermark.title=워터마크 제거
+home.remove-watermark.desc=PDF 문서에서 워터마크를 제거하세요.
+
+home.permissions.title=권한 변경
+home.permissions.desc=PDF 문서의 권한을 변경하세요.
+
+home.removePages.title=제거
+home.removePages.desc=PDF 문서에서 원치 않는 페이지를 제거하세요.
+
+home.addPassword.title=비밀번호 추가
+home.addPassword.desc=PDF 문서를 비밀번호로 암호화하세요.
+
+home.removePassword.title=비밀번호 제거
+home.removePassword.desc=PDF 문서에서 비밀번호를 제거하세요.
+
+home.compressPdfs.title=압축
+home.compressPdfs.desc=파일 크기를 줄이기 위해 PDF 문서를 압축하세요.
+
+home.changeMetadata.title=메타데이터 변경
+home.changeMetadata.desc=PDF 문서의 메타데이터를 수정/제거/추가하세요.
+
+home.fileToPDF.title=파일을 PDF로 변환
+home.fileToPDF.desc=거의 모든 파일을 PDF로 변환하세요(DOCX, PNG, XLS, PPT, TXT 등)
+
+home.ocr.title=OCR / 깔끔하게 스캔
+home.ocr.desc=깔끔하게 스캔하고 PDF 내의 이미지에서 텍스트를 감지하여 텍스트로 다시 추가합니다.
+
+home.extractImages.title=이미지 추출
+home.extractImages.desc=PDF에서 모든 이미지를 추출하여 zip으로 저장합니다.
+
+home.pdfToPDFA.title=PDF to PDF/A
+home.pdfToPDFA.desc=장기 보관을 위해 PDF를 PDF/A 문서로 변환하세요.
+
+home.PDFToWord.title=PDF to Word
+home.PDFToWord.desc=PDF를 Word 형식으로 변환하세요. (DOC, DOCX, ODT)
+
+home.PDFToPresentation.title=PDF to 프리젠테이션
+home.PDFToPresentation.desc=PDF를 프리젠테이션 형식으로 변환하세요. (PPT, PPTX, ODP)
+
+home.PDFToText.title=PDF to 텍스트/RTF
+home.PDFToText.desc=PDF를 텍스트 또는 RTF 형식으로 변환하세요.
+
+home.PDFToHTML.title=PDF to HTML
+home.PDFToHTML.desc=PDF를 HTML 형식으로 변환하세요.
+
+home.PDFToXML.title=PDF to XML
+home.PDFToXML.desc=PDF를 XML 형식으로 변환하세요.
+
+home.ScannerImageSplit.title=스캔한 사진 감지/분할
+home.ScannerImageSplit.desc=사진/PDF 내에서 여러 장의 사진을 분할합니다.
+
+home.sign.title=서명
+home.sign.desc=PDF에 그림, 텍스트, 이미지로 서명을 추가합니다.
+
+home.flatten.title=합치기
+home.flatten.desc=PDF에서 모든 인터랙션 요소와 양식을 제거하세요.
+
+home.repair.title=복구
+home.repair.desc=손상된 PDF의 복구를 시도합니다.
+
+home.removeBlanks.title=빈 페이지 제거
+home.removeBlanks.desc=문서에서 빈 페이지를 감지하고 제거합니다.
+
+home.compare.title=비교
+home.compare.desc=2개의 PDF 문서를 비교하고 차이를 표시합니다.
+
+home.certSign.title=인증서로 서명
+home.certSign.desc=PDF에 인증서/키로 서명합니다. (PEM/P12)
+
+
+downloadPdf=PDF 다운로드
+text=텍스트
+font=폰트
+selectFillter=-- 선택 --
+pageNum=페이지 번호
+
+certSign.title=인증서로 서명
+certSign.header=PDF에 당신의 인증서로 서명하세요 (개발 중)
+certSign.selectPDF=서명할 PDF를 선택하세요:
+certSign.selectKey=개인 키 파일을 선택하세요 (PKCS#8 형식, .pem 또는 .der):
+certSign.selectCert=인증서 파일을 선택하세요 (X.509 형식, .pem 또는 .der):
+certSign.selectP12=PKCS#12 키 저장소 파일을 선택하세요 (.p12 or .pfx) (선택 사항, 선택할 경우, 개인 키와 인증서를 포함하고 있어야 합니다):
+certSign.certType=인증서 유형
+certSign.password=키 저장소 또는 개인 키 비밀번호를 입력하세요 (있는 경우):
+certSign.showSig=서명 보기
+certSign.reason=이유
+certSign.location=위치
+certSign.name=이름
+
+certSign.submit=PDF 서명
+
+
+
+removeBlanks.title=빈 페이지 제거
+removeBlanks.header=빈 페이지 제거
+removeBlanks.threshold=임계값:
+removeBlanks.thresholdDesc=흰색 픽셀이 얼마나 흰색이어야 하는지를 결정하는 임계값
+removeBlanks.whitePercent=흰색 비율 (%):
+removeBlanks.whitePercentDesc=제거될 페이지의 흰색 픽셀 비율
+removeBlanks.submit=빈 페이지 제거
+
+compare.title=비교
+compare.header=PDF 비교
+compare.document.1=문서 1
+compare.document.2=문서 2
+compare.submit=비교
+
+sign.title=서명
+sign.header=PDF에 서명
+sign.upload=이미지 업로드
+sign.draw=서명 그리기
+sign.text=텍스트 입력
+sign.clear=초기화
+sign.add=추가
+
+repair.title=복구
+repair.header=PDF 복구
+repair.submit=복구
+
+flatten.title=합치기
+flatten.header=PDF 합치기
+flatten.submit=합치기
+
+ScannerImageSplit.selectText.1=각도 임계값:
+ScannerImageSplit.selectText.2=이미지를 회전하는 데 필요한 최소 절대 각도를 설정합니다(기본값: 10).
+ScannerImageSplit.selectText.3=오차 범위:
+ScannerImageSplit.selectText.4=예상 배경색 주변의 색상 변화 범위를 결정합니다(기본값: 30).
+ScannerImageSplit.selectText.5=최소 면적:
+ScannerImageSplit.selectText.6=사진의 최소 면적 임계값을 설정합니다 (기본값: 10000).
+ScannerImageSplit.selectText.7=최소 윤곽 영역:
+ScannerImageSplit.selectText.8=사진의 최소 윤곽선 영역 임계값을 설정합니다.
+ScannerImageSplit.selectText.9=테두리 크기:
+ScannerImageSplit.selectText.10=출력에서 흰색 테두리를 방지하기 위해 추가 및 제거되는 테두리의 크기를 설정합니다(기본값: 1).
+
+navbar.settings=설정
+settings.title=설정
+settings.update=업데이트 가능
+settings.appVersion=앱 버전:
+settings.downloadOption.title=다운로드 옵션 선택 (zip 파일이 아닌 단일 파일 다운로드 시):
+settings.downloadOption.1=현재 창에서 열기
+settings.downloadOption.2=새 창에서 열기
+settings.downloadOption.3=다운로드
+settings.zipThreshold=다운로드한 파일 수가 초과된 경우 파일 압축하기
+
+
+
+
+
+#OCR
+ocr.title=OCR / 깔끔하게 스캔
+ocr.header=깔끔하게 스캔 / OCR (광학 문자 인식)
+ocr.selectText.1=PDF에서 감지할 언어를 선택하십시오 (현재 감지된 언어 목록):
+ocr.selectText.2=OCR 텍스트가 포함된 텍스트 파일을 OCR 처리된 PDF와 함께 생성
+ocr.selectText.3=비뚤어진 각도로 스캔한 페이지를 다시 제자리로 돌려 올바른 페이지로 스캔
+ocr.selectText.4=페이지를 깨끗하게 정리하여 OCR이 배경의 이물질에서 텍스트를 찾을 가능성 줄이기 (출력 변경 없음)
+ocr.selectText.5=페이지를 깨끗하게 정리하여 OCR이 배경의 이물질에서 텍스트를 찾을 가능성 줄이기 (출력 변경)
+ocr.selectText.6=인터랙티브 텍스트가 있는 페이지는 건너뛰고 이미지만 OCR
+ocr.selectText.7=OCR 강제(모든 페이지에서 원본 텍스트 제거하고 OCR로 대체)
+ocr.selectText.8=일반 (PDF에 텍스트가 포함된 경우 오류 발생)
+ocr.selectText.9=추가 설정
+ocr.selectText.10=OCR 모드
+ocr.selectText.11=OCR 후 이미지 제거(모든 이미지 제거, 변환 단계의 일부인 경우에만 유용)
+ocr.selectText.12=렌더 유형(고급)
+ocr.help=다른 언어 또는 Docker에 포함되지 않은 언어에 대해 사용하는 방법에 대해서는 이 문서를 참조하세요.
+ocr.credit=이 서비스는 OCR에 OCRmyPDF와 Tesseract를 사용합니다.
+ocr.submit=OCR로 PDF 처리
+
+
+
+extractImages.title=이미지 추출
+extractImages.header=이미지 추출
+extractImages.selectText=추출된 이미지를 변환할 이미지 형식을 선택하세요.
+extractImages.submit=추출
+
+
+#File to PDF
+fileToPDF.title=File to PDF
+fileToPDF.header=모든 파일을 PDF로 변환
+fileToPDF.credit=이 서비스는 파일 변환에 LibreOffice와 Unoconv를 사용합니다.
+fileToPDF.supportedFileTypes=지원되는 파일 형식은 아래와 같지만, 지원되는 형식의 전체 업데이트 목록은 LibreOffice 설명서를 참조하세요.
+fileToPDF.submit=PDF로 변환
+
+
+#compress
+compress.title=압축
+compress.header=PDF 압축
+compress.credit=이 서비스는 PDF 압축/최적화를 위해 Ghostscript를 사용합니다.
+compress.selectText.1=수동 모드 - 1에서 4
+compress.selectText.2=최적화 수준:
+compress.selectText.3=4 (텍스트 이미지에 적합하지 않음)
+compress.selectText.4=자동 - 정확한 크기의 PDF를 얻기 위해 품질 자동 조정
+compress.selectText.5=예상 PDF 크기 (예: 25MB, 10.8MB, 25KB)
+compress.submit=압축
+
+
+#Add image
+addImage.title=이미지 추가
+addImage.header=PDF에 이미지 추가
+addImage.everyPage=모든 페이지에 적용
+addImage.submit=이미지 추가
+
+
+#merge
+merge.title=병합
+merge.header=여러 개의 PDF 병합 (2개 이상)
+merge.submit=병합
+
+#pdfOrganiser
+pdfOrganiser.title=페이지 정렬 도구
+pdfOrganiser.header=PDF 페이지 정렬
+pdfOrganiser.submit=페이지 재정렬
+
+#multiTool
+multiTool.title=PDF 멀티 툴
+multiTool.header=PDF 멀티 툴
+
+
+#pageRemover
+pageRemover.title=페이지 제거 도구
+pageRemover.header=PDF 페이지 제거 도구
+pageRemover.pagesToDelete=제거할 페이지 (쉼표로 구분된 페이지 번호 입력):
+pageRemover.submit=페이지 제거
+
+#rotate
+rotate.title=PDF 회전
+rotate.header=PDF 회전
+rotate.selectAngle=회전 각도 선택 (90도의 배수로):
+rotate.submit=회전
+
+
+
+
+#merge
+split.title=PDF 분할
+split.header=PDF 분할
+split.desc.1=선택한 번호는 분할할 페이지 번호입니다.
+split.desc.2=예를 들어, 1,3,7-8을 선택하면 10페이지 문서를 아래와 같이 6개의 별도의 PDF로 분할하게 됩니다.
+split.desc.3=문서 #1: 페이지 1
+split.desc.4=문서 #2: 페이지 2, 3
+split.desc.5=문서 #3: 페이지 4, 5, 6
+split.desc.6=문서 #4: 페이지 7
+split.desc.7=문서 #5: 페이지 8
+split.desc.8=문서 #6: 페이지 9, 10
+split.splitPages=분할할 페이지 입력:
+split.submit=분할
+
+
+#imageToPdf
+imageToPDF.title=Image to PDF
+imageToPDF.header=이미지를 PDF로 변환
+imageToPDF.submit=변환
+imageToPDF.selectText.1=맞춤 크기로 늘리기
+imageToPDF.selectText.2=PDF 자동 회전
+imageToPDF.selectText.3=다중 파일 로직 (여러 이미지로 작업하는 경우에만 활성화됨)
+imageToPDF.selectText.4=단일 PDF로 병합
+imageToPDF.selectText.5=별개의 PDF로 변환
+
+#pdfToImage
+pdfToImage.title=PDF to Image
+pdfToImage.header=PDF를 이미지로 변환
+pdfToImage.selectText=이미지 형식
+pdfToImage.singleOrMultiple=이미지 결과 유형
+pdfToImage.single=단일 큰 이미지
+pdfToImage.multi=여러 이미지
+pdfToImage.colorType=색상 유형
+pdfToImage.color=컬러
+pdfToImage.grey=그레이스케일
+pdfToImage.blackwhite=흑백 (데이터 손실 가능성 있음!)
+pdfToImage.submit=변환하기
+
+
+#imageToPdf
+imageToPDF.title=이미지를 PDF로 변환
+imageToPDF.header=이미지를 PDF로 변환
+imageToPDF.submit=변환하기
+imageToPDF.selectText.1=맞춤 크기로 늘리기
+imageToPDF.selectText.2=PDF 자동 회전
+imageToPDF.selectText.3=다중 파일 로직 (여러 이미지로 작업하는 경우에만 활성화됨)
+imageToPDF.selectText.4=단일 PDF로 병합
+imageToPDF.selectText.5=별도의 PDF로 변환
+
+#pdfToImage
+pdfToImage.title=PDF를 이미지로 변환
+pdfToImage.header=PDF를 이미지로 변환
+pdfToImage.selectText=이미지 형식
+pdfToImage.singleOrMultiple=이미지 결과 유형
+pdfToImage.single=단일 큰 이미지
+pdfToImage.multi=여러 이미지
+pdfToImage.colorType=색상 유형
+pdfToImage.color=컬러
+pdfToImage.grey=그레이스케일
+pdfToImage.blackwhite=흑백 (데이터 손실 가능성 있음!)
+pdfToImage.submit=변환하기
+
+#addPassword
+addPassword.title=암호 추가
+addPassword.header=암호 추가 (암호화)
+addPassword.selectText.1=암호화할 PDF 선택
+addPassword.selectText.2=암호
+addPassword.selectText.3=암호화 키 길이
+addPassword.selectText.4=값이 높을수록 강력하지만, 값이 낮을수록 호환성이 더 좋습니다.
+addPassword.selectText.5=설정할 권한
+addPassword.selectText.6=문서 조립 방지
+addPassword.selectText.7=콘텐츠 추출 방지
+addPassword.selectText.8=접근성을 위한 추출 방지
+addPassword.selectText.9=양식 작성 방지
+addPassword.selectText.10=수정 방지
+addPassword.selectText.11=주석 수정 방지
+addPassword.selectText.12=인쇄 방지
+addPassword.selectText.13=다른 형식으로 인쇄 방지
+addPassword.submit=암호화
+
+#watermark
+watermark.title=워터마크 추가
+watermark.header=워터마크 추가
+watermark.selectText.1=워터마크를 추가할 PDF 선택:
+watermark.selectText.2=워터마크 텍스트:
+watermark.selectText.3=폰트 크기:
+watermark.selectText.4=회전 각도 (0-360):
+watermark.selectText.5=가로 간격 (각 워터마크 사이의 가로 공간):
+watermark.selectText.6=세로 간격 (각 워터마크 사이의 세로 공간):
+watermark.selectText.7=투명도 (0% - 100%):
+watermark.submit=워터마크 추가
+
+#remove-watermark
+remove-watermark.title=워터마크 제거
+remove-watermark.header=워터마크 제거
+remove-watermark.selectText.1=워터마크를 제거할 PDF 선택:
+remove-watermark.selectText.2=워터마크 텍스트:
+remove-watermark.submit=워터마크 제거
+
+#Change permissions
+permissions.title=권한 변경
+permissions.header=권한 변경
+permissions.warning=이 권한을 변경할 수 없도록 하기 위해서는 암호를 사용하여 비밀번호 추가 페이지에서 설정하는 것이 좋습니다.
+permissions.selectText.1=권한을 변경할 PDF 선택
+permissions.selectText.2=설정할 권한
+permissions.selectText.3=문서 조립 방지
+permissions.selectText.4=콘텐츠 추출 방지
+permissions.selectText.5=접근성을 위한 추출 방지
+permissions.selectText.6=양식 작성 방지
+permissions.selectText.7=수정 방지
+permissions.selectText.8=주석 수정 방지
+permissions.selectText.9=인쇄 방지
+permissions.selectText.10=다른 형식으로 인쇄 방지
+permissions.submit=변경
+
+#remove password
+removePassword.title=암호 제거
+removePassword.header=암호 제거 (복호화)
+removePassword.selectText.1=복호화할 PDF 선택
+removePassword.selectText.2=암호
+removePassword.submit=제거
+
+changeMetadata.title=메타데이터 변경
+changeMetadata.header=메타데이터 변경
+changeMetadata.selectText.1=변경하려는 변수를 편집해주세요
+changeMetadata.selectText.2=모든 메타데이터 삭제
+changeMetadata.selectText.3=사용자 정의 메타데이터 표시:
+changeMetadata.author=저자:
+changeMetadata.creationDate=작성일 (yyyy/MM/dd HH:mm:ss):
+changeMetadata.creator=제작자:
+changeMetadata.keywords=키워드:
+changeMetadata.modDate=수정일 (yyyy/MM/dd HH:mm:ss):
+changeMetadata.producer=생성자:
+changeMetadata.subject=주제:
+changeMetadata.title=제목:
+changeMetadata.trapped=잠긴 상태:
+changeMetadata.selectText.4=기타 메타데이터:
+changeMetadata.selectText.5=사용자 정의 메타데이터 항목 추가
+changeMetadata.submit=변경
+
+xlsToPdf.title=Excel to PDF
+xlsToPdf.header=Excel을 PDF로 변환
+xlsToPdf.selectText.1=변환할 XLS 또는 XLSX Excel 시트 선택
+xlsToPdf.convert=변환하기
+
+
+
+
+pdfToPDFA.title=PDF To PDF/A
+pdfToPDFA.header=PDF를 PDF/A로 변환
+pdfToPDFA.credit=이 서비스는 PDF/A 변환을 위해 OCRmyPDF를 사용합니다.
+pdfToPDFA.submit=변환
+
+
+
+PDFToWord.title=PDF to Word
+PDFToWord.header=PDF를 Word로 변환
+PDFToWord.selectText.1=출력 파일 형식
+PDFToWord.credit=이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.
+PDFToWord.submit=변환
+
+PDFToPresentation.title=PDF to Presentation
+PDFToPresentation.header=PDF를 프레젠테이션으로 변환
+PDFToPresentation.selectText.1=출력 파일 형식
+PDFToPresentation.credit=이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.
+PDFToPresentation.submit=변환
+
+
+PDFToText.title=PDF to Text/RTF
+PDFToText.header=PDF를 텍스트/RTF로 변환
+PDFToText.selectText.1=출력 파일 형식
+PDFToText.credit=이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.
+PDFToText.submit=변환
+
+
+PDFToHTML.title=PDF to HTML
+PDFToHTML.header=PDF를 HTML로 변환
+PDFToHTML.credit=이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.
+PDFToHTML.submit=변환
+
+PDFToXML.title=PDF to XML
+PDFToXML.header=PDF를 XML로 변환
+PDFToXML.credit=이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.
+PDFToXML.submit=변환
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/resources/static/images/flags/kr.svg b/src/main/resources/static/images/flags/kr.svg
new file mode 100755
index 00000000..39fa999e
--- /dev/null
+++ b/src/main/resources/static/images/flags/kr.svg
@@ -0,0 +1,24 @@
+
diff --git a/src/main/resources/templates/fragments/navbar.html b/src/main/resources/templates/fragments/navbar.html
index e5128121..885fc688 100644
--- a/src/main/resources/templates/fragments/navbar.html
+++ b/src/main/resources/templates/fragments/navbar.html
@@ -279,6 +279,9 @@ function compareVersions(version1, version2) {
Русский
+
+ 한국어
+