ورود

View Full Version : ImageEn و ذخیره Tiff



Mahyaa
جمعه 20 مرداد 1385, 16:27 عصر
سلام به همه .
من یک مشکلی با ImageEn دارم :

در برنامه ای که با دلفی نوشتم ، من فایلهای Tiff رو با TImageEnMView در فرم نمایش میدم.
یک امکان Save هم توی این فرم دارم که فایل Tiff رو توی Database که Oracle هم هستش Insert میکنه .
حالا مشکلی که من دارم اینه :
وقتی فایلهای Tiff رو که قبلا در DB ذخیره کردم ، دوباره میخونم و در Hard ذخیره میکنم ، فرمت این فایلها به هم میریزه . یعنی فکر میکنم اشکال در موقع Insert کردن تو Database هستش

این هم مراحل کار :

این کنترلها رو تو فرم دارم که به هم Link شدند :

ImageEnMIO1 : TImageEnMIO;
ImageEnMView1 : TImageEnMView;

ImageEnMIO1.AttachedMView := ImageEnMView1;
اینهم خوندن از فایل ، نمایش و ذخیره تو DB :




//--> Load From File
FileName := OpenDialog1.FileName;
ImageEnMView1.MIO.LoadFromFile(FileName);
//.

//-->Save To DB : (My DataBase is Oracle)
MyTiffStream := TMemoryStream.Create;
for I := 0 to FrmRecivedLetter.ImageEnMIO1.ParamsCount - 1 do
ImageEnMIO1.Params[i].TIFF_Compression := ioTIFF_JPEG;

ImageEnMIO1.SaveToStreamTIFF(MyTiffStream);
SaveToDB(MyTiffStream ); //--> This is mt method to insert the stream into db.
MyTiffStream.Free;
//.


کسی میدونه اشکال از کجاست ؟

ali_abbasi22145
شنبه 21 مرداد 1385, 08:52 صبح
سلام
به جای ImageEnMIO1 از ImageEn1 یا در کار با بانک از ImageEnDBview1 استفاده من عمری با ImageEn کار می کنم ومشکلی ندارم.

ImageEn1.IO.savetoFile('c:\Output.jpg');

مشکلت حل شد یا نه اینجا بگو.

Mahyaa
شنبه 21 مرداد 1385, 20:56 عصر
واقعا ممنون آقای عباسی .تست میکنم و نتیجه رو همی جا میگم . فقط ممکنه بگید غیر از Sample ها و Help که همراه ImageEn هست ، آیا Help کاملتری هم وجود داره ؟
یا Sample های بیشتری . به نظرم Help و مثالهای خودش خیلی کامل نیستند و همه امکاناتش رو نشون نمیده.

ممنون :)

ali_abbasi22145
یک شنبه 22 مرداد 1385, 08:58 صبح
سلام
این هم دنیای از مثالهای توپ در سایت خودش که حتما کار کن:

http://www.hicomponents.com/ndownloads_imageen_rc.asp

Mahyaa
سه شنبه 24 مرداد 1385, 17:11 عصر
سلام

من اگه بخوام از TImageEn به جای ImageEnMView استفاده کنم چطوری میتونم فایلهای Tif چند صفحه ای رو به صورت thumb نمایش بدم ؟

ممنون میشم اگه بتونید راهنمایی کنید.

در ضمن یک مساله دیگه هم در مورد IO ها ، متدهای SaveToStream و SaveToStreamTiff چه تفاوتی باهم دارند ؟ (از نظر Stream خروجی)

ali_abbasi22145
چهارشنبه 25 مرداد 1385, 15:41 عصر
سلام

من اگه بخوام از TImageEn به جای ImageEnMView استفاده کنم چطوری میتونم فایلهای Tif چند صفحه ای رو به صورت thumb نمایش بدم ؟

ممنون میشم اگه بتونید راهنمایی کنید.

در ضمن یک مساله دیگه هم در مورد IO ها ، متدهای SaveToStream و SaveToStreamTiff چه تفاوتی باهم دارند ؟ (از نظر Stream خروجی)

1-در همان جا که گفتم مثال thumb است دانلود کنی می بینی.

2-خوب نمی دانم !
با Stream ، SaveToStream به شکل Tiff و هر فرمت دیگر را کار کردم و کار خود SaveToStreamTiff را هم انجام می دهد .
به help آن مراجعه کن.

3-راستی مشکلت حل شد.

Mahyaa
شنبه 28 مرداد 1385, 00:09 صبح
سلام
متاسفانه در مورد ذخیره کردن tif مشکلم حل نشد
وقتی فایل رو از DB توی مسیر فیزیکی ذخیره میکنم مثل همون حالتی میشه که از ImageEnMIO استفاده کرده بودم .
در حقیقت فایلهایی که من از DB رو Disk ذخیره میکنم ماهیت خودش رو که Tif هستش داره و با Imaging برنامه Office هم باز میشه ولی دو تا مشکل داره :

