Closed GoogleCodeExporter closed 8 years ago
The problem is that the gdk_screen_get_rgba_colormap doesn't work correctly
under Windows and then Ardesia is working without an alpha channell.
We must investigate furthermore if exist a way to work with RGBA color with
Cairo on windows.
In the current implementation on windows in order to have a transparent window
I use
a layered window using the black as the "transparent color" but the colormap is
rgb.
Original comment by al...@paranoici.org
on 9 Jan 2011 at 3:11
Ypu can read an explanation about
this problem on http://cairographics.org/samples/dotnet-gdi-rendering/
and a sort of solution also
Original comment by al...@paranoici.org
on 10 Jan 2011 at 3:47
The example on http://cairographics.org/samples/dotnet-gdi-rendering/
is written in C# and works using an other image surface. This is out of our
scope because we want have a surface connected to the gtkwindow (or the HDC
associated)
Original comment by al...@paranoici.org
on 11 Jan 2011 at 4:40
I have attempt to create a surface with cairo_win32_surface_create_with_ddb
in this way:
cairo_win32_surface_create_with_ddb(hdc, CAIRO_FORMAT_ARGB32,
gdk_screen_width(), gdk_screen_height());
But I have a not paintable white window as result. It doesn't work
Original comment by al...@paranoici.org
on 11 Jan 2011 at 5:00
The goal is have a cairo surface and cairo context attached to the GdkWindow as
done
with this code (copied by annotation_window_callback.c):
--------------------------------------------------------------------------------
-----
/* The hdc has depth 32 and the technology is DT_RASDISPLAY */
HDC hdc = GetDC(GDK_WINDOW_HWND(data->annotation_window->window));
/*
* @TODO Use an HDC that support the ARGB32 format to support the alpha channel and the highlighter
* In the documentation is written that the now the resulting surface is in RGB24 format
*
*/
cairo_surface_t* surface = cairo_win32_surface_create(hdc);
data->annotation_cairo_context = cairo_create(surface);
--------------------------------------------------------------------------------
---
but using ARGB32
Original comment by al...@paranoici.org
on 11 Jan 2011 at 5:33
If will achieve the goal to have a paintable surface with alpha could be
possible deny the layered window usage to have the transparent window.
Original comment by al...@paranoici.org
on 11 Jan 2011 at 5:35
Can Help use UpdateLayeredWindow with a blend function?
Original comment by al...@paranoici.org
on 3 Feb 2011 at 6:19
I have tried to use the UpdateLayeredWindow with a blend function but I have
the same misbehaviour
Original comment by al...@paranoici.org
on 9 Mar 2011 at 1:09
http://comments.gmane.org/gmane.comp.lib.cairo/21593
Seems that the not RGBA colormap is a gdi limit that will be fixed by the GTK3
Original comment by al...@paranoici.org
on 22 Jun 2011 at 12:09
Original comment by al...@paranoici.org
on 2 Aug 2011 at 1:51
Original comment by al...@paranoici.org
on 2 Aug 2011 at 1:56
The Gtk 3 is out; the bug could be fixed porting the code from the gtk 2 to the
gtk 3
Original comment by al...@paranoici.org
on 9 Oct 2011 at 11:52
Ardesia on subversion repository has been ported on gtk3.
Are there some volunters that want to try to build Ardesia on WIndows and
update the issue status.
Original comment by pilolli....@gmail.com
on 27 Aug 2012 at 7:21
Ardesia is ported on GTK3 that this issue has become invalid.
Original comment by al...@paranoici.org
on 17 Sep 2012 at 5:06
Original issue reported on code.google.com by
al...@paranoici.org
on 9 Jan 2011 at 3:08