현재 위와 같은 코드로 글꼴을 적용하고 있습니다.
그런데 시스템 상에서 제공하는 글꼴들 뿐만 아니라 제가 현재 가지고 있는 다른 ttf 혹은 hft 파일을 통해 그 폰트를 적용하려면 어떻게 해야하는지 알고 싶습니다! (특히 hft 파일!) ttf 혹은 hft 파일 경로를 통해 글꼴을 적용하거나 하는 방법이 있을까요?
말씀해주신대로 수동 폰트 설치를 하기 위해 현재 한컴오피스에서 제공하지 않는 HFT 폰트 파일을 설치하고자 합니다.
(예를 들면 한글2.0(옛날)의 HANGT.HFT, HANMJ.HFT, HANPG.HFT, HANSM.HFT(파일 수정 날짜 1992년) 등등이요…! 현재 소지하고 있는 파일입니다.)
이 파일들을 ‘C:\Program Files (x86)\Hnc\Office 2020\HOffice110\Shared\Fonts’ 와 같은 파일 경로에 넣으면 자동으로 적용이 되나요? 어떠한 작업을 추가로 해주어야 하는지, 그리고 “HANGT.HFT, HANMJ.HFT, HANPG.HFT, HANSM.HFT” 각각의 파일들의 폰트명을 어떻게 확인할 수 있는지 알려주시면 감사하겠습니다…! (오래전 폰트여서 그런지 한컴오피스 제공 글꼴 pdf에서 이게 어떤 글꼴 파일인지 이름을 찾을 수가 없습니다ㅠㅠ)
+) 추가적인 질문이며 메일로 문의드렸는데 답장을 받지 못해서 여기서 여쭤봅니다. 12월 31일 부로 hwpctrl의 서비스가 종료된다는 공지를 보았는데 그렇다면 이미 기존의 hwpctrl를 이용하여 빌드/배포되어진 window c# 프로그램의 동작도 멈추게 되는건가요?
+) 추가적인 질문이며 메일로 문의드렸는데 답장을 받지 못해서 여기서 여쭤봅니다. 12월 31일 부로 hwpctrl의 서비스가 종료된다는 공지를 보았는데 그렇다면 이미 기존의 hwpctrl를 이용하여 빌드/배포되어진 window c# 프로그램의 동작도 멈추게 되는건가요?
아닙니다. 함께 고민해주셔서 감사합니다!
한가지 질문이 더 있습니다.
C:\Program Files (x86)\Hnc\Office 2020\HOffice110\Shared\Fonts
위의 파일 경로에 ‘강낭콩’ 글씨체인 ‘HGKDNYBN.HFT’ 파일이 있습니다.
그리고 실제로 한글 2020을 실행시키면 강낭콩 글씨체가 폰트 드롭박스에서 ‘TH’ 아이콘으로 뜨면서 폰트적용이 잘 되는 것을 확인할 수 있습니다. 또한 해당 파일을 ‘axHwpCtrl1.Open()’ 메소드를 통해 호출하면 c# 코드로 짜여진 프로그램 내에서도 폰트가 적용된 채로 잘 로드되는 것을 확인할 수 있습니다.
이 때,
이렇게 폰트타입을 2로 지정(HTF)해서 폰트를 적용하는 것이 안됩니다. 어떻게 하면 되나요?
폰트타입을 1로 지정하고 window에 설치된 ttf 폰트를 적용하는 것은 문제없이 잘 작동합니다.
"FaceNameUser"의 fontName으로 들어가는 인자의 값을 어떻게 알 수 있습니까? 예를 들어 HGKDNYBN.HFT 폰트를 적용하기 위해 dset.SetItem(“FaceNameUser”, “강낭콩체”);가 아닌 dset.SetItem(“FaceNameUser”, “강낭콩”);이 들어가야 한다는 것을 어떻게 알 수 있나요? 그냥 아래와 같은 pdf 문서를 참고하여 글꼴명을 지정해주면 되나요? 20190429111921708001.txt (113.6 KB)
위 txt 파일 확장자를 수동으로 pdf로 바꿔주시면 됩니다.
일반적으로 한글에서 폰트를 설정하게 되면"대표 폰트"로 폰트를 설정하게 되며 이는 문자의 각 영역별로 어울리는 폰트 집합을 지정해둔 것을 의미합니다. 한컴오피스 2022 한/글 도움말
각 영역은 "한글, 영문, 한자, 일어, 외국어, 기호, 사용자"의 영역으로 나누어져 있으며 질문자께서 작성하신 샘플코드는 "사용자"영역에만 지정을 했기 때문에 폰트적용이 되지 않을 것으로 보였을 수도 있습니다(아마 한글문자열을 입력하셨을거라고 예상합니다)
예를 들어 대표폰트로 강낭콩을 지정하게 되면 각 영역에는
“한글” : “강남콩”
“영어” : “오이”
“한자” : “한양중고딕”
“일어” : “한양중고딕”
“외국어” : " 한양신명조"
“기호” : " 한양중고딕"
“사용자” : “명조”
가 기본으로 설정되어있으며 한글을 실행 후 대표폰트로 강낭콩을 적용한 뒤 드롭박스로 폰트 영역을 변경해보면 위에 나열한대로 바뀌는것을 확인하실 수 있습니다.
따라서 “한글 문자열” 영역에 강낭콩 폰트를 지정하려면
SetItem(“FaceNameUser”, “강낭콩”)이 아니라
SetItem(“FaceNameHangul”, “강낭콩”)로 지정했으면 아마 확인이 가능하셨을 겁니다.
하지만 일반적으로 폰트를 적용하고 다양한 문자열을 입력할 수도 있으니 폰트를 설정할때는 모든 영역에 사용하고자 하는 폰트를 같이 설정합니다.
"FaceNameUser"의 fontName으로 들어가는 인자의 값을 어떻게 알 수 있습니까?
→ 질문에서 말씀하신대로 첨부파일에 있는 목록에서 폰트명을 확인할 수 있습니다.
이 부분이 현재 한컴에서 제공하고 있는 HFT폰트 목록이며, 이 목록에 없는 폰트는 이름을 확인하기 어렵습니다.
그래서 지난번에 질문주신 옛날폰트도 이름이 확인이 안되는 부분이구요…