Poll

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!)

Author Topic: Imaging 0.3x Poll and Info  (Read 12238 times)

Offline Galfar

  • Administrator
  • Imaging User
  • *****
  • Posts: 351
    • View Profile
    • Galfar's Homepage
Imaging 0.3x Poll and Info
« on: 18 September 2007, 00:46:16 »
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: 5 December 2010, 20:07:57 by Galfar »

Offline jdarling

  • Imaging User
  • *
  • Posts: 11
    • View Profile
Re: Feature Focus? [Imaging 0.3x Poll]
« Reply #1 on: 4 October 2007, 18:27:21 »
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 :).

Offline Galfar

  • Administrator
  • Imaging User
  • *****
  • Posts: 351
    • View Profile
    • Galfar's Homepage
Re: Feature Focus? [Imaging 0.3x Poll]
« Reply #2 on: 5 October 2007, 21:53:52 »
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).

Offline jdarling

  • Imaging User
  • *
  • Posts: 11
    • View Profile
Re: Feature Focus? [Imaging 0.3x Poll]
« Reply #3 on: 5 October 2007, 22:27:31 »
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 :).  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 :(.  Right now I'm using:
Code: [Select]
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 :(.  It also doesn't handle the alpha blending, but hey it works :).

Offline arthurprs

  • Imaging User
  • *
  • Posts: 17
    • View Profile
Re: Feature Focus? [Imaging 0.3x Poll]
« Reply #4 on: 28 October 2007, 16:07:48 »
ease of use of 3rd party libraries support

Offline sofakng

  • Imaging User
  • *
  • Posts: 6
    • View Profile
Re: Feature Focus? [Imaging 0.3x Poll]
« Reply #5 on: 27 November 2007, 16:20:58 »
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...

Offline Galfar

  • Administrator
  • Imaging User
  • *****
  • Posts: 351
    • View Profile
    • Galfar's Homepage
Re: Feature Focus? [Imaging 0.3x Poll]
« Reply #6 on: 1 December 2007, 11:56:19 »
My other request would be getting transparency working when blitting :(
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 »

Offline Galfar

  • Administrator
  • Imaging User
  • *****
  • Posts: 351
    • View Profile
    • Galfar's Homepage
Re: Feature Focus? [Imaging 0.3x Poll]
« Reply #7 on: 7 December 2007, 20:01:34 »
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).

Offline Galfar

  • Administrator
  • Imaging User
  • *****
  • Posts: 351
    • View Profile
    • Galfar's Homepage
Re: Imaging 0.3x Poll and Info
« Reply #8 on: 25 January 2008, 01:39:48 »
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

Offline Galfar

  • Administrator
  • Imaging User
  • *****
  • Posts: 351
    • View Profile
    • Galfar's Homepage
Re: Imaging 0.3x Poll and Info
« Reply #9 on: 20 April 2008, 16:07:52 »
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.

Offline martinpm

  • Imaging User
  • *
  • Posts: 1
    • View Profile
Re: Imaging 0.3x Poll and Info
« Reply #10 on: 8 May 2008, 23:56:49 »
Tiff G4 / BW / G3 FAX. Anyway you are doing a very well job. ;D

Offline Galfar

  • Administrator
  • Imaging User
  • *****
  • Posts: 351
    • View Profile
    • Galfar's Homepage
Re: Imaging 0.3x Poll and Info
« Reply #11 on: 9 May 2008, 17:03:00 »
Thanks.

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


Vidok

  • Guest
Re: Imaging 0.3x Poll and Info
« Reply #12 on: 24 June 2008, 14:12:24 »
What about annotations and layers?

Offline arthurprs

  • Imaging User
  • *
  • Posts: 17
    • View Profile
Re: Imaging 0.3x Poll and Info
« Reply #13 on: 28 December 2008, 23:59:14 »
optimization maybe? (speed, size, etc..)