48x48 및 256x256 Vista PNG 버전 (32x32 및 16x16 버전 포함)이 포함 된 ico 파일이 있습니다. 적절한 내부 크기 버전을 사용하여 아이콘을 그립니다.WinForms .NET 2.0 : 적절한 크기의 아이콘을 페인트하는 방법?
Icon ico = Properties.Resources.TestIcon;
e.Graphics.DrawIcon(ico, new Rectangle(0, 0, 48, 48));
e.Graphics.DrawIcon(ico, new Rectangle(48, 0, 256, 256));
그러나 그들은 각각 경우 48x48과 256 × 256까지 불어 32 × 32 버전을 그릴 :
은 내가 시도했습니다.
Icon ico = Properties.Resources.TestIcon;
e.Graphics.DrawIconUnstretched(ico, new Rectangle(0, 0, 48, 48));
e.Graphics.DrawIconUnstretched(ico, new Rectangle(48 0, 256, 256));
하지만 그는 32 × 32 버전은 무연 신 그리기 :
은 내가 시도했습니다.
이 나는 시도했다 :
Icon ico = Properties.Resources.TestIcon;
e.Graphics.DrawImage(ico.ToBitmap(), new Rectangle(0, 0, 48, 48));
e.Graphics.DrawImage(ico.ToBitmap(), new Rectangle(48, 0, 256, 256));
하지만 그는 32 × 32 아이콘의 신장 된 버전을 그립니다.
아이콘을 적절한 크기로 그리게하려면 어떻게해야합니까?
또한 16x16 버전을 사용하여 그립니다.
Icon ico = Properties.Resources.TestIcon;
e.Graphics.DrawIcon(ico, new Rectangle(0, 0, 16, 16));
e.Graphics.DrawIconUnstretched(ico, new Rectangle(24, 0, 16, 16));
e.Graphics.DrawImage(ico.ToBitmap(), new Rectangle(48, 0, 16, 16));
을하지만 모든 사람은 32 × 32 버전은 16 × 16로 농작물 Unstretched
호출을 제외하고, 축소 사용 : 내가 시도했습니다.
아이콘을 적절한 크기로 그리게하려면 어떻게해야합니까? 당신은 256 * 256 크기가 작동하지 않습니다 원하는 크기로 아이콘의 사본을 구성하는 schnaader의 제안에 따라
. (가)이이 일을 다음 동안
e.Graphics.DrawIcon(
new Icon(ico, new Size(256, 256)),
new Rectangle(0, 0, 256, 256));
: 즉 (가 경우 48x48 아이콘의 축소 버전을 사용)이 작동하지 않습니다 다음
e.Graphics.DrawIcon(
new Icon(ico, new Size(16, 16)),
new Rectangle(0, 0, 16, 16));
e.Graphics.DrawIcon(
new Icon(ico, new Size(48, 48)),
new Rectangle(0, 0, 48, 48));
당신은 두 가지 제안 된 솔루션이 당신을 위해 작동하지 않는다고 댓글을 달았습니다. 그러나 시간이 지났습니다. 적절한 아이콘 크기를 표시하는 것을 관리 했습니까? 나는 지금 비슷한 상황에 관심이 있습니다. –