Vampyre Imaging Library Forum
12 May 2008, 01:38:39 *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Imaging 0.24.2 Released!
 
   Home   Help Search Members Login Register  
Poll
Question: What features you would want to see enhanced/extended in upcoming Imaging 0.3x?
Image file formats
Image data formats
VCL/LCL support
Canvas functions
Documentation/Demos
3rd party libraries support (D3D, OGL, SDL, ...)
Ease of use
Other (make a post about it!)

Pages: [1]
  Reply  |  Print  
Author Topic: Imaging 0.3x Poll and Info  (Read 1028 times)
Galfar
Administrator
Sabretooth Tiger
*****
Offline Offline

Posts: 103


327174200
View Profile WWW Email
« on: 18 September 2007, 00:46:16 »
Reply with quoteQuote

Work on Imaging 0.3x branch is about to begin in few weeks.

What library features should I focus on first?
What should be extended or added? (compared to current version)
Please make a vote.

Note: SMF only allows registred users to vote in a poll.
« Last Edit: 25 January 2008, 01:25:03 by Galfar » Logged
jdarling
Small Carnivorous Fish
**
Offline Offline

Posts: 11


View Profile
« Reply #1 on: 4 October 2007, 18:27:21 »
Reply with quoteQuote

I'd like to see support built out in a few more image formats.  Specifically: XPM and PSD support added.  AWD would be a nice to have, but seeing as how ArtWeaver can export to other formats (PNG, TIFF, etc...) it isn't that much of a hassle.  Might be some re-useable code in GraphEx (http://www.soft-gems.net/index.php?option=com_content&task=view&id=13&Itemid=33).

Of course, Lazarus has built in support for XPM that could be used for reference as well Smiley.
Logged
Galfar
Administrator
Sabretooth Tiger
*****
Offline Offline

Posts: 103


327174200
View Profile WWW Email
« Reply #2 on: 5 October 2007, 21:53:52 »
Reply with quoteQuote

Marco:
I'll have a look at DelphiTWAIN.

Jeremy:
PSD is already supported (since 0.24 in June). XPM is on my list for a long time (may
be included in next 0.24.2 patch release if I'll have the time).
Do you know if AWD specs are published somewhere? I downloaded their SDK but ii looks like there is plugins and translations stuff only (it is in Delphi though, nice).
Logged
jdarling
Small Carnivorous Fish
**
Offline Offline

Posts: 11


View Profile
« Reply #3 on: 5 October 2007, 22:27:31 »
Reply with quoteQuote

I don't know if the spec is published some place or not.  I have contacted the author before and he seemed very responsive, of course that was in regards to the Lua integration and not direct access to his data files Smiley.  When I tried reading in a PSD it didn't quite work well, but then again the PSD is a CS3 version with embedded objects so that may be a problem.  I'll have Creative save it as a CS2 and see how that loads.

My other request would be getting transparency working when blitting Sad.  Right now I'm using:
Code:
procedure BlendImageTo(WhatCanvas: TCanvas; ImageData : TImageData; SourceRect : classes.TRect; DestX, DestY : Integer; AlphaThreshold : Byte = 255);
var
  ax, ay,
  ix, iy : integer;
  c32    : TColor32Rec;
begin
  iy := DestY;
  for ay := SourceRect.Top to SourceRect.Bottom do
    begin
      ix := DestX;
      for ax := SourceRect.Left to SourceRect.Right do
        begin
          c32:= GetPixel32(ImageData, ax, ay);
          if c32.A >= AlphaThreshold then
            WhatCanvas.Pixels[ix, iy] := RGBToColor(c32.R, c32.G, c32.B);
          inc(ix);
        end;
      inc(iy);
    end;
end;
Of course thats extremely slow and not really a good way to perform the blit Sad.  It also doesn't handle the alpha blending, but hey it works Smiley.
Logged
arthurprs
Small Carnivorous Fish
**
Offline Offline

Posts: 10


View Profile Email
« Reply #4 on: 28 October 2007, 16:07:48 »
Reply with quoteQuote

ease of use of 3rd party libraries support
Logged
sofakng
Lowly Worm
*
Offline Offline

Posts: 6


View Profile Email
« Reply #5 on: 27 November 2007, 16:20:58 »
Reply with quoteQuote

I'd really like it to support alpha blending...

(eg. if I draw an image on top of another image, I'd like to set the blending just like in DirectX)

This should be really easy to implement (right?).  It seems like all that needs to be done is add/subtract/multiply the pixels between the source and destination with the given blending operation...
Logged
Galfar
Administrator
Sabretooth Tiger
*****
Offline Offline

Posts: 103


327174200
View Profile WWW Email
« Reply #6 on: 1 December 2007, 11:56:19 »
Reply with quoteQuote

My other request would be getting transparency working when blitting Sad
I'd really like it to support alpha blending...

Thats on my list already (for quite a long time I might add). I plan to implement
various source and destination blending functions (just like in D3D/OGL).
Problem with this is that it won't be very fast - so I also plan to add
optimized versions of some most used blending operations (like alpha and additive blend)
but only for some image data formats.
« Last Edit: 1 December 2007, 11:58:22 by Galfar » Logged
Galfar
Administrator
Sabretooth Tiger
*****
Offline Offline

Posts: 103


327174200
View Profile WWW Email
« Reply #7 on: 7 December 2007, 20:01:34 »
Reply with quoteQuote

Some sort of SVG support can be done (loading only since Imaging is raster image library).
It could use new canvas to draw shapes defined in SVG xml files (nothing too fancy though).
Logged
Galfar
Administrator
Sabretooth Tiger
*****
Offline Offline

Posts: 103


327174200
View Profile WWW Email
« Reply #8 on: 25 January 2008, 01:39:48 »
Reply with quoteQuote

I started with Imaging 0.30 in November '07 and designed basic classes and structures.
Also basic processes like data format conversions and file loading saving were written.
Currently it is nearly 100 KiB of Pascal code but still far from usable.
I hope I'll have more time for it in coming months.

Some of the new features (not in 0.2x) in 0.30:
Data Formats:
  • Native 1, 2, and 4 bit grayscale and indexed formats
  • New YCC and CMYK data formats
  • New compressed data formats (ATI 3Dc, ...)
  • Custom data formats
Logged
lurker
Guest


Email
« Reply #9 on: 20 April 2008, 15:04:24 »
Reply with quoteQuote Modify messageModify Remove messageRemove



support alpha blending
streaming jpg2000
Logged
Galfar
Administrator
Sabretooth Tiger
*****
Offline Offline

Posts: 103


327174200
View Profile WWW Email
« Reply #10 on: 20 April 2008, 16:07:52 »
Reply with quoteQuote

Quote
support alpha blending
That's the plan.
Quote
streaming jpg2000
This depends mainly on OpenJpeg library Imaging uses for Jpeg 2000 decoding/encoding, they are some big IO changes planned for OpenJpeg 2.0 so maybe it will be possible.
Logged
martinpm
Lowly Worm
*
Offline Offline

Posts: 1


View Profile Email
« Reply #11 on: 8 May 2008, 23:56:49 »
Reply with quoteQuote

Tiff G4 / BW / G3 FAX. Anyway you are doing a very well job. Grin
Logged
Galfar
Administrator
Sabretooth Tiger
*****
Offline Offline

Posts: 103


327174200
View Profile WWW Email
« Reply #12 on: 9 May 2008, 17:03:00 »
Reply with quoteQuote

Thanks.

You mean saving Tiffs with these compression schemes?
Loading should work now I think.

Logged
Pages: [1]
  Reply  |  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC Valid XHTML 1.0! Valid CSS!
Page created in 0.355 seconds with 20 queries.