2010-11-28 2 views
2

다르게 렌더링 :WPF : 글꼴 (크기) 코드는 꽤 많이 간단 XP와 비스타/7

<TextBlock TextAlignment="Center" Text="{Binding TimeAgo}" Foreground="White" FontSize="12" FontFamily="Calibri" Background="Transparent"/> 

는 지금까지 내가 아는 한, WPF는 돋움 글꼴을 기본적으로 지원합니다. 그러나, 글꼴 XP에서 다르게 렌더링 및 비스타/7 :

XP : alt text

비스타 : 내 주요 문제는 글꼴의 크기입니다 alt text

은 (그것은 렌더링 XP에 더 큰) 이후 나는 텍스트를위한 공간이 한정되어있다.

현재 UseLayoutRounding = "True"를 사용하고 있지만 제거해도 아무런 차이가 없습니다.

<ResourceDictionary Source="/PresentationFramework.Aero, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=MSIL;component/themes/aero.normalcolor.xaml" /> 

을하지만 그것은 또한 (글꼴의 크기의 측면에서) 차이를하지 않았다 제거 : 나는 또한 사용하고 있습니다.

+0

XP와 7이 같은 시스템에 있습니까? 그렇다면 동일한 해상도를 사용하고 있습니까? –

+0

Vista SP2 @ 1920x1200, XP SP3 @ 1280x1024. 둘 다 .NET v4를 실행 중입니다 – sagibb

답변

8

WPF는 모든 글꼴을 기본적으로 지원하지 않으므로 컴퓨터에 설치된 글꼴 만 사용할 수 있습니다.

더 큰 텍스트는 Calibri가 아닙니다 (Arial 또는 Tahoma처럼 보입니다), "g"모양이 같은 글꼴이 아닌 것을 볼 수 있습니다.

사용자 또는 다른 소프트웨어 (예 : Office 2007 이상)가 먼저 설치 한 경우에만 XP에서 Calibri를 사용할 수 있습니다.

+0

"g"모양에 잘 나타납니다. 나는 그것을 완전히 놓쳤다. – ChrisF

+0

아, 나머지 어셈블리와 함께 사용하는 쉬운 방법이 있습니까? – sagibb

+2

@tutipute - 일반적으로 앱을 사용하여 글꼴을 배포하는 라이센스를 구입해야합니다 (자신의 앱만 해당). Calibri에 대한 규칙을 모릅니다. 글꼴을 포함 할 수있는 권한이있는 경우 단계 : http://msdn.microsoft.com/en-us/library/ms753303.aspx 또는 Blend : http://msdn.microsoft.com/ko-kr/library/cc296385에서 원하는 경우. aspx – Nir