ورود

View Full Version : Print RTF with Style ?



FirstLine
سه شنبه 08 خرداد 1386, 08:56 صبح
با سلام
من یه فیلد Memo در بانک اکسس دارم که نامه های تایپ شده را بصورت RTF در آن ذخیره میکنم.
نامه ها در برنامه Word تایپ شده و بعضی کم و بعضی زیاد است و در بین نوشته ها بعضی عبارات با فونت و اندازه متفاوت (کوچک، بزرگ، مورب و ...) نوشته شده است.
اپراتور هر نامه را باید در بانک وارد و بعد بتواند پرینت بگیرد.
از کامپوننت RichEditor استفاده میکنم ولی حالا مشکل اینه که وقتی میخوام پرینت بگیرم تمام تنظیمات نوشته ها (فونت و اندازه متفاوت (کوچک، بزرگ، مورب و ...)) بهم میخوره و بصورت نوشته فارسی پرینت میگیره.
چجوری باید پرینت بگیرم تا تنظیمات نوشته ها بهم نریزه؟
از راهنمایی شما سپاسگزارم.
با تشکر

a_b_toops
سه شنبه 08 خرداد 1386, 09:19 صبح
procedure TForm1.printdoc(printername:String; docfile:String);
var
wdApp: Variant;
oldactiveprinter: String;
begin

//Word automation
//start an instance of MS Word
wdApp := CreateOleObject('Word.Application');
//show Word window
// wdApp.Visible := True;
//remember current active printer
oldactiveprinter := wdApp.ActivePrinter;
wdApp.ActivePrinter := printername;
wdApp.Documents.Open(docfile);

sleep(1000);
wdApp.ActiveDocument.PrintOut;

//set active printer back to original
if oldactiveprinter <> printername then
wdApp.ActivePrinter := oldactiveprinter;

//wait for some time before destroying Word
sleep(1000);
wdApp.ActiveDocument.Close(False);
wdApp.quit(False);
end;

FirstLine
سه شنبه 08 خرداد 1386, 09:50 صبح
با سلام
یعنی مثلا با RaveReport نمیشه بصورت صحیح پرینت گرفت ؟
کار اون کامپوننت پرینت در trichview. چیه؟
حتما باید اون اطلاعات را از توی ورد پرینت گرفت؟
با تشکر

vcldeveloper
چهارشنبه 09 خرداد 1386, 01:27 صبح
یعنی مثلا با RaveReport نمیشه بصورت صحیح پرینت گرفت ؟
با اکثر گزارش ساز ها میشه. Rave رو نمی دونم، اما با FastReport می تونید راحت این کار رو انجام بدید.
در ضمن، اگه از DBRichEdit برای نمایش داده های فرمت بندی شده استفاده می کنید، می تونید از متد Print اش استفاده کنید.