نمایش نتایج 1 تا 6 از 6

نام تاپیک: نمایش فایل pdf ذخیره شده در دیتابیس

  1. #1

    Question نمایش فایل pdf ذخیره شده در دیتابیس

    با سلام خدمت دوستان گرامی:
    من یک فایل pdf رو که در ابزار gtPDFViewer1 کامپوننت pdftoolkit نمایش داده شده بود با کد :


    procedure TForm1.Button2Click(Sender: TObject); var
    blob: TBlobField;
    TempStrm: TStream;
    begin
    ADOTable1.Open;
    ADOTable1.Last;
    ADOTable1.Insert;
    blob := TBlobField(ADOTable1.FieldByName('P')); // ensure it ís a blob
    TempStrm := ADOTable1.CreateBlobStream(blob, bmWrite);
    try
    gtPDFDocument1.SaveToStream(TempStrm);
    finally
    TempStrm.Free;
    ADOTable1.Post;
    ADOTable1.Close;


    ShowMessage('ok');
    gtPDFDocument1:=nil;
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from table1');
    ADOQuery1.Open;
    end;

    end;

    در دیتا بیس ذخیره کردم
    حالا چجور می تونم مجددا این فایل رو نمایش در gtPDFViewer1 بدم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
    ممنون میشم اگه راهنمایی بفرمایید.

  2. #2

    نقل قول: نمایش فایل pdf ذخیره شده در دیتابیس

    اساتید ، دوستان کسی تجربه ای در این خصوص نداره>؟

  3. #3
    کاربر دائمی آواتار hp1361
    تاریخ عضویت
    دی 1384
    محل زندگی
    تهران
    پست
    750

    نقل قول: نمایش فایل pdf ذخیره شده در دیتابیس

    نقل قول نوشته شده توسط sam3610 مشاهده تاپیک
    با سلام خدمت دوستان گرامی:
    من یک فایل pdf رو که در ابزار gtPDFViewer1 کامپوننت pdftoolkit نمایش داده شده بود با کد :


    procedure TForm1.Button2Click(Sender: TObject); var
    blob: TBlobField;
    TempStrm: TStream;
    begin
    ADOTable1.Open;
    ADOTable1.Last;
    ADOTable1.Insert;
    blob := TBlobField(ADOTable1.FieldByName('P')); // ensure it ís a blob
    TempStrm := ADOTable1.CreateBlobStream(blob, bmWrite);
    try
    gtPDFDocument1.SaveToStream(TempStrm);
    finally
    TempStrm.Free;
    ADOTable1.Post;
    ADOTable1.Close;


    ShowMessage('ok');
    gtPDFDocument1:=nil;
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from table1');
    ADOQuery1.Open;
    end;

    end;

    در دیتا بیس ذخیره کردم
    حالا چجور می تونم مجددا این فایل رو نمایش در gtPDFViewer1 بدم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
    ممنون میشم اگه راهنمایی بفرمایید.
    سلام

    فیلد رو باید در قالب Stream بخونید(و مثلا درون یک متغیر از جنس Stream بریزید)

    با استفاده از TgtCustomPDFDocument.LoadFromStream Method نمایشش بدید

    مثالش در آدرس زیر هست:

    https://www.gnostice.com/docs/pdftoo...am@String.html

  4. #4

    نقل قول: نمایش فایل pdf ذخیره شده در دیتابیس

    نقل قول نوشته شده توسط hp1361 مشاهده تاپیک
    سلام

    فیلد رو باید در قالب Stream بخونید(و مثلا درون یک متغیر از جنس Stream بریزید)

    با استفاده از TgtCustomPDFDocument.LoadFromStream Method نمایشش بدید

    مثالش در آدرس زیر هست:

    https://www.gnostice.com/docs/pdftoo...am@String.html
    ممنون از شما بررسی میکنم نتیجه رو همینجا اعلام میکنم

  5. #5

    نقل قول: نمایش فایل pdf ذخیره شده در دیتابیس

    دوست عزیز من کد رو به این نحو نوشتم :
    procedure TForm1.Button3Click(Sender: TObject);var
    gtPDFDocument1: TgtPDFDocument;
    MemoryStream1: TMemoryStream;
    begin
    MemoryStream1 := TMemoryStream.Create;
    MemoryStream1.LoadFromFile(ADOQuery1.FieldValues['p']);
    gtPDFDocument1 := TgtPDFDocument.Create(Nil);
    try
    gtPDFDocument1.LoadFromStream(MemoryStream1);
    finally


    ShowMessage('ok');
    if gtPDFDocument1.IsLoaded then
    begin
    gtPDFViewer1.Active := True;
    end;
    MemoryStream1.Free;
    end;
    end;

    این ارور رو میده :
    Untitled.png
    آخرین ویرایش به وسیله sam3610 : شنبه 21 مهر 1397 در 20:54 عصر

  6. #6
    کاربر دائمی آواتار hp1361
    تاریخ عضویت
    دی 1384
    محل زندگی
    تهران
    پست
    750

    نقل قول: نمایش فایل pdf ذخیره شده در دیتابیس

    نقل قول نوشته شده توسط sam3610 مشاهده تاپیک
    دوست عزیز من کد رو به این نحو نوشتم :
    procedure TForm1.Button3Click(Sender: TObject);var
    gtPDFDocument1: TgtPDFDocument;
    MemoryStream1: TMemoryStream;
    begin
    MemoryStream1 := TMemoryStream.Create;
    MemoryStream1.LoadFromFile(ADOQuery1.FieldValues['p']);
    gtPDFDocument1 := TgtPDFDocument.Create(Nil);
    try
    gtPDFDocument1.LoadFromStream(MemoryStream1);
    finally


    ShowMessage('ok');
    if gtPDFDocument1.IsLoaded then
    begin
    gtPDFViewer1.Active := True;
    end;
    MemoryStream1.Free;
    end;
    end;

    این ارور رو میده :
    Untitled.png
    سلام

    تابع LoadFromFile یک فایل موجود بر روی دیسک رو لود میکنه. شما نیاز دارید که از Memory لود کنید


    به این شکل باید بنویسید


    var
    BlobStream: TStream;
    begin
    if (not ADOQuery1.FieldByName('p').IsNull) then
    begin
    BlobStream := TStream.Create;
    BlobStream := ADOQuery1.CreateBlobStream(ADOQuery1.FieldByName(' p'), bmRead);
    try
    gtPDFDocument1 := TgtPDFDocument.Create(Nil);
    gtPDFDocument1.LoadFromStream(BlobStream);
    finally
    ShowMessage('ok');
    if gtPDFDocument1.IsLoaded then
    begin
    gtPDFViewer1.Active := True;
    end;
    BlobStream.Free;
    end;
    end;
    end;


تاپیک های مشابه

  1. نمایش آخرین رکورد ذخیره شده در دیتابیس
    نوشته شده توسط hadiM18 در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 11
    آخرین پست: چهارشنبه 09 مرداد 1398, 19:06 عصر
  2. سوال: نمایش pdf ذخیره شده در دیتابیس در gtPDFViewer1
    نوشته شده توسط sam3610 در بخش کامپوننت های سایر شرکت ها، و توسعه کامپوننت
    پاسخ: 1
    آخرین پست: جمعه 13 مهر 1397, 15:40 عصر
  3. سوال: دانلود فایل word ذخیره شده در دیتابیس
    نوشته شده توسط cerezaei65 در بخش C#‎‎
    پاسخ: 2
    آخرین پست: پنج شنبه 06 مهر 1391, 08:22 صبح
  4. باز کردن فایل pdf ذخیره شده در دیتابیس
    نوشته شده توسط m3raj_3 در بخش VB.NET
    پاسخ: 2
    آخرین پست: دوشنبه 06 تیر 1390, 08:52 صبح
  5. چگونگی نمایش فایل GIF ذخیره شده در پارادکس
    نوشته شده توسط siramin در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 5
    آخرین پست: شنبه 24 شهریور 1386, 17:54 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •