메인 폼에 두 개의 TJvImage 구성 요소가 있습니다. 하나는 부분적으로 투명한 PNG 파일에서 디자인 타임에로드됩니다. 다른 하나는 첫 번째와 앞에서보다 작습니다. 런타임에 부분적으로 투명한 다른 PNG 파일로로드됩니다.Delphi 2007 - PNG 파일에서 TJvImage를로드하면 투명성이 떨어집니다.
JvImage1.Picture.LoadFromFile ('Logo.png') ;
JvImage1.Transparent가 TRUE로 설정됩니다. 문제는 간단합니다. 작은 이미지가 알파 채널을 무시하여 렌더링됩니다. 즉, 배경 이미지를 펀치 아웃합니다.
디자인 타임에 두 이미지를 모두로드 할 때 발생하지 않습니다. 두 가지 모두 양식에서 부분적으로 투명하게 표시되며 프로그램을 실행할 때 올바르게 표시됩니다.
실제 딜레마는 문제를 보여주기 위해 작성된 최소 테스트 프로그램이 이 아니지만이 문제를 나타내지 만 응용 프로그램 고유의 동일한 코드가 작동하지 않는다는 사실입니다.
동작에 영향을 줄 수있는 기본 폼에 대한 것이 있습니까?
문제를 격리하는 것이 좋습니다. 실패 할 때까지 코드를 제거하십시오. dfm 파일을보십시오. Transparent를 True로 설정 한 이유는 무엇입니까? 이미지에 알파 채널이 있습니다. –
투명성을 얻으려면'투명 '을 거짓으로 설정해야한다고 상상조차하지 못했습니다. 이제 알았어! (도움말에는 "투명도를 true로 설정하면 TImage 개체 뒤의 개체가 이미지의 배경을 통해 표시됩니다. 투명화를 false로 설정하면 이미지의 배경이 불투명 해집니다"). 불행히도 Transparent를 false로 설정해도 문제가 해결되지 않습니다. 프로젝트를 만들고 문제의 전체 내용을 붙여 넣으려고했는데 이미지가 잘 표시됩니다. 내 앞에 약간의 일이있다. – rossmcm