<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=%EB%A0%88%EB%B0%8D%EC%A6%88%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%2F%EA%B7%B8%EB%A6%AC%EA%B8%B0DC</id>
	<title>레밍즈프로젝트/그리기DC - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=%EB%A0%88%EB%B0%8D%EC%A6%88%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%2F%EA%B7%B8%EB%A6%AC%EA%B8%B0DC"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%A0%88%EB%B0%8D%EC%A6%88%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8/%EA%B7%B8%EB%A6%AC%EA%B8%B0DC&amp;action=history"/>
	<updated>2026-05-15T15:18:53Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EB%A0%88%EB%B0%8D%EC%A6%88%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8/%EA%B7%B8%EB%A6%AC%EA%B8%B0DC&amp;diff=50053&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:29, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EB%A0%88%EB%B0%8D%EC%A6%88%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8/%EA%B7%B8%EB%A6%AC%EA%B8%B0DC&amp;diff=50053&amp;oldid=prev"/>
		<updated>2021-02-07T05:29:22Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[레밍즈프로젝트]]에서 사용하게 될 그리기 클래스.&lt;br /&gt;
TODO. 출력 인터페이스로 상속 받아오기&lt;br /&gt;
TODO. 비트맵 정렬 상태 조정 마무리&lt;br /&gt;
----&lt;br /&gt;
 #define BITMAP_OPT_HREVERSE 1&lt;br /&gt;
 #define BITMAP_OPT_VREVERSE 2&lt;br /&gt;
 #define BITMAP_OPT_HALIGN_CENTER 3&lt;br /&gt;
 #define BITMAP_OPT_VALIGN_CENTER 4&lt;br /&gt;
 &lt;br /&gt;
 class CmyDouBuffDC&lt;br /&gt;
 {&lt;br /&gt;
 private:&lt;br /&gt;
 	CRect m_rt;&lt;br /&gt;
 	CDC* m_pDC;&lt;br /&gt;
 	CDC* m_pMemDC;&lt;br /&gt;
 	CBitmap m_bmp;&lt;br /&gt;
 &lt;br /&gt;
 	//Bitmap Draw Option&lt;br /&gt;
 	int m_Vreverse;&lt;br /&gt;
 	int m_Hreverse;&lt;br /&gt;
 	float m_Valign;&lt;br /&gt;
 	float m_Halign;&lt;br /&gt;
 	void init(){&lt;br /&gt;
 		 resetBmpOpt();&lt;br /&gt;
 	}&lt;br /&gt;
 public:&lt;br /&gt;
 	CmyDouBuffDC(CDC *pDC, CRect rt){&lt;br /&gt;
 		init();&lt;br /&gt;
 		m_rt = rt;&lt;br /&gt;
 		m_pDC = pDC;&lt;br /&gt;
 		m_pMemDC = new CDC();&lt;br /&gt;
 		m_pMemDC-&amp;amp;gt;CreateCompatibleDC(m_pDC);&lt;br /&gt;
 		m_bmp.CreateCompatibleBitmap(m_pDC, m_rt.Width(), m_rt.Height());&lt;br /&gt;
 		m_pMemDC-&amp;amp;gt;SelectObject(&amp;amp;amp;m_bmp);&lt;br /&gt;
 		m_pMemDC-&amp;amp;gt;Rectangle(0, 0, m_rt.Width(), m_rt.Height());&lt;br /&gt;
 	}&lt;br /&gt;
 	~CmyDouBuffDC(void){&lt;br /&gt;
 		m_pDC-&amp;amp;gt;BitBlt(0, 0, m_rt.Width(), m_rt.Height(), m_pMemDC, 0, 0, SRCCOPY);&lt;br /&gt;
 		m_pMemDC-&amp;amp;gt;DeleteDC();&lt;br /&gt;
 		m_bmp.DeleteObject();&lt;br /&gt;
 		delete m_pMemDC;&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	CDC* getpMemDC(){return m_pMemDC;}&lt;br /&gt;
 &lt;br /&gt;
 	void DrawBmp(UINT ITEM, int x, int y, int kRop=SRCCOPY){&lt;br /&gt;
 		//Load&lt;br /&gt;
 		CDC BitMapDC;&lt;br /&gt;
 		BitMapDC.CreateCompatibleDC(m_pMemDC);&lt;br /&gt;
 &lt;br /&gt;
 		CBitmap newBitmap, *oldBitmap;&lt;br /&gt;
 		newBitmap.LoadBitmap(ITEM);&lt;br /&gt;
 		oldBitmap = (CBitmap*)BitMapDC.SelectObject(&amp;amp;amp;newBitmap);&lt;br /&gt;
         		&lt;br /&gt;
 		BITMAP m_bitmapInfo;&lt;br /&gt;
 		newBitmap.GetBitmap(&amp;amp;amp;m_bitmapInfo);&lt;br /&gt;
         &lt;br /&gt;
 		m_pMemDC-&amp;amp;gt;StretchBlt(x-m_bitmapInfo.bmWidth*m_Halign, y-m_bitmapInfo.bmHeight*m_Valign,&lt;br /&gt;
 			(m_bitmapInfo.bmWidth)*m_Hreverse, (m_bitmapInfo.bmHeight)*m_Vreverse,&lt;br /&gt;
 			&amp;amp;amp;BitMapDC, 0, 0, m_bitmapInfo.bmWidth, m_bitmapInfo.bmHeight, kRop);&lt;br /&gt;
 		&lt;br /&gt;
 		//회복&lt;br /&gt;
 		BitMapDC.SelectObject(oldBitmap);&lt;br /&gt;
 		newBitmap.DeleteObject();&lt;br /&gt;
 	}&lt;br /&gt;
 	void setBmpOpt(int kBitMapOption){&lt;br /&gt;
 		switch(kBitMapOption){&lt;br /&gt;
 			case BITMAP_OPT_VALIGN_CENTER:&lt;br /&gt;
 				m_Valign = 0.5;&lt;br /&gt;
 				break;&lt;br /&gt;
 			case BITMAP_OPT_HALIGN_CENTER:&lt;br /&gt;
 				m_Halign = 0.5;&lt;br /&gt;
 				break;&lt;br /&gt;
 			case BITMAP_OPT_HREVERSE:&lt;br /&gt;
 				m_Hreverse = -1;&lt;br /&gt;
 				break;&lt;br /&gt;
 			case BITMAP_OPT_VREVERSE:&lt;br /&gt;
 				m_Vreverse = -1;&lt;br /&gt;
 				break;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	void resetBmpOpt(){&lt;br /&gt;
 		m_Vreverse=1;&lt;br /&gt;
 		m_Hreverse=1;&lt;br /&gt;
 		m_Valign=0;&lt;br /&gt;
 		m_Halign=0;&lt;br /&gt;
 	}&lt;br /&gt;
 	void DrawMaskBmp(UINT MASKITEM, UINT IMGITEM, int x, int y){&lt;br /&gt;
 		this-&amp;amp;gt;DrawBmp(MASKITEM, x, y, SRCAND);&lt;br /&gt;
 		this-&amp;amp;gt;DrawBmp(IMGITEM, x, y, SRCPAINT);&lt;br /&gt;
 		return;&lt;br /&gt;
 	}&lt;br /&gt;
 };&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>