Page 1 of 2 1 2 LastLast
Results 1 to 15 of 29

Thread: JPEG uit clipboard naar DBImage

  1. #1

    jpg

    Kan er mij iemand vertellen hoe ik een jpg figuur dat op mijn plakbord staat, via mijn applicatie in een sql Server database kan krijgen. Dit is niet moeilijk indien het om een bmp gaat maar mijn ervaring is dat met jpgs dit al heel wat minder vanzelfsprekend is . Het lukt mij gewoon niet!!

    help mij dus aub...

    Thanx

  2. #2
    Hoi Ruben (welkom),

    Is het niet zo dat een jpg in het clipboard gelijk is aan een bitmap? Als ik in Paint Shop Pro een JPG open, deze naar het clipboard kopiëer dan kan ik hem naar een TDBImage zetten door middel van
    Code:
    DBImage1.PasteFromClipboard;
    Marcel

  3. #3
    Kijk ik dan nog even naar de source van die routine:
    Code:
    procedure TDBImage.PasteFromClipboard;
    begin
      if Clipboard.HasFormat(CF_BITMAP) and FDataLink.Edit then
        Picture.Bitmap.Assign(Clipboard);
    end;
    Het clipboard kan de volgende formaten bevatten (uit de helpfile)
    • CF_TEXT Text with a CR-LF combination at the end of each line. A null character identifies the end of the text.
    • CF_BITMAP A Windows bitmap graphic.
    • CF_METAFILEPICT A Windows metafile graphic.
    • CF_PICTURE An object of type TPicture.
    • CF_COMPONENT Any persistent object.
    Dus ook een JPG wordt blijkbaar gewoon een bitmap in het geheugen. Dat zou dus goed moeten gaan. Wat gaat er bij jou mis?
    Marcel

  4. #4
    Bedankt voor de reactie, maar dit lukt inderdaad zonder problemen.

    Het probleem ldoet hem voor wanneer ik dan deze wil opslaan in mijn database.
    Het is een BLOBFIELD.. maar wanneer ik een jpg wil opslaan (via een stream) lukt het niet. Nog erger is het om vanuit een database een jpg af te beelden..
    ;
    kan je dit even proberen??

    Bedankt

  5. #5
    Ik kan de JPG ook gewoon opslaan. Maar als ik er een DBImage aan koppel, dan gaat het mis. Volgens mij zit het probleem dus niet zozeer in de opslag (een blob is vrij 'dom' en 'weet' niets over het formaat dat wordt opgeslagen), maar in de viewer die er blijkbaar vanuit gaat dat ie een bitmap gaat laten zien.

    Ik denk dat je het beste eens op www.Torry.net of www.VCLCrawler.com kunt kijken of je een viewer kunt vinden die ook JPG aan kan.
    Marcel

  6. #6
    Hoi Ruben.

    Op verzoek van Marcel heb ik hier een TXDBImage component neergezet, die JPG, BMP, ICO en EMF kan opslaan/ophalen/tonen. Unzip de twee bestanden uit de zip en installeer de unit XDBImage in bijvoorbeeld je samples package.

    Dit component is gemaakt voor Delphi 5. In de source staat commentaar over hoe je het component kunt gebruiken.

    Met vriendelijke groet,
    Marco Hemmes

  7. #7
    En het bestand...
    Attached Files Attached Files
    Marcel

  8. #8
    Alvast bedankt,
    maar er blijft zich een probleempie voordoen :
    als ik de jpg opgeslaan heb... en hem dan weer wil oproepen via de XDBImage krijg ik volgende fout melding :
    Not a JPEG file : starts with 0x42 0x4d

    die header blijft dus een probleem, wat kan ik hieraan doen?

    groeten

    Ruben

  9. #9
    Lijkt me duidelijk. 0x42 0x4D ziet er in ASCII uit als 'BM' en dat betekent dat er een bitmap in de blob zit, geen JPEG. Zet de ImageType property op Auto, dan kijkt het component zelf met welke tekens de blob begint en interpreteert aan de hand daarvan wat voor soort plaatje er in de blob zit.

    Succes.

    Marco Hemmes
    Marco Hemmes

  10. #10
    was het maar zo eenvoudig.

    het gaat wel degelijk om een jpg die ik opsla op deze manier:
    OpenDialog.FileName := '';
    with OpenDialog do
    if Execute then XDBImage1.Picture.LoadFromFile(FileName);

    //dus ik kies een willekeurige jpeg op mijn HD en alles lijkt goed te gaan...

    te property ImageFormat = imauto (staat default zo en had daar niets aan gewijzigd..)

    na de toekenning zoals hierboven beschreven doe ik enkel een post.

    ... waar kan het aan liggen denk je?

    groeten!

    Ruben

  11. #11
    sorry...

    bij nader inzien verloopt alles toch zoals het hoort...
    er stond nog ergens een andere component die aangesproken werd, dus de fout kwam niet voort van de XDBimage...

    bedankt marco, bedankt Marcel

  12. #12
    TGreenDelphiBug Luc's Avatar
    Join Date
    Nov 2002
    Location
    Flanders (Belgium) Uses: Delphi 8 Enterprise Likes: Firebird
    Posts
    328
    Originally posted by Marcel
    En het bestand...
    ... is er niet meer ?
    Real software engineers don't debug programs, they verify correctness.

  13. #13
    @Luc: bij mij is het er nog steeds
    DeX 3 Delphi := The ease of VB with the power of C; Zoekt en gij zult vinden

  14. #14
    TGreenDelphiBug Luc's Avatar
    Join Date
    Nov 2002
    Location
    Flanders (Belgium) Uses: Delphi 8 Enterprise Likes: Firebird
    Posts
    328
    Inderdaad , even naar de HD en dan openen lukt.
    Real software engineers don't debug programs, they verify correctness.

  15. #15
    Senior Member PsychoMark's Avatar
    Join Date
    Nov 2001
    Location
    Raamsdonksveer
    Posts
    10,269
    Qui custodiet ipsos custodes

Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. jpeg in dbimage?
    By BTA in forum Databases
    Replies: 3
    Last Post: 10-Jul-03, 14:41
  2. 1 letter uit edit naar andere edit
    By supersurver in forum Algemeen
    Replies: 7
    Last Post: 11-Apr-03, 21:58
  3. Waarde uit edit veld naar FastReport
    By labee in forum Databases
    Replies: 4
    Last Post: 14-Mar-03, 23:00
  4. conversie van binair naar hexadecimaal
    By paulf in forum Algemeen
    Replies: 3
    Last Post: 08-Sep-02, 22:39
  5. Replies: 1
    Last Post: 15-Feb-02, 00:33

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •