تغییر اتوماتیک اندازه قلم!

noorabas

Active Member
سلام به همه و خصوصا دوست عزیزمان مدیر این بخش

اما بعد !

سوال : چکار می تونیم انجام بدیم که در لود شدن متون متنوع ، طوری تعریف کنیم برای برنامه که هر وقت مثلآ متنی که بالا میاد کمتر از 15 کلمه یاشه با فونت مثلاً نازنین 20 و اگر بیشتر از 15 کلمه یاشه با فونت نازنین 15 نمایش داده بشه .

درخواست : چون به تجربه یاد میگیرم اگه دوستی توضیحی داد بی زحمت نمونه ای رو هم به پیوست بذاره که : الاکرام بالاتمام! .

در ماه مبارک رمضان حقیر رو از دعای خیرتان بی بهره نکنید .
خدا حفظتان کند .:rose:
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
کد:
Space$ = [color=#000090][b]CHR[/b][/color]([color=#ff0000]32[/color]) 
NumOfWords = [color=#000090][b]GetArrayNum[/b][/color](Text$,Space$) 
[color=#0000FF]If[/color] (NumOfWords < [color=#ff0000]15[/color]) [color=#0000FF]Then[/color] 
  Font$ = [color=#800000]'Nazanin|Regular|20|178|None|'[/color] 
[color=#0000FF]Else[/color] 
  Font$ = [color=#800000]'Nazanin|Regular|15|178|None|'[/color] 
[color=#0000FF]End[/color] 
[color=#000090][b]SetObjectParam[/b][/color]("Paragraph","FONTALL=Font$") 
[color=#000090][b]LoadText[/b][/color]("Paragraph","Text$")

تو این کد متن موردنظر در متغیر $Text ذخیره شده.
اینجا کل مشخصات مربوط به فونت تغییر میکنه (نام فونت، سایز، حالت فونت، اسکریپتش و افکتش)، میتونید فقط شناسه ی اندازه رو تغییر بدید.
 

noorabas

Active Member
تشکر اما!

ممنون از مدیر محترم !

چون متن ما متغیره و از جایی فراخونی میشه و در شی پاراگراف هست نه تکست
سوال : مشکلی پیش نمیاد ؟ همین کد درسته ؟
قرار شد یه مثال بذارید ها!!!!!!!!!!!!!!!!!:rose:
 

mbsa

Active Member
سلام
با اجازه مدیر عزیز !
مثال را براتون پیوست کردم .
شما میتونید تو متغیر $path که تو مثالی که پیوست کردم هست ، ادرس فایل متنی را بدید یا از متغیری دیگر ، متنی را فراخوانی کنید
موفق باشید.
 

پیوست ها

  • Media1.rar
    656 بایت · بازدیدها: 32
آخرین ویرایش:

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
ممنون از مدیر محترم !

چون متن ما متغیره و از جایی فراخونی میشه و در شی پاراگراف هست نه تکست
سوال : مشکلی پیش نمیاد ؟ همین کد درسته ؟
قرار شد یه مثال بذارید ها!!!!!!!!!!!!!!!!!:rose:
خیر، تفاوتی نداره چه متنی لود میشه، این کد فقط میاد و تعداد کلمات رو حساب میکنه و اساس اون تغییرات لازم رو روی شئ Paragraph (از اشیاء دیگه هم میتونید استفاده کنید، به شرطی که بشه مشخصات فونتشون رو تغییر داد) اعمال میکنه.

فقط کافیه متن مورد نظر رو (در واقع متغیری که حاوی متن ما هست) به اسکریپت معرفی کنید.
مثالی که دوستمون گذاشتن کاملاًگویا هست.
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
خب دقیقاً نمیدونم که چطور میخاید که با لود سطری تطبیق داده بشه !
اما کد زیر میاد و خط به خط از فایل متنی رو میخونه، بعد با توجه به تعداد کلماتش، مشخصات فونت شئ پاراگرافرو عوض میکنه.
برای اینکه نتیجه رو ببینید بین هر بار خوندن خط پنج ثانیه وقفه ایجاد کردم:
کد:
[color=#009000]**// Text File Path[/color] 
FilePath$ = [color=#800000]'C:\File.txt'[/color] 
[color=#009000]**// Number of lines in the Test File[/color] 
NOL = [color=#000090][b]NOL[/b][/color](FilePath$) 
[color=#0000FF]For[/color] i=[color=#ff0000]1[/color] [color=#0000FF]To[/color] NOL 
  Line$ = [color=#000090][b]StrFromFile[/b][/color](FilePath$,i,[color=#ff0000]1[/color]) 
  Space$ = [color=#000090][b]CHR[/b][/color]([color=#ff0000]32[/color]) 
  NumOfWords = [color=#000090][b]GetArrayNum[/b][/color](Line$,Space$) 
  [color=#0000FF]If[/color] (NumOfWords < [color=#ff0000]15[/color]) [color=#0000FF]Then[/color] 
    Font$ = [color=#800000]'Nazanin|Regular|20|178|None|'[/color] 
  [color=#0000FF]Else[/color] 
    Font$ = [color=#800000]'Nazanin|Regular|15|178|None|'[/color] 
  [color=#0000FF]End[/color] 
  [color=#000090][b]SetObjectParam[/b][/color]("Paragraph","FONTALL=Font$") 
  [color=#000090][b]LoadText[/b][/color]("Paragraph","Line$") 
  [color=#000090][b]Pause[/b][/color]("[color=#ff0000]5000[/color]") 
[color=#0000FF]Next[/color] i

البته این کد استفاده ای نداره، اما شاید بتونه کمکتون کنه
 

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

بالا