728x90
728x170

자마린에서 기본 폰트가 아닌 다른 폰트를 사용하는 방법입니다.

 

우선 폰트를 다운 받습니다.

전 타이포_어울림체를 다운받았습니다.(무료)

 

폰트파일을 아래처럼 위치시킵니다.

(폴더구성은 다르게 해도 상관없습니다.)

 

 

각 폰트 속성에서 "포함리소스"(Embedded Resource) 를 선택합니다.

 

 

이제 준비는 끝났습니다.

App.xaml.cs 로 들어가 아래 처럼 namespace 위쪽에 assembly 를 정의합니다.

(참고로  Xamarin.forms  구버전이면 동작하지 않습니다.)

 

[assembly: ExportFont("Typo_EoulrimL.ttf", Alias = "RegularFont")]

[assembly: ExportFont("Typo_EoulrimM.ttf", Alias = "MediumFont")]

[assembly: ExportFont("Typo_EoulrimB.ttf", Alias = "BoldFont")]

 

 

 

 

이제 xaml 단에서 아래처럼 위에서 정의한 Alias 로 FontFamily 에 지정해서 쓰면됩니다.

(여러가지 방법이 있지만 이 방법이 저한테는 가장 간단한거 같습니다.)

 

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"

             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"

             xmlns:local="clr-namespace:FontXam"

             x:Class="FontXam.MainPage">

 

    <StackLayout>

        <Label Text="안녕하세요(기본)" FontSize="20"

           HorizontalOptions="Center"

           VerticalOptions="CenterAndExpand" />

        <Label Text="안녕하세요(BoldFont)"

           HorizontalOptions="Center" FontSize="20"

               FontFamily="BoldFont"

           VerticalOptions="CenterAndExpand" />

        <Label Text="안녕하세요(MediumFont)"

           HorizontalOptions="Center" FontSize="20"

               FontFamily="MediumFont"

           VerticalOptions="CenterAndExpand" />

        <Label Text="안녕하세요(RegularFont)"

           HorizontalOptions="Center" FontSize="20"

               FontFamily="RegularFont"

           VerticalOptions="CenterAndExpand" />

    </StackLayout>

 

</ContentPage>

 

 

(결과)

iOS

 

 

Android

 

소스

https://github.com/kei-soft/FontXam

 

 

 

728x90
그리드형
Posted by kjun
,