View Full Version : ریچ تکست راست به چپ در فست ریپورت
mohammadmowlavi
پنج شنبه 11 اردیبهشت 1393, 20:41 عصر
سلام
ریچ تکست در فست ریپورت چپ به راسته آیا راهی هست که بشه راست به چپ داخلش نوشت
mohammadmowlavi
پنج شنبه 11 اردیبهشت 1393, 20:43 عصر
توروخدا کمک کنید یا حداقل بگین چطور فیلدهایی رو که داخل ممو میزارم با تگهای اچ تی ام ال bold کنم که متن بهم نریزه
sanam1393
چهارشنبه 09 مهر 1393, 15:07 عصر
سلام، این مشکل من هم هست، می خوام توی memo متن فارسی بنویسم که تکه هایی از متن با تگ <b> بولد شده باشه، اما متن بهم می ریزه، باید چیکار کنم تا درست شه؟
ممنون می شم کسی جواب بده.
online_com
چهارشنبه 09 مهر 1393, 16:36 عصر
سلام
راهي كه قبلا تست كردم و جواب مي ده اينكه فست ريپورت رو تو حالت طراحي باز كنيد متن خودتون را از لحاظ فرمت تكه تكه كنيد و هر تكه رو به يك متغير محلي كه داخل فست ريپورت معرفي كرديد نسبت بديد و بعد داخل memo اين متغيرها رو صدا كنيد و خاصيت مورد نظرتون رو با تگ كه مي خواهيد به هر متغير نسبت بديد مثل كد زير
<b>[New Variable1]</b>
[New Variable4] <b><u><font color=blue>[New Variable3]</b></u></font> [New Variable2]
<b>[New Variable5]</b>
[New Variable8](<b><u><font color=blue>[New Variable6]</b></u></font>)[New Variable7]
يه نمونه كوچيك هم از خروجي كار براتون گذاشتم 124093
شما هم تست كنيد:متفکر::تشویق:
sanam1393
شنبه 12 مهر 1393, 08:02 صبح
از راهنماییتون بسیار سپاسگزارم، اما اگر مجبور باشم کل متنم رو یکباره توی memo بریزم چی؟ یعنی نمی تونم متنم رو به متغییرهای کوچکتر بشکنم. در این حالت پیشنهادی دارید؟
online_com
شنبه 12 مهر 1393, 09:04 صبح
از راهنماییتون بسیار سپاسگزارم، اما اگر مجبور باشم کل متنم رو یکباره توی memo بریزم چی؟ یعنی نمی تونم متنم رو به
متغییرهای کوچکتر بشکنم. در این حالت پیشنهادی دارید؟
منظورتون رو نمي فهمم
يعني متن رو از ديتابيس و فيلد مي گيريد ؟ يا در حالت طراحي يك متن ثابت رو مي خواهيد داخل memo بريزيد؟
اگر مي تونيد يه نمونه بذاريد تا بهتر بشه راهنمايي كرد :متفکر:
sanam1393
شنبه 12 مهر 1393, 09:22 صبح
متن رو از دیتابیس میگیرم و روش یکسری ویرایش انجام می دم و در نهایت یک متن ثابت رو در memo می ریزم. به صورت زیر:
procedure ShowPrint;
begin
TfrxMemoView(frxP.FindComponent('MemoP')).Text := PrintStr;
frxP.ShowReport();
;end
که در اینجا PrintStr همون متنی است که از دیتابیس گرفته شده، ویرایش شده و در memo ریخته می شود، که البته تکه هایی از متن PrintStr با تگ <b> بولد شده و string آماده شده
باید در memo نمایش داده شود، که متاسفانه بهم ریخته نمایش داده میشود. این متد در فرمی که گزارش به آن attach شده است فراخوانی می گردد.
از راهنماییتون سپاسگزارم.
online_com
شنبه 12 مهر 1393, 10:42 صبح
متاسفانه فست ريپورت در نمايش جملات فارسي كمي مشكل داره
اگر تگ هاي html را نشان نمي دهد و فقط متن را به هم مي ريزد بايد با جابه جا كردن متون زمان جايگذاري مشكلتون رو رفع كنيد نياز به تست در حالت هاي مختلف دارد
اما چند نكته:
1-اين memo در حالت طراحي تيك rtlreading دارد؟
2-اگر متني كه آماده كرديد چند خطي است در زمان جايگذاري خطوطي كه داراي فرمت چند تكه است ، هر خط را از انتها به ابتدا جايگذاري كنيد به نمونه اي كه براتون گذاشتم دقت كنيد من در پياده سازي هر خط اول تكه انتهايي و بعد تكه وسط و بعد تكه اوليه را قرار داده ام
3- يه نمونه از PrintStr اي كه آماده شده كپي بگيريد و در يك صفحه html باز كنيد ببينيد اونجا هم به هم مي ريزه ؟
sanam1393
شنبه 12 مهر 1393, 10:55 صبح
تگ های html درست اعمال می شوند، اما متن به هم ریخته نمایش داده می شود، هم چنین تیک RTLReading روی مقدار ،True ست شده است.
برای مورد شماره 2، امکان تست اینچنینی ندارم، زیرا نمی توانم خطوط را تفکیک کنم، درباره مورد شماره 3، تست کردم، در یک صفحه html کاملا درست نمایش داده می شود.
مجددا از راهنماییتون و وقتی که گذاشتید سپاسگزارم.
vbhamed
شنبه 26 مهر 1393, 11:45 صبح
سلام
ریچ تکست در فست ریپورت چپ به راسته آیا راهی هست که بشه راست به چپ داخلش نوشت
سلام
همچين مشكلي وجود نداره و ماهيت RichTextBox طوري هست كه هم راست به چپ پشتيباني ميكنه هم چپ به راست و اين در فرمت متن تنظيم ميشه نه خاصيتي براي كل RichTextBox چون ممكنه شما بخواين يك خط راست به چپ باشه و يك خط چپ به راست
كافيه متنتون رو در Word يا Wordpad به شكل دلخواه بنويسيد و ازش كپي بگيريد يا به صورت rtf ذخيره كنيد و در RichTextBox بارگذاري كنيد
البته از كليدهاي Ctrl+Shift سمت راست براي راست به چپ و Ctrl+Shift سمت چپ براي چپ به راست شدن هم ميشه در هر جا استفاده كرد
mohammadmowlavi
شنبه 03 آبان 1393, 06:40 صبح
تشکر از جوابتون ببینید اگه بتونم منظورمو بریونم ما یه تکست الاین داریم یه تکست دایرکشن الاین راست به چپ داره ولس داسرکشن نداره
مثلا من نیاز دارم بنویسم
اینجانب [q1.lame] [q1.fname] فرزند [q1.fthname] به شماره شناسنامه
ولی در فست ریپورت به هم میریزه من داخل ورد و نوتپد هم نوشتم ولی چون ریچ تکست داخل فست ریپورت پشتیبانی نمیکنه وقتی پیستش میکنم بهم میریزه
vbhamed
شنبه 03 آبان 1393, 17:03 عصر
سلام
خب شما دارید اشتباه میکنید، شما باید از شیء RichText Object استفاده کنید نه Textbox معمولی یا Memo
ضمنا تو نوار ابزار فست ریپورت شیء RichText Object رو داره چطور میگید پشتیبانی نمیشه ؟
mohammadmowlavi
جمعه 23 آبان 1393, 15:29 عصر
درسته داره من هم دارم از اون استفاده میکنم چون اصلا داخل ممو نمیشه بیش از یک فونت استفاده کرد و اندازه خط هم ثابته ریچ تکست هم همون طوری که گفتم اگرمخلوطی از فارسی و انگلیسی داخلش باشه بهم میریزه خودتون تست کنید
اینجانب [q1.lame] [q1.fname] فرزند [q1.fthname] به شماره شناسنامه
vbhamed
شنبه 24 آبان 1393, 14:42 عصر
سلام
مشكلي نداره، پست شماره 10 رو دوباره به دقت بخونيد
125716
mohammadmowlavi
پنج شنبه 29 آبان 1393, 17:25 عصر
بله آقا حامد حق با شماست یکی از بزرگترین مشکلاتم حل شد تشکر خیلی زیاد
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.