Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.135.246.193] |
|
Сообщ.
#1
,
|
|
|
Здравствуйте. Возникла проблема использования своего шрифта в андроид. Использую Delphi xe8, делаю как сказано тут http://www.vr-online.ru/blog/fire-monkey-s...rilozhenii-9416
Создал кнопку и лэйбл, в свойствах указал свой шрифт для них, шрифт поставил в операционную систему(windows 7) и придеплоил, указал в деплое /assets/internal. Взял рабочий FMX.FontGlyphs.Android.pas, закинул его в папку проекта, так же как и шрифт. Добавил в uses FMX.FontGlyphs.Android, FMX.FontGlyphs,System.IOUtils. Запускаю на компе все работает, как только запускаю на планшете(android 7.0), все работает, но шрифт отрисовывается обычный...Пробовал вывести на лейбл название шрифта Label.TextSetting.Font.Family, выводит как раз название моего шрифта, но не отрисовывает его на планшете. Обсмотрел много материала, везде этот метод вроде как работает, но не у меня, в чем может быть подвох? unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls, FMX.Controls.Presentation, FMX.FontGlyphs.Android, FMX.FontGlyphs,System.IOUtils; type TForm1 = class(TForm) Button1: TButton; Label1: TLabel; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.fmx} procedure TForm1.Button1Click(Sender: TObject); begin label1.Text:=button1.Text; end; end. В FMX.FontGlyphs.Android все как надо вроде, файл взял с примера http://delphifmandroid.blogspot.com/2015/01/true-type.html //Typeface := TJTypeface.JavaClass.create(FamilyName, TypefaceFlag); FontFile := TPath.GetDocumentsPath + PathDelim + CurrentSettings.Family + '.ttf'; if FileExists(FontFile) then Typeface := TJTypeface.JavaClass.createFromFile(StringToJString(FontFile)) else Typeface := TJTypeface.JavaClass.Create(FamilyName, TypefaceFlag); |