{{|
|}}
1. Print in MFC ¶
document ์์ ์ ์ฅ๋ ๋ด์ฉ์ ์ถ๋ ฅํ๋ ๊ฒ์ view ์ ์ญํ ์ด๋ค. ์ด ๊ณผ์ ์ ์๋นํ ๋ณต์กํ๋ค.
์ถ๋ ฅ์ ๊ตฌํํ๊ธฐ ์ํด์๋ view ํด๋์ค๋ก ๋ถํฐ ์์๋ฐ์ ์๋ง์ ํจ์๋ค์ ์ค๋ฒ๋ผ์ด๋ฉ ํด์ผํ๋ค.
์ถ๋ ฅ์ ๊ตฌํํ๊ธฐ ์ํด์๋ view ํด๋์ค๋ก ๋ถํฐ ์์๋ฐ์ ์๋ง์ ํจ์๋ค์ ์ค๋ฒ๋ผ์ด๋ฉ ํด์ผํ๋ค.
2. ํ๋ฆฐํธ ๋ก์ง๊ณผ ๊ด๊ณ๋ ํจ์๋ค ¶
- CDC::StartDoc()
- CView::OnPrepareDC()
๋ทฐํฌํธ ์์ ์ ๋ณ๊ฒฝ. DC์์ฑ๋ค์ ์ค์
- CDC::StartPage()
- CView::OnPrint()
ํค๋/๊ผฌ๋ฆฌ๋ง์ ์ถ๋ ฅํ๋ค. ํ์ฌ ํ์ด์ง๋ฅผ ์ถ๋ ฅํ๋ค.
- CView::OnEndPrinting()
GDI์์ ํด์
๋ทฐํด๋์ค์ 5๊ฐ์ ๋ฉค๋ฒํจ์๋ ํ๋ก๊ทธ๋๋จธ๊ฐ ์ฌ์ ์ ํด์ผํ๋ค. ์ต์ํ 5๊ฐ์ค์์ OnPreparePrinting(), OnPrepareDC(), OnPrint()๋ ๊ตฌํํด์ผํ๋ค.
ํ๋ฆฐํฐ์ ๋ํ ๋ฐ์ดํฐ์ ์ถ๋ ฅ์ ๋์คํ๋ ์ด์ ์ถ๋ ฅํ๋ ๊ฒ๊ณผ ๋์ผํ ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ง๋ค. (GDI๊ฐ ์ฅ์น ๋ ๋ฆฝ์ ์ผ๋ก ๋ง๋ค์ด์ ธ ์๊ธฐ ๋๋ฌธ์ด๋ค.)
ํ๋ฆฐํฐ ์์ ๊ณผ ๊ด๊ณ๋๋ ๋ชจ๋ ํจ์๋ CPrintInfo ํ์ ๊ฐ์ฒด ํฌ์ธํฐ๊ฐ ์ธ์๋ก ์ ๋ฌ๋๋ค. ์ด ๊ฐ์ฒด๋ ํ๋ฆฐํฐ ์์ ์ ๊ด๋ฆฌํ๋ ํจ์๋ค์ ์ฐ๊ฒฐ์์ผ์ค๋ค.
3. CPrintInfo ¶
ํ๋ฆฐํธ ์์
์์ ๊ธฐ์ด์ ์ธ ์ญํ ์ ํ๋ค. ํ๋ฆฐํธ job ์ ๋ณด, ํ๋ฆฐํธ ์์
์ํฉ์ ๋ํ ๋ด์ฉ์ด ์ ์ฅ๋๋ค.
๋ชจ๋ ๋ฉค๋ฒ ๋ณ์๋ public ๋ณ์๋ก ๋ค์๊ณผ ๊ฐ๋ค.
๊ธฐํ public ํจ์๋ ์ ๊ณตํ๋ค. ์ ๊ธฐ ๊ท์ฐฎ๋ค. MSDN ์ฐพ์๋ณด๊ธธ;;
๋ชจ๋ ๋ฉค๋ฒ ๋ณ์๋ public ๋ณ์๋ก ๋ค์๊ณผ ๊ฐ๋ค.
m_pPD | CPrintDialog ๊ฐ์ฒด์ ๋ํ ํฌ์ธํฐ. ์ถ๋ ฅ ๋ํ ์์๋ฅผ ๋ํ๋ธ๋ค. |
m_bDirect | ์ถ๋ ฅ์์ ์ด ํ๋ฆฐํธ ๋ํ์์๋ฅผ ๊ฑด๋๋ฐ๋ฉด TRUE ๊ทธ์ธ์๋ FALSE |
m_bPreview | Print Preview ๊ฐ ์ ํ๋๋ฉด TRUE, ์๋๋ฉด FALSE |
m_bContinuePrinting | TRUE๋ก ์ค์ ๋๋ฉด ์ถ๋ ฅ ๋ฃจํ๋ฅผ ๊ณ์ํ๋ค. FALSE๊ฐ ๋๋ฉด ํ๋ฆฐํธ ์์ ์ข ๋ฃ. |
m_nCurPage | UINTํ์์ ๊ฐ๋ ๊ฐ์ผ๋ก์ ํ์ฌ ํ์ด์ง ๋ฒํธ๋ฅผ ์ ์ฅ |
m_nNumPreviewPages | UINT preview ์ฐ๋๋์ฐ์ ๋ํ๋ ์๋ ํ์ด์ง๋ค์ ๋ฒํธ 1 or 2 |
m_lpUserData | LPVOID ํ์์ ๊ฐ๋๋ค. ์์ฑํ ๊ฐ์ฒด์ ๋ํ ํฌ์ธํฐ๋ฅผ ์ ์ฅํ๋ค. ์ถ๋ ฅ์์ ์ ๊ดํ ์ถ๊ฐ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ ์๋๋ก ํ๋ค. CPrintInfo ๊ฐ์ฒด์ ์ฐ๊ณ ์ํฌ ์ ์๋๋ก ํ๋ค. |
m_rectDraw | CRect ๊ฐ์ฒด. ํ์ด์ง์์ ์ฌ์ฉ ๊ฐ๋ฅํ ์์ญ์ ๋ ผ๋ฆฌ ์ขํ๋ก ์ ์ ํ๋ค. |
m_strPageDesc | CString ๊ฐ์ฒด๋ก ํ๋ฆฐํธ preview ๋์์ ํ์ด์ง ๋ฒํธ๋ฅผ ๋ํ๋ด๊ธฐ ์ํด ํ๋ ์ ์์์ ์ฌ์ฉ๋๋ ํฌ๋งท ๋ฌธ์์ด์ ํฌํจํ๋ค. |
m_bDocObject | ์์ฉํ๋ก๊ทธ๋จ์ด lPrint ์ธํฐํ์ด์ค๋ฅผ ํตํ์ฌ ์ถ๋ ฅํ๋ฉด TRUE๋ก ์ค์ ๋๋ฉฐ, ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ์๋ FALSE์ด๋ค. |
m_dwFlags | m_bDocObject๊ฐ TRUE์ผ๋๋ง ์ ํธ. DWORD๊ฐ์ผ๋ก lPrint::Print์ ์ ๋ฌ๋ ํ๋๊ทธ |
m_nOffsetPage | m_bDocObject๊ฐ TRUE์ผ๋๋ง ์ ํจ. lPrint job ์์์ ์ฒซ๋ฒ์งธ ํ์ด์ง offset์ ์ค๋ค. |
๊ธฐํ public ํจ์๋ ์ ๊ณตํ๋ค. ์ ๊ธฐ ๊ท์ฐฎ๋ค. MSDN ์ฐพ์๋ณด๊ธธ;;