Fa مشکل در استفاده از Install Font

honarenab

Member
سلام به همه دوستان

من در یک پروژه برای سرعت بیشتر لود صفحات ، هر بخش رو جداگانه به صورت یک فایل آماده کردم و در واقع برای اتصال بخش های مختلف از دستور run another project در همان صفحه استفاده کردم.

حالا با این شرایط مجبور شدم در صفحه ابتدایی 8 بخش از 14 بخش اصلی پروژه از دستور install font استفاده کنم تا برای نمایش متون داخل آن ها یک فونت فارسی رو (به دو صورت ساده و بولد) نصب کنه. اما این مسئله باعث شده که لود شدن بخش ها خیلی طول بکشه و از وقتی که کاربر روی آیکون یک قسمت کلیک می کنه تا وقتی که باز می شه چند ثانیه طول میکشه.

حالا سئوالم اینجاست که آیا راه بهتری برای حل این مشکل وجود داره؟

مثلا میشه پروژه خودش بررسی کنه که آیا این فونت روی کامپیوتر کاربر هست یا نه، و اگه نبود نصبش کنه. یا یک روش دیگه؟

ممنون میشم اگه راهنمایی بفرمایید.
 

loo30fer

کاربر متخصص مولتی مدیا بیلدر
بله دوست عزیز با این کد میتونید چک کنید که فونت مورد نظر نصب هست یا نه اگر نصب نبود اون رو نصب کنید ولی همیشه install Font یک مشکلاتی رو به همراه داره مثلا بعد از نصب فونتتون تا پوشه فونت ویندوز باز نشه و یا سیستم رو ریستارت نشه تغییر فونت ها تو برنامه شما اعمال نمیشه , من بهتون پیشنهاد میکنم نوشته ها رو تو فتوشاپ به همراه ماسکش طراحی کنید تا تو برنامتون فقط نوشته هاتون نمایش داده بشه اگه میخواین حجم پروژتون کم بشه میتونید این عکسها رو external ذخیره کنید که عکسهاتون بیرون از پروژه لود بشه یا خودتون با دستور RaplaceImage انها رو تو برنامه نمایش بدین
کد:
PathFont$ = '<Windows>\Fonts\BJadid.ttf'
FileExist("PathFont$","i")
If (i<>1) Then
  InstallFont("PathFont$")
End
 

ali guard

Member
سلام با نضر من بیهتر هست فونتت بریزید تو سیستم كابر با این كد با اولین اجرای برنامه‌ فونت روی سیستم نصب میشه‌ برای بار های بادی جیك میكند اگر نصب بود دیكه‌ بیخیال میشه‌ یانی روی هر سیستمی یك بار اجرا میشه‌ تا زمانی اون فونت باك میشه‌

کد:
font$='SFANTEZY.TTF'
address1$=<SrcDir>+font$
address2$='C:\Windowsa\Fonts\\' + font$
FileExist("address2$","checkfont")
If (checkfont=1) Then
Else
SysCommand("CopyFile","address1$,address2$")
End
 

Corovarice

Active Member
به نظر من بهتره اسم های فونت هارو در یک فایل متنی به صورت ستونی با فرمتش ذخیره کنین. مثلا Arial.ttf . بعد از این اسکریپت استفاده کنین که آسون تر بشه .فرض کنیم اسم فایل متنی FontList هست:


کد:
SongListLoad("<SrcDir>\FontList.txt","TXT")
کد:
Tot=CBK_NumInList
کد:
For i=1 To Tot
کد:
LoadText("Font$","<List>i")
کد:
Add$='<SrcDir>\Fonts\'+Font$
کد:
Path$='<Windows>\Font\'+Font$
کد:
FileExist("Path$","Check")
کد:
If Check=1 Then
کد:
InstallFont("Add$")
کد:
End
کد:
Next i
برای اینکه یه کاری کنم که کد هایی که بالا نوشتم به هم بچسبن چیکار کنم ؟:-?
 

mbsa

Active Member
سلام
با این روشی که دوستان اشاره کردند اگر برنامه بر روی ویندوز سون اجرا بشه عمدتاً موفق به نصب فونت ها نمیشه (به خاطر امنیت بالای ویندوز سون )
برای نصب فونت بهتر است از برنامه های installer استفاده کنید . من قبلاً با setup factory 8 این کارو کردم و پروژه را هم تو انجمن گذاشتم :
http://forum.majidonline.com/showthread.php?t=158564&highlight=setup+factory
امیدوارم کمکتون کنه
 

honarenab

Member
از همه ممنونم...

از همه ممنونم...
-----------------------------


loo30fer عزیز
1- روش بررسی وجود یا عدم وجود فونت در سیستم کارآیی خوبی داره.
2- من در چند سیستم چک کردم ، بدون نیاز به restart فونت ها رو می شناسه
3- حجم متن هام خیلی زیاده و نمی تونم و نمی خوام که به صورت عکس نمایش داده بشه. چون امکان سرچ رو هم براشون در نظر دارم.

به هر حال بخشی از جوابتون خیلی به کارم میاد. ممنونم:wink:

----------------------------

ali guard عزیز
روش شما خیلی روش خوبیه، اما سه سئوال:
1- آیا هنگام ریختن فونت ها از کاربر سئوال نمی کنه؟
2- آنتی ویروس ها جلوش رو نمی گیرند؟
3- در ویندوز های ویستا و سون هم جواب میده؟

متشکرم:rose:

---------------------------

Corovarice عزیز
فکر می کنم روش شما برای بهبود برنامه نویسی مؤثر باشه ، اما قاعدتا نباید از لحاظ مدت زمان نصب فونت تفاوتی با install font معمولی داشته باشه. درسته؟

از شما هم سپاسگزارم:wink:

----------------------------

mbsa گرامی
قبول دارم که نصب برنامه خیلی از این مشکلات رو کم می کنه، اما به خاطر محدودیت ها و ملزومات از یک طرف و خوشایند کاربران از طرف دیگر می خواهیم نرم افزارمون بدون نصب و به صورت اتوران کار کنه.
بنابر این چاره ای جز نصب مخفی یا موقت فونت نداریم.

ولی باز هم از راههنمایی تون ممنونم.:rose:
 

honarenab

Member
ممنون لوسیفر عزیز

پس مشکل بیشتر شد... حالا باید به این هم فکر کرد.

منتظر راهنمایی و تجربیات سایر دوستان هستم.
 

ali guard

Member
سلام دوست عزیز
سوال اول : خیر از كار بر نمیپرسد
سوال دووم : مطمئین نیستم ولی فكر نمیكنم انتی ویروس جیلوش بگیرد
سوال سوم : من در ویندوزهای xp + سون تیست كردم مشكیلی ندارد
 
آخرین ویرایش:

evil_gates

اين نيز بگذرد ...
ممنون لوسیفر عزیز

پس مشکل بیشتر شد... حالا باید به این هم فکر کرد.

منتظر راهنمایی و تجربیات سایر دوستان هستم.

دوست عزيز
ممكنه بگيد كدوم مشكل بيشتر شد؟ براي نصب و راه اندازي فونت موردنظرتون كه دوستان راهنمايي كردن، لينك به اون مبحث هم فكر ميكنم جواب سوالتون رو داده باشه

ممكنه بگيد هنوز كجاي كارتون مشكل داره ؟ :-?
 

mbsa

Active Member
سلام دوستان
روشی که براتون توضیح دادم با این که از installer استفاده می کنه ولی کاملاً مخفیانه انجام میشه
در ضمن در ویندوز سون همینطور که براتون توضیح دادم امکان نصب فونت با MMB وجود نداره پس تنها را نصب فونت با برنامه های جانبیه.
سعی کنید بعد از این که فونت نصب شد برنامه اصلی باز بشه . چون اینطوری فونت ها به درستی نمایش داده میشود.
 

mbsa

Active Member
سلام
منظورم این مشکله: نیاز به restart برای شناختن فونت در بعضی سیستم ها..
من قبلاً این مشکل را داشتم ولی تا جائیکه خودم متوجه شدم این مشکل را بعضی از سیستم عامل ها دارند ولی سیستم عامل های جدید مثل 7 یا ویستا با نصب فونت و بلافاصله اجرای برنامه مشکلی ندارند .
در هر صورت بهتر است بعد از نصب فونت به کاربر اطلاع دهید که اگر فونت ها به درستی نمابش داده نشده اند سیستم خود را ریستارت کنید
موفق باشید
 

جدیدترین ارسال ها

بالا