1 ) از حجم اولیه اون یک چیزی در حدود 20 تا 30 درصد ، کم شده .
2 ) این فایل رو نمیتونم به عنوان یک Picture به یک Document در MS Word اضافه کنم . (پیغام میده که فرمتش رو نمیشناسه)

من خودم حدس میزنم که مشکل از این قسمت از کد باشه :


ImageEnMIO1.Params[i].TIFF_Compression := ioTIFF_JPEG; ولی نمیدونم چه اشکالی داره یا چطوری باید حلش کنم .اگر فکر میکنید کمکی میکنه یک مثال از کارهایی رو که انجام میدم Upload کنم .

ممنون از توجهتون .

ali_abbasi22145
دوشنبه 30 مرداد 1385, 16:36 عصر
سلام

>>> این فایل رو نمیتونم به عنوان یک Picture به یک Document در MS Word اضافه کنم . (پیغام میده که فرمتش رو نمیشناسه)

>>> ImageEnMIO1.Params[i].TIFF_Compression := ioTIFF_JPEG;
به جای فشرده سازی ioTIFF_JPEG که فشرده سازی tiff نوع Jpeg از فشرده سازی tiff نوع bmp
یا فشرده سازی دیگر استفاده کن.
یا فشرده سازی نکن اگر می توانی.

Mahyaa
دوشنبه 30 مرداد 1385, 17:03 عصر
به جای فشرده سازی ioTIFF_JPEG که فشرده سازی tiff نوع Jpeg از فشرده سازی tiff نوع bmp

ممنون این رو امتحان میکنم .

من وقتی فایل رو فشرده میکنم و میریزم تو DB ، هنگام Load کردن از Db باید اون رو DeCompress کنم ؟ چطوری ؟
من Decompress نمیکنم و خود ImageEn اون رو میشناسه ولی مثلا Office نمیشناسدش !

در ضمن نمی تونم Compress نکنم چون حجمشون زیاده و تاخیر زمانیش زیاد میشه .

باز هم ممنون !!

ali_abbasi22145
چهارشنبه 01 شهریور 1385, 15:43 عصر
سلام

1-چیزهایی که در قبلی گفتم تست کن.

2-یا اینکه آن سری فایلهای که می خواهی در word استفاده کنی به فرمت کامل BMP یا jpg یا
فرمت عمومی دیگر خروجی مثل دستور زیر بده و خودت را خلاص کن(نه فشرده سازی tiff نوع Jpeg) !!!
ImageEn1.IO.savetoFile('c:\Output.jpg');

Mahyaa
پنج شنبه 09 شهریور 1385, 21:46 عصر
به فرمت کامل BMP یا jpg یا
فرمت عمومی دیگر خروجی مثل دستور زیر بده و خودت را خلاص کن

ممنون آقای عباسی با راهنماییتون مشکلم حل شد . به نظر میرسید که Comprestion نوع tif مناسب نبود . البته دلیل منطقی براش پیدا نکردم .به نظرم Help و توضیحات کافی برای شرح امکانات و جزئیات ImageEn از طرف HiComponent ارائه نشده . یعنی منابعش کامل و جامع نیستند .

ممنون :)

ali_abbasi22145
شنبه 11 شهریور 1385, 13:53 عصر
ممنون آقای عباسی با راهنماییتون مشکلم حل شد . به نظر میرسید که Comprestion نوع tif مناسب نبود . البته دلیل منطقی براش پیدا نکردم .به نظرم Help و توضیحات کافی برای شرح امکانات و جزئیات ImageEn از طرف HiComponent ارائه نشده . یعنی منابعش کامل و جامع نیستند .

ممنون :)

سلام
1-پس اینجا آن دستورات را بگذار تابقیه هم استفاده کنند.
2-به help بعد نصب خود کامپوننت مراجعه کن خیلی خوب است.
3-من این کامپوننت را برای HiComponent فارسی کردم همچنین بسیاری ازBUGهایش را رفع کرده ام و نسخه با licence رایگان به من داده اند و هر کمکی بخواهم بلافاصله برایم انجام می دهند پس شما هم باSUPPORT آنان تماس بگیرید.

patriot84ir
دوشنبه 03 اردیبهشت 1386, 12:45 عصر
سلام به همه
منم یک مشکلی با ImageEn دارم
___________________________

در برنامه ای که با دلفی نوشتم ، من فایلهای Tiff رو با ImageEnDBview در فرم نمایش میدم.
و پایگاه داده برنامه SQL .
و مشکله خاصی ام ندارم

ولی هنگامیکه فایل tiff مورد نظر از یک صفحه بیشتر شد با مشکل مواجه میشم

ممنون میشم اگه منو راهنمایی کنین