3

フォントサイズ14のテキストがあります。
小さい画面では表示されますが、大きい画面では小さくなります。
これをどのように処理しますか?
アンドロイドではSP、画面に応じてフォントサイズを調整するものがあります。
Windows 8にこれに似たものはありますか?

4

3 に答える 3

1

XAMLを使用していると思いますか?

したがって、次のようなものから始める必要があります。

<Page.Resources>
    <x:Double x:Key="MyFontSize" />
    <Style TargetType="TextBlock" x:Name="StandardText">
        <Setter Property="FontSize" Value="{StaticResource MyFontSize}" />
    </Style>
</Page.Resources>

<TextBlock Style="{StaticResource StandardText}">Hello World</TextBlock>

次に、コードビハインドに次のようなものがあります。

Double _FontSize;
if (Windows.UI.ViewManagement.ApplicationView.Value
    == Windows.UI.ViewManagement.ApplicationViewState.FullScreenPortrait)
{
    // based on portrait
    if (this.RenderSize.Height > 2000)
        _FontSize = 30;
    if (this.RenderSize.Height > 1000)
        _FontSize = 20;
    else
        _FontSize = 10;
}
else
{
    // based on landscape
    if (this.RenderSize.Height > 1500)
        _FontSize = 30;
    if (this.RenderSize.Height > 1000)
        _FontSize = 20;
    else
        _FontSize = 10;
}
this.Resources["MyFontSize"] = _FontSize;

アプリの読み込み時に検出したものは、ユーザーがモニターを変更しない限り、常に残ります!

于 2012-10-05T15:18:43.970 に答える
1

これはまさにあなたが望むことをします。

<Viewbox>
    <TextBlock>Hello World</TextBlock>
</Viewbox>
于 2013-01-15T18:05:04.360 に答える
1

私はこれについて研究をしていました。私は2つの異なることを知るようになりました。1 つはビュー ボックスで、もう 1 つは論理 DPI です。

于 2012-10-07T20:00:46.327 に答える