GFL SDK 3.11

Discussions on GFL SDK, the graphic library for reading and writing graphic files

Moderators: XnTriq, helmut, xnview

User avatar
xnview
Author of XnView
Posts: 44926
Joined: Mon Oct 13, 2003 7:31 am
Location: France

GFL SDK 3.11

Post by xnview »

Dear user of GFL SDK,

GFL SDK v3.11 for Windows 32&64 bits (+ unicode version), linux 32bits, linux 64bits & MacOSX Universal is available

Changelogs:
* Problems with IPTC editing

Direct download:
Windows:
http://download.xnview.com/GflSDKSetup.exe
http://download.xnview.com/GflSDK-win.zip

Linux x86:
http://download.xnview.com/GflSDK-Linux-x86.tgz

Linux x86 64bits:
http://download.xnview.com/GflSDK-Linux64-x86.tgz

MacOSX universal:
http://download.xnview.com/GflSDK-MacOSX.tgz
Pierre.
sabine_m
Posts: 4
Joined: Fri Mar 12, 2010 1:41 pm

Re: GFL SDK 3.11

Post by sabine_m »

Hi,

I have downloaded and installed the SDK.
Unfortunately I can not compile the Visual Basic project.
It shows the errors:

"Method or data member not found"

This is the code:

extGetGflComments Infos.Comment, Comments, Infos.NumberOfComment

In the structure lacks the definition for "Comment".


Public Type GFL_FILE_INFORMATION
Type As Integer
Origin As Integer
Width As Long
Height As Long
FormatIndex As Long
FormatName As String * 8
Description As String * 64
Xdpi As Integer
Ydpi As Integer
BitsPerComponent As Integer
ComponentsPerPixel As Integer
NumberOfImages As Long
FileSize As Long
ColorModel As Integer
Compression As Integer
CompressionDescription As String * 64
XOffset As Long
YOffset As Long
ExtraInfos As Long
End Type

What can I do?
User avatar
xnview
Author of XnView
Posts: 44926
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: GFL SDK 3.11

Post by xnview »

Remove this code, Comment is not more supported
Pierre.
sabine_m
Posts: 4
Joined: Fri Mar 12, 2010 1:41 pm

Re: GFL SDK 3.11

Post by sabine_m »

After I deleted the line I could compile the program though, but the execution came the following errorr:

File not found: libgfl305.dll

There is no such a file.

I found only the file libgfl311.dll.

The program can yet so never have worked?
User avatar
xnview
Author of XnView
Posts: 44926
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: GFL SDK 3.11

Post by xnview »

sabine_m wrote:After I deleted the line I could compile the program though, but the execution came the following errorr:
File not found: libgfl305.dll
There is no such a file.
I found only the file libgfl311.dll.
The program can yet so never have worked?
Replace in the .bas, libgfl305 by libgfl311
Pierre.
Ben321
Posts: 39
Joined: Fri Jul 30, 2010 8:05 am

Re: GFL SDK 3.11

Post by Ben321 »

Ok, I got it, and want to use it with VB6, but now have no clue which DLL and LIB files files I need.
The folders with the important looking DLL and LIB files are like this.

GflAx
---Lib
------light
---------GflAx.dll
------std
---------GflAx.dll
lib
---light
------libgfl311.dll
---libgfl.lib
---libgfl311.dll
---libgfle.lib
---libgfle311.dll
libw
---libgfl.lib
---libgfl311.dll
---libgfle.lib
---libgfle311.dll
(this ignores the 64bit folders clearly marked as lib64 and libw64w as I'm using 32bit windows)

Please tell me what file or files I'll need to use with VB6. Thanks in advance.
User avatar
xnview
Author of XnView
Posts: 44926
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: GFL SDK 3.11

Post by xnview »

Ben321 wrote: Please tell me what file or files I'll need to use with VB6. Thanks in advance.
Do you use the DLL or OCX?
Pierre.
Ben321
Posts: 39
Joined: Fri Jul 30, 2010 8:05 am

Re: GFL SDK 3.11

Post by Ben321 »

xnview wrote:
Ben321 wrote: Please tell me what file or files I'll need to use with VB6. Thanks in advance.
Do you use the DLL or OCX?
I prefer OCX, but if I'm given a BAS file with all the needed declares I can import into my project, or a text file with the declares I can copy/paste from notepad I can do that too.

So how about giving me both sets of instructions, one for OCX and one for DLL.
Thanks.
User avatar
xnview
Author of XnView
Posts: 44926
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: GFL SDK 3.11

Post by xnview »

Ben321 wrote:
xnview wrote:
Ben321 wrote: Please tell me what file or files I'll need to use with VB6. Thanks in advance.
Do you use the DLL or OCX?
I prefer OCX, but if I'm given a BAS file with all the needed declares I can import into my project, or a text file with the declares I can copy/paste from notepad I can do that too.

So how about giving me both sets of instructions, one for OCX and one for DLL.
Thanks.
So you need only GflAx.dll
Pierre.
Ben321
Posts: 39
Joined: Fri Jul 30, 2010 8:05 am

Re: GFL SDK 3.11

Post by Ben321 »

xnview wrote:
Ben321 wrote:
xnview wrote: Do you use the DLL or OCX?
I prefer OCX, but if I'm given a BAS file with all the needed declares I can import into my project, or a text file with the declares I can copy/paste from notepad I can do that too.

So how about giving me both sets of instructions, one for OCX and one for DLL.
Thanks.
So you need only GflAx.dll
Ok, but when I try adding it by doing ctrl+t (to bring up the components menu) go to browse, then doubleclick on it adds it to the list. But then when I press ok, it says "c:\SOMELONGPATH\GflAx.dll could not be loaded".

How do I actually add it to my program? I'm confused.
Ben321
Posts: 39
Joined: Fri Jul 30, 2010 8:05 am

Re: GFL SDK 3.11

Post by Ben321 »

Ok, finally figured out how to use the standard GflAx.dll version of it, but it's giving me problems (didn't bother with light version but it might have same problems). What I mean is this.

In VB when I go to FileFormat = AX_HRU when I save it it saved a *.CIN file instead! And that's just 1 example. There were several others that gave the wrong output format as well.

And I also tried directly using the numbers from this table in the help file for the desired formats. THEY are incorrect as well!

1 AX_JPEG
2 AX_GIF
3 AX_PNG
4 AX_BMP
5 AX_TIFF
6 AX_TGA
7 AX_PCX
8 AX_XPM
9 AX_IFF
10 AX_SOFT
11 AX_SGI
12 AX_DCX
13 AX_PBM
14 AX_PGM
15 AX_PPM
16 AX_PNM
18 AX_XBM
19 AX_ICO
20 AX_PSION3
21 AX_PSION5
22 AX_PALM
23 AX_EMF
24 AX_VISTA
25 AX_ALIAS
26 AX_RLA
27 AX_CIN
28 AX_HRU
29 AX_DKB
30 AX_QRT
31 AX_VIVID
32 AX_MTV
33 AX_RAY
34 AX_JIF
35 AX_GPAT
39 AX_BIORAD
40 AX_RAD
42 AX_PRC
43 AX_WRL
45 AX_WBMP
47 AX_UYVYI
48 AX_UYVY
49 AX_RAW


And just in case you didn't notice, not only are some of the outputs wrong, but some numbers are COMPLETELY MISSING from the table in the help file. They are:
17
36
37
38
41
44
46

And one more thing that would help me debug it would be to show the file extension for each file format in the table in the help file. For example for file format PSION3 the extenstin is NOT *.PSION3. Truth is I don't know what the correct extension for a PSION3 format image file is.

Please FIX the activeX dll (aka OCX) file version of it and rerelease it (and the regular DLL file version if it needs it too), and also PLEASE release corrected documentation as well!The help file was as useless as the GflAx.dll file!

By the way, I'm using the zip file version of this package, not the install version. I'm not sure if they are any different, but they might be. If so, and if the install version works, then the zip file version needs correcting.
User avatar
xnview
Author of XnView
Posts: 44926
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: GFL SDK 3.11

Post by xnview »

You use something like that ".SaveFormat = AX_JPEG" ?
Pierre.
Ben321
Posts: 39
Joined: Fri Jul 30, 2010 8:05 am

Re: GFL SDK 3.11

Post by Ben321 »

xnview wrote:You use something like that ".SaveFormat = AX_JPEG" ?
In the active-x dll version of it (and possibly the regular dll version though I haven't tried it yet) it doesn't work all the time with command like ".saveformat = ax_jpeg". I realize ax_jpeg a string representing a constant in an enum, but I also found not all of the enum strings produced constants that were the number of the format corresponding to the entered string. For example, ax_hru does NOT result in the saving of an *.HRU file. It saved as an *.CIN file instead.

Please re-examine the source code for the active-x dll file and fix any errors (the error I mentioned, as well as any other errors I might not have noticed), and compile re-release it if necessary, as well as updating the documentation in the help file as necessary.
User avatar
xnview
Author of XnView
Posts: 44926
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: GFL SDK 3.11

Post by xnview »

Ben321 wrote:
xnview wrote:You use something like that ".SaveFormat = AX_JPEG" ?
In the active-x dll version of it (and possibly the regular dll version though I haven't tried it yet) it doesn't work all the time with command like ".saveformat = ax_jpeg".
Strange, i can't reproduce...
I realize ax_jpeg a string representing a constant in an enum, but I also found not all of the enum strings produced constants that were the number of the format corresponding to the entered string. For example, ax_hru does NOT result in the saving of an *.HRU file. It saved as an *.CIN file instead.
But there is no AX_HRU!!!!

Do you have tried .SaveFormatName = "jpeg"?
Pierre.
Ben321
Posts: 39
Joined: Fri Jul 30, 2010 8:05 am

Re: GFL SDK 3.11

Post by Ben321 »

xnview wrote:
Ben321 wrote:
I realize ax_jpeg a string representing a constant in an enum, but I also found not all of the enum strings produced constants that were the number of the format corresponding to the entered string. For example, ax_hru does NOT result in the saving of an *.HRU file. It saved as an *.CIN file instead.
But there is no AX_HRU!!!!
Then that is one of the bugs. Because it sure is listed in the enum SaveFormat that comes with GflAx.dll as this screenshot of my copy of it implemented in VB6 shows.
Image



And one other thing.
The sample provided for it is

Code: Select all

Dim Ctrl As GflAx.GflAx
Set Ctrl = New GflAx.GflAx

With Ctrl
    .LoadBitmap App.Path & "\image.jpg" 'Load the file
    .ChangeColorDepth AX_To16Colors 'Change color depth
    .FlipHorizontal 'Horizontal flip
    .ResizeCanvas .Width + 10, .Height + 10, RGB(255, 255, 255) 'Enlarge size of 10 pixels..
    Me.Picture = .GetPicture 'Display picture
End With

Set Ctrl = Nothing
And this produces a black image! In fact from my experience, the command ChangeColorDepth almost always produces a black image when displayed in a picture box with GetPicture, and almost always only produces the correct effect when its output is written to a file with the SaveBitmap command. It has to be converted BACK to 24bpp with a second use of ChangeColorDepth after lowering the color depth to the desired value with the first use of ChangeColorDepth, if it is to be correctly viewed directly in a picture box. Yet another bug it seems you'll have to fix.