2015-02-04 3 views
0

TabPage 헤더에 표시되는 이미지의 화질에 문제가 있습니다. 내 원본 이미지는 투명도가있는 16x16 크기의 PNG입니다. TabPage 헤더에로드 할 때 품질이 끔찍합니다. 지금까지 내가 가졌던 최선의 방법은 32 비트 png 대신 8 비트 png를 사용하는 것입니다. 이것은 크게 도움이되지만, 품질은 여전히 ​​내가 좋아할만큼 좋지는 않지만 여전히 32 비트 png만큼 좋지 않습니다. 누구나 png 품질을 유지하는 좋은 방법이 있습니까?TabControl ImageList를 사용하여 TabPage 헤더의 이미지 품질이 낮습니다.

(왼쪽 32 비트 일본어. 32 비트 탭 헤더 오른쪽 저품질.)

enter image description here

(오른쪽에서 왼쪽. 8 비트 탭 헤더 저품질 8 비트 일본어).

enter image description here

(오른쪽에서 왼쪽. 8 비트 탭 헤더 저품질 32 비트 일본어).

enter image description here

필자는 원본 32 비트 png처럼 가능한 한 가깝게하려고합니다. 이 질문에 응답

using System.Drawing; 
using System.Windows.Forms; 

public class Form1 
{ 
    public void Form1() 
    { 
     InitializeComponent(); 

     // initialize the imagelist 
     ImageList imageList1 = new ImageList(); 
     imageList1.Images.Add("key1", Properties.Resources.Image1png); 
     imageList1.Images.Add("key2", Properties.Resources.Image2png); 

     //initialize the tab control 
     TabControl tabControl1 = new TabControl(); 
     tabControl1.Dock = DockStyle.Fill; 
     tabControl1.ImageList = imageList1; 
     tabControl1.TabPages.Add("tabKey1", "TabText1", "key1"); 
     tabControl1.TabPages.Add("tabKey2", "TabText2", "key2"); 
     this.Controls.Add(tabControl1); 
    } 
} 
+0

스냅 샷 제발 당신이 말하는 끔찍한 것을 보도록하겠습니다. – David

+0

@David - 위 이미지에 대한 링크를 추가했습니다. 감사. –

답변

1

확실하지 않음 경우, 그러나 스냅 샷을 포함하는 대답으로 게시 할 수 있습니다

나는 아래의 코드를 사용하고 있습니다.

아래 시도 할 수 있습니다 :

  1. 이미지 목록을 선택합니다;
  2. 구성 ColorDepth 속성, 그리고 "Depth32bit"에서 "Depth8bit"에서 설정

enter image description here

또는 단순히 코드에서 변경 :

imageList1.ColorDepth = ColorDepth.Depth32Bit; 
+0

제안 해 주셔서 감사합니다. 여기에 늦었고 눈이 타 오르고 있으며 순간 모든 것이 흐릿 해 보입니다. :) 나는 눈이 신선해진 아침에 더 조심스럽게 평가할 것입니다. 그리고 나서 다시 알려서 알려 드리겠습니다. –

+0

오, 이것이 이유일까요? 하하하 – David

+0

아니요, 품질이 확실히 떨어집니다. :) 나는 지난 10 분 동안이 실험을 해왔으며, 지금은 8 비트 이미지를 사용하지만 32 비트로 색 농도를 설정할 때 가장 좋은 조합이라고 생각합니다. 32 비트 색상 심도의 32 비트 이미지를 사용하면 색상 심도가 8 비트로 설정된 경우보다 이미지가 크게 수정됩니다. 내일 더 많은 테스트를하고이 스레드에 더 많은 이미지를 게시 할 것입니다. 다시 한번 감사드립니다. –

0

을의 ImageList에서 (연관된 TabControl), 모든 이미지를 제거하고 같은 순서로 다시 추가하십시오.

그것이 나에게 맞는 유일한 방법입니다.

관련 문제