
27.02.2024, 20:46
|
|
Познавший АНТИЧАТ
Регистрация: 27.11.2020
Сообщений: 1,431
С нами:
2874035
Репутация:
183
|
|
hola vpn + chat gpt (40 рублей аккаунт стоит личный и меньше) =
C++:
Код:
#include
IDWriteFactory
*
dwriteFactory
;
IDWriteTextFormat
*
textFormat
;
// Инициализация DirectWrite
HRESULT
InitDirectWrite
(
)
{
if
(
FAILED
(
DWriteCreateFactory
(
DWRITE_FACTORY_TYPE_SHARED
,
__uuidof
(
IDWriteFactory
)
,
reinterpret_cast
(
&
dwriteFactory
)
)
)
)
{
return
E_FAIL
;
}
if
(
FAILED
(
dwriteFactory
->
CreateTextFormat
(
L
"Arial"
,
nullptr
,
DWRITE_FONT_WEIGHT_NORMAL
,
DWRITE_FONT_STYLE_NORMAL
,
DWRITE_FONT_STRETCH_NORMAL
,
12.0f
,
L
"en-US"
,
&
textFormat
)
)
)
{
return
E_FAIL
;
}
return
S_OK
;
}
// Функция отрисовки текста
void
DrawText
(
IDirect3DDevice9
*
m_pDevice
,
const
wchar_t
*
text
,
int
x
,
int
y
,
D3DCOLOR color
)
{
textFormat
->
SetTextAlignment
(
DWRITE_TEXT_ALIGNMENT_LEADING
)
;
textFormat
->
SetParagraphAlignment
(
DWRITE_PARAGRAPH_ALIGNMENT_NEAR
)
;
RECT rect
=
{
x
,
y
,
0
,
0
}
;
textFormat
->
SetTextAlignment
(
DWRITE_TEXT_ALIGNMENT_LEADING
)
;
m_pDevice
->
BeginScene
(
)
;
// Установка параметров рендеринга текста (если необходимо)
// ...
// Отрисовка текста
dwriteFactory
->
CreateTextLayout
(
text
,
wcslen
(
text
)
,
textFormat
,
200.0f
,
50.0f
,
nullptr
,
nullptr
,
nullptr
)
;
m_pDevice
->
EndScene
(
)
;
}
C++:
Код:
//Затем в функции myEndScene вы можете вызвать DrawText так:
HRESULT WINAPI
myEndScene
(
IDirect3DDevice9
*
m_pDevice
)
{
DrawText
(
m_pDevice
,
L
"Hello, DirectX!"
,
100
,
100
,
D3DCOLOR_ARGB
(
255
,
255
,
255
,
255
)
)
;
return
oEndScene
(
m_pDevice
)
;
}
//Этот код предполагает, что InitDirectWrite уже был вызван ранее для инициализации DirectWrite.
|
|
|