일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- CS
- 백준
- tipssoft
- 포인터
- Visual Studio
- Javascript
- 알고리즘
- 리뷰
- Kotlin
- Windows
- 연산자
- 배열
- 프로그래밍
- c#
- Tips강좌
- Direct2D
- c
- Programming
- 김성엽
- 티스토리
- Win32
- 이지스퍼블리싱
- 함수
- VS ERROR
- Tips프로그래밍강좌
- 문법
- doit코틀린프로그래밍
- c++
- 지식나눔강좌
- Desktop
- Yesterday
- Today
- Total
F.R.I.D.A.Y.
DirectWrite - IDWriteFactory 본문

Direct2D에서 텍스트 출력을 시행하기 전, 필요한 리소스를 생성할 수 있는 인터페이스
Index
- IDWriteFactory
- CreateTextFormat
- 함수 원형
- fontFamilyName
- fontCollection
- fontWeight
- fontStyle
- fontStretch
- fontSize
- localeName
- textFormat
- 함수 원형
- CreateTextFormat
IDWriteFactorycopy^
IUnknown 인터페이스로부터 상속받았기 때문에, 종종 IUnknown 으로 캐스팅해 넘길 때가 있습니다.
CreateTextFormatcopy^
텍스트 레이아웃을 위한 객체를 생성합니다. 여기에서 텍스트 레이아웃이란 텍스트를 그릴 영역의 크기를 의미합니다. 만일 이 레이아웃의 크기보다 그리게 되는 텍스트의 크기가 큰 경우에는 알맞게 조정됩니다. 단, 영역 외로 그리지 못하게 했다면 해당 영역에 그려지는 부분만 화면에 노출됩니다.

이런 식의 텍스트를 그린다고 했을 때, 빨간 색 영역만큼을 텍스트 레이아웃으로 정하게 한 뒤, 문자열을 그리게 하면, ex의 일부만 나오게 되는 것입니다.

이렇게 말이죠.
함수 원형copy^
HRESULT CreateTextFormat(
WCHAR const *fontFamilyName,
IDWriteFontCollection *fontCollection,
DWRITE_FONT_WEIGHT fontWeight,
DWRITE_FONT_STYLE fontStyle,
DWRITE_FONT_STRETCH fontStretch,
FLOAT fontSize,
WCHAR const *localeName,
IDWriteTextFormat **textFormat
);
fontFamilyNamecopy^
폰트 이름입니다.
fontCollectioncopy^
만들게 되는 폰트를 저장할 컬렉션인 듯하다.[1]
fontWeightcopy^
fontStylecopy^
fontStretchcopy^
폰트의 폭, 스타일, 늘이기 정도[2]
fontSizecopy^
폰트의 크기. DIPs 를 기준으로 생성한다. 물리 픽셀 단위가 아니다. 따라서 프로그램을 DIPs에 반응하도록 구성하지 않았다면 아래 포스트에서 제기하는 추가 문제에서 크기가 달라지는 상황이 발생할 수 있다.
GetWindowRect vs GetClientRect
GetWindowRect와 GetClientRect 함수의 차이를 알아봅니다. 윈도우의 구성 윈도우는 다음과 같이 구성되어 있습니다. Windows에서 제공하는 테두리와 실제 개발자가 작성하고 관리하는 클라이언트 영역,
pang2h.tistory.com
localeNamecopy^
지역명이다. 한국은 ko-kr로 설정하면 될 듯.
textFormatcopy^
해당 함수로 만들어진 텍스트 레이아웃을 저장할 포인터의 주소를 가진다.
'DEV > Direct2D' 카테고리의 다른 글
Direct2D - WIC를 이용해 이미지 그리기 (1) | 2021.04.24 |
---|---|
Direct2D - WIC 비트맵 그리기 사전 작업 (0) | 2021.04.24 |
DirectWrite - DirectWrite 되짚기 (0) | 2021.04.14 |
DirectWrite - 텍스트 출력하기 2 (0) | 2021.04.13 |
DirectWrite - 텍스트 출력하기 1 (2) | 2021.04.10 |