دسته بندی ها
09:53 1398/09/21

عدم پشتیبانی استیمول سافت از فونت های فارسی

مشخصات سوال کننده :
کاربر : webarko     امتیاز کاربر : 3     رتبه کاربر : 136
دسته بندی : Asp.net Core Asp.net Mvc Css استيمول سافت

به این سوال امتیاز بدهید    1
تعداد بازدید این سوال : 6843
هوش مصنوعی

پاسخ هوش مصنوعی

برای حل مشکل عدم شناسایی فونت های فارسی در گزارش های استیمول سافت در ASP.NET Core MVC، شما می توانید چند روش را امتحان کنید:

1. **اضافه کردن فونت های فارسی به پروژه:** مطمین شوید که فونت های فارسی مورد نیاز به پروژه شما اضافه شده اند. می توانید فونت ها را به پوشه پروژه اضافه کنید و در CSS به آن ها ارجاع دهید.

@font-face {
    font-family: 'YourFontName';
    src: url('/fonts/YourFontFile.woff2') format('woff2'),
         url('/fonts/YourFontFile.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

2. **استفاده از فونت های وب:** می توانید از فونت های وب مانند Google Fonts که از فونت های فارسی پشتیبانی می کنند، استفاده کنید.

<link href="https://fonts.googleapis.com/css2?family=YourFontName:wght@400&display=swap" rel="stylesheet">

3. **تنظیمات استیمول سافت:** اطمینان حاصل کنید که در تنظیمات استیمول سافت، فونت های فارسی به درستی پیکربندی شده اند. در کد گزارش گیری، فونت های مورد استفاده را به فونت های فارسی تغییر دهید.

4. **تست در سیستم های مختلف:** در نظر داشته باشید که ممکن است هر سیستم عاملی فونت های پیش فرض متفاوتی داشته باشد. شما می توانید نرم افزار لازم را برای نصب فونت های فارسی بر روی آن سیستم ها نصب کنید و یا از فونت های فونت ساز استفاده کنید تا مطمین شوید فونت ها به درستی بارگذاری شده اند.

با این روش ها باید بتوانید مشکل را حل کرده و فونت های فارسی را در گزارش های خود مشاهده کنید.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : Sowgandi 13:07 1398/09/21

سلام. این مشکل بخاطر تنظیم نبودن زبان فارسی در ویندوز است. به قسمت کنترل پنل برید و در قسمت زبان فرمت زبان رو به فارسی تغییر بدید. برای راهنمایی در مورد این کار به لینک زیر مراجعه کنید.

تنظیمات زبان فارسی برای ویندوز Vista ، 8 ، 7 + ویدیو آموزشی

موفق باشید.

به این پاسخ امتیاز بدهید    0
امتیاز: 876 رتبه: 3
پاسخ دهنده : pedram_khan 13:56 1398/09/21

گاهی اوقات هم این مشکل میتونه بخاطر خود فونت مورد استفاده باشه. اگر میگفتید که فونت مورد استفاده شما در استیمول سافت هم چی بوده شاید بهتر میشد کمک کرد.

به این پاسخ امتیاز بدهید    0
امتیاز: 277 رتبه: 6
پاسخ دهنده : webarko 11:03 1398/09/22

ممنون دوستان اما هنوز مشکلم پا برجاست... در جواب  دوست عزیز من از فونت های وزیر و ساحل و حتی تهوما استفاده کردم اما نشد،  مشکل من اینه نمیدونم این فونت رو چه طوری همراه گزارش بفرستم که روی هر سیستم دیگه گزارش کار کنه بهم ریختگی نداشته باشه.

سپاس از توجه شما

به این پاسخ امتیاز بدهید    0
امتیاز: 3 رتبه: 136
پاسخ دهنده : Sowgandi 12:40 1398/09/22

دوست عزیز شما نمیتونید فونت رو با گزارش ارسال کنید برای رفع این مشکل باید فونت مورد نظر روی سیستم مقصد نصب بشه. همون طوری که روی سیستم خودتون نصب کردید.

به این پاسخ امتیاز بدهید    1
امتیاز: 876 رتبه: 3
پاسخ دهنده : mobile_app 14:13 1398/09/22

از فونت هایی استفاده کنید که روی همه ویندوز ها به صورت پیش فرض هست. ضمنا یه نکته دیگه هم اینجا مهمه. شما فیلدهای خودتون داخل دیتابیس رو به چه صورتی تعریف کردید؟ varchar یا nvarchar ؟

این موضوع هم میتونه تاثیر داشته باشه هنگام نمایش گزارش با استیمول سافت

به این پاسخ امتیاز بدهید    0
امتیاز: 18 رتبه: 40
پاسخ دهنده : mohammad-i 10:57 1398/09/24

طبق گفته دوستان بهترین کار اینه که از فونت هایی استفاده کنید که توی همه سیستم ها پیشفرض وجود داشته باشه.

ظاهرا راه های دیگه ای هم هست مثل Embed فونت. ولی من به نتیجه ای نرسیدم.

به این پاسخ امتیاز بدهید    0
امتیاز: 260 رتبه: 7
پاسخ دهنده : saedbfd 00:44 1399/04/26

سلام

 

برای استفاده از فونت های فارسی مثل B Mitra بهتره فونت در هاست یا سروری که استفاده می کنید وجود داشته باشه. اما اگر فونت در هاست وجود نداره کافیه فونت نسخه وب رو دانلود کنید. (مثلا توی گوگل سرچ کنید دانلود فونت B Mitra نسخه وب) و فونت رو دانلود کنید. نسخه ttf فونت رو در روت پروژه wwwroot کپی کنید و سپس قبل از اینکه گزارش رو نمایش بدید یعنی دقیقا قبل از return فونت رو به صورت پیش فرض برای گزارش انتخاب کنید

 

public IActionResult Print()
{        
    StiReport report = new StiReport();
    report["param1"] = "yourParameter";
    Stimulsoft.Base.StiFontCollection.AddFontFile("wwwroot/fonts/bmitra/B_Mitra.ttf");
    report.Load(StiNetCoreHelper.MapPath(this, "wwwroot/reports/UserLeave.mrt"));
    return StiNetCoreReportResponse.PrintAsPdf(report);
}

 

در قطعه کد بالا فونت در روت پروژه و در فولدر fonts و فولدر bmitra کپی شده و از این ببعد فونت پیش فرض پروژه این فونت میشه.

 

توسط این کار میتونید فونت پیش فرض در استیمول سافت رو تغییر بدید.

ویرایش شده در پنج شنبه 26 تیر 1399 ساعت 00:46:29
به این پاسخ امتیاز بدهید    3
امتیاز: 1664 رتبه: 1
2 نظر
dehghani1402 : باسلام یه مشکل بزرگ که تقریبا روی همه فونت های فارسی هست خروجی pdf در اندروید هست که نشون نمیده واقعا خیلی تلاش کردم اما حل نشد. آیا راه حلی هست؟

امتیاز کاربر : 0   رتبه کاربر : 7040   تاریخ ثبت : 07:37 1402/09/11
jafaribijan : سلام و وقت بخیر من دقیقاً همین کد رو نوشتم در محیط خود دیزاینر گزارش مشکلی ندارم ولی در محیط وب به مشکل بر می خورم

امتیاز کاربر : 0   رتبه کاربر : 7040   تاریخ ثبت : 11:52 1403/05/19
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود