طراحي فونت و هوشمندي آن در ويندوز

pirooz

Member
از استادان طراحي فونت و كساني كه در ارتباط با طراحي فونت دستي بر آتش دارند، درخواست كمك دارم.
مورد پرسش اينجاست كه من رابطه هوشمند درج حروف را در متون درك نمي‏كنم.
مثلاً فرض كنيم مي‏خواهيم كلمه «الله» را تايپ كنيم.
ما اين كلمه را با فشردن كليدهاي «ا ل ل ه» انجام مي‏دهيم اما جاي تعجب است كه چگونه بعد از تايپ اين چهار حرف،
شكل سه حرف ل ل ه تغير مي‏كند و به حروف تركيبي لله تبديل مي‏شود.
دقت شود كه تشديد هم به صورت اتوماتيك و هوشمند به حروف اضافه مي‏شود.
جالب اينجاست كه در جدول يونيكد فونت، ما يك كاركتر با اين شكل (لله) داريم، اما شكل تغيير يافته اين سه حرف (ل ل ه) به يك كاركتر تبديل نمي‏شود.
بلكه تنها نحوه نمايش آنها تغيير مي‏كند و با پاك كردن يك حرف از اين سه حرف، دو كاركتر باقي‏مانده به شكل اصلي خود تبديل مي‏شوند.
يا اينكه
بر فرض مثال حرف ع در زبان فارسي، چهار شكل ‏( ع‍ ‍ع‍ ‍ع ع) دارد.
مثلاً در تايپ كلمه «تعليم»، ويندوز چگونه متوجه مي‏شود كه بايد از كدام شكل حرف عين استفاده كند؟
اميدوارم سؤال واضح باشد.
 
آخرین ویرایش:

the_king

مدیرکل انجمن
اگه یکی از فونتهای TrueType و OpenType ویندوز را با نرم افزاری مانند FontLab باز کنید،
خواهید دید که تعریف Glyph ها به مراتب مهمتر از هر کاراکتر از جدول Unicode است.
محتویات یک فونت TrueType و OpenType فقط شامل اطلاعات تصویری یک کاراکتر Unicode نیست.
بلکه ما در تعریف هر کاراکتر Unicode می توانیم چندین نوع متفاوت از Glyph را معرفی کنیم که هر کدام
عضو یک گروه متفاوت هستند. دست ما در تعریف این گروه ها بسیار باز است و فقط شامل آن چهار حالت
(منفصل، اتصال از چپ، اتصال از دو طرف، اتصال از راست) نیست، مثلا شما می توانید یک گروهی بسازید
که کاراکتر ها را در حالت کشیده نمایش دهد. یا می توانید دوازده گروه بسازید یا اصلا گروه خاصی را تعریف نکنید.
در تعریف عملکرد هر کدام از گروه ها شما می توانید موارد خاص و استثنایی را هم معرفی کنید، مثلا
حالت چسبیدن لام به الف یا عبارات خاصی مثل ریال.

غیر از این موارد در تعریف هر Glyph مشخص میشه که عضو چه گروهی است و مثلا توانایی چسبیدن به
کاراکتر بعدی را دارد یا نه.
مرحله دیگری از عملیات تجزیه و تحلیل هوشمند توسط سیستم نمایشی سیستم عامل انجام می شود،
مثلا می بیند که چندین کاراکتر در کنار هم قرار گرفته اند، پس اول تمامی حالتهای Glyph انها را از فونت
استخراج می کند، مثلا اولین کاراکتر سمت راست یا باید منفصل باشد و یا از سمت چپ اتصال داشته باشد،
پس در Glyph های آن کاراکتر دنبال چنین حالتهایی می گردد، همچنین چک می کند که آیا کاراکتر بعدی
شامل Glyph ای است که بتواند به کاراکتر قبلی خود بچسبد یا نه...
همچنین وقتی عملیات تبدیل یک متن UTF8 یا Unicode به ایران سیستم تحت Dos انجام میشه،
تجزیه و تحلیل صورت گرفته تقریبا مشابه این توضیحات هستند که نوشتم.
 

pirooz

Member
از توضيحات كاملتون متشكرم.
ميشه منبعي براي مطالعه بيشتر معرفي كنيد؟؟
 

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

بالا