View Full Version : پرینت گرفتن از یک فایل doc بدون باز کردن
Mask
شنبه 28 فروردین 1389, 01:34 صبح
با سلام
بر روی سیستم من یک پرینتر مجازی Adobe PDF نصب هست.
میتوان فایل doc رو با ofice باز کرد و با این پرینتر تبدیل به pdf کرد.
اما میخاستم بدونم چطوری بدون باز کردن فایل و در برنامه میشه این فایل رو به این پرینتر مجازی ارسال کرد و خروجی فایل pdf گرفت ازش.
ممنون از دوستان.
Mahmood_M
شنبه 28 فروردین 1389, 03:15 صبح
اگر Printer مورد نظر Default ویندوز باشه ، با دستور ShellExecute و پارامتر Print به همراه نام فایل می تونید اون رو به چاپگر Default بفرستید تا چاپ انجام بشه ...
ولی اگه Printer مورد نظر Printer پیشفرض ( Default ) نیست باید با دستور PrintTo در ShellExecute و دادن مشخصات Printer ( نام و درایور و شماره ی پورت ) ، فایل رو برای چاپگر مورد نظرتون ارسال کنید ...
البته با این دستور موقع چاپ فایل یک بار باز میشه و بعد از ارسال صفحات به چاپگر دوباره بسته میشه ...
یک برنامه ی نمونه براتون ضمیمه کردم ...
موفق باشید ...
farideh_en
شنبه 28 فروردین 1389, 08:24 صبح
سلام
Start an application:
ShellExecute(Handle, 'open', PChar('c:\test\app.exe'), nil, nil, SW_SHOW);
Start NotePad and load a file (the system "knows" the location of NotePad.exe, therefore we don't have to specify the full path):
ShellExecute(Handle, 'open', PChar('notepad'), PChar('c:\test\readme.txt'), nil, SW_SHOW);
Print a document:
ShellExecute(Handle, 'print', PChar('c:\test\test.doc'), nil, nil, SW_SHOW);
Note: probably you will see the window of Word open very briefly, but it is closed automatically.
Open an HTML page, local or remote:
ShellExecute(Handle, 'open', PChar('http://www.festra.com/'), nil, nil, SW_SHOW);
You can do the previuos trick with any type of registered data-file, e.g. open a
Text file: ShellExecute(Handle, 'open', PChar('c:\test\readme.txt'), nil, nil, SW_SHOW);
HTML Help File: ShellExecute(Handle, 'open', PChar('c:\windows\help\calc.chm'), nil, nil, SW_SHOW);
Explore a folder with Windows Explorer:
ShellExecute(Handle, 'explore', PChar('c:\windows)', nil, nil, SW_SHOW);
Run a DOS command and return immediately:
ShellExecute(Handle, 'open', PChar('command.com'), PChar('/c copy file1.txt file2.txt'), nil, SW_SHOW);
Run a DOS command and keep the DOS-window open ("stay in DOS"):
ShellExecute(Handle, 'open', PChar('command.com'), PChar('/k dir'), nil, SW_SHOW);
اینم یه سایت که می تونه بیشتر کمکتون کنه
http://delphi.about.com/od/delphitips2009/qt/delphi-print-documents-shellexecute-print-printto.htm
Mask
شنبه 28 فروردین 1389, 14:09 عصر
حاج محمود ممنون.
اما این روش فایل رو باز میکنه.
ببینید ما میخاهیم دقیقا بدون باز شدن فایل و با ارسال پارامتر به این پرینتر ، فایل doc تبدیل بشه به pdf .
مهران رسا
شنبه 28 فروردین 1389, 16:45 عصر
چطوری بدون باز کردن فایل و در برنامه میشه این فایل رو به این پرینتر مجازی ارسال کرد و خروجی فایل pdf گرفت ازشهمچین کاری امکان پذیر نیست . مگر اینکه نرم افزار مورد نظر (مثلاً PDF Factory) امکانی در اختیار شما قرار بده که بتونید با Shell واسش پارامتر ارسال کنید.
در دستور زیر ، به دلیل اینکه Dos از پارامترهای ورودی پشتیبانی می کنه عملیات مورد نظر امکان پذیر هست :
ShellExecute(Handle, 'open', PChar('command.com'), PChar('/c copy file1.txt fil2.txt')
Felony
شنبه 28 فروردین 1389, 17:10 عصر
نرم افزار زیر رایگان هست و بهتون اجازه ارسال دستورات به صورت Command Line رو میده :
http://www.softinterface.com/Convert-Doc/Features/Convert-DOC-To-PDF.htm
azizolahy
شنبه 28 فروردین 1389, 18:46 عصر
برای پرینت یک پنل با عناصر موجود در آن باید چی کار کنم؟
Felony
شنبه 28 فروردین 1389, 19:34 عصر
برای پرینت یک پنل با عناصر موجود در آن باید چی کار کنم؟
دوست عزیز سوالاتون رو تو پست جدید باید بپرسید ، چند وقت پیش یکی از کاربران همین سوال رو پرسید و من یه نمونه کد نوشتم و قرار دادم ، تو پست ها قبلی من جست و جو کن ...
Mask
یک شنبه 29 فروردین 1389, 14:08 عصر
همچین کاری امکان پذیر نیست . مگر اینکه نرم افزار مورد نظر (مثلاً PDF Factory) امکانی در اختیار شما قرار بده که بتونید با Shell واسش پارامتر ارسال کنید.
یعنی برنامه PDF Factory این قابلیت رو داره؟
یکی از دوستان عزیز محبت کردن و یه برنامه دادند که با نصب اون یه پرینتر مجازی تبدیل کننده به pdf ایجاد میشه.
که با ارسال پارامتر به اون بدون نیاز به هیچ پنجره ای این تبدیل انجام میشه اما یه مشکل داره .
اینم اینه که یه متنی رو به آخر page ها اظافه می کنه.(به خاطره تریال بودنشه البته)
Create PDF
files without this message by purchasing novaPDF printer (http://www.novapdf.com (http://www.novapdf.com))) (http://www.novapdf.com))
(http://www.novapdf.com))
اینم کدش
دوستان اگه راه کاره دیگه ای هست محبت کنن.
مهران رسا
یک شنبه 29 فروردین 1389, 14:10 عصر
یعنی برنامه PDF Factory این قابلیت رو داره؟
نمی دونم . اگر جمله رو به صورت زیر نوشته بودم یعنی PDF Factory این قابلیت رو داشت :
همچین کاری امکان پذیر نیست . مگر اینکه نرم افزار مورد نظر امکانی در اختیار شما قرار بده که بتونید با Shell واسش پارامتر ارسال کنید. (مثلاً PDF Factory)
:لبخند:
Mask
یک شنبه 29 فروردین 1389, 14:47 عصر
نرم افزار زیر رایگان هست و بهتون اجازه ارسال دستورات به صورت Command Line رو میده :
http://www.softinterface.com/Convert...DOC-To-PDF.htm (http://www.softinterface.com/Convert-Doc/Features/Convert-DOC-To-PDF.htm)
ممنون.
نرم افزار رو دانلود کردم اما با زبان فارسی مشکل داره.
فایلهایی که انگلیسی هست رو راحت تبدیل میکنه اما فایلهای فارسی رو قاطی میکنه و کلمات به هم میریزه.
ممنون از وقتی که گزاشتید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.