summaryrefslogtreecommitdiff
path: root/canvas
diff options
context:
space:
mode:
Diffstat (limited to 'canvas')
-rw-r--r--canvas/README.md41
1 files changed, 24 insertions, 17 deletions
diff --git a/canvas/README.md b/canvas/README.md
index b68da4c3bf5c..459b588d6f6a 100644
--- a/canvas/README.md
+++ b/canvas/README.md
@@ -1,46 +1,53 @@
+# UNO-based Graphics Backend
+
UNO-based graphics backend, lesser impedance to modern graphics APIs
than vcl.
-== The Canvas Framework ==
+## The canvas Framework
-The canvas framework is the successor of the system GUI and graphics
+The `canvas` framework is the successor of the system GUI and graphics
backend VCL. Basic functionality is available, supplying just as much
features as necessary to provide a VCL-equivalent feature set (except
proper BiDi/CTL support).
-The canvas framework consists of the following two modules, canvas and
-cppcanvas. Additionally, a new generic graphics tooling is used (but
+The `canvas` framework consists of the following two modules, `canvas` and
+`cppcanvas`. Additionally, a new generic graphics tooling is used (but
not exclusively by the canvas, Armin's drawinglayer module also make
-use of it), which resides in basegfx.
+use of it), which resides in `basegfx`.
The UNO API used by the canvas is primarily under
-css::rendering, with css::rendering::XCanvas
+`css::rendering`, with `css::rendering::XCanvas`
being the central interface.
-== The slideshow engine ==
+## The slideshow Engine
-The slideshow engine has replaced the former Impress-embedded
+The `slideshow` engine has replaced the former Impress-embedded
presentation framework with a fully independent UNO component, and it
is based on the canvas. Some features used there are only available
-from canvas, like double-buffering, and hardware-accelerated
+from `canvas`, like double-buffering, and hardware-accelerated
alpha-blending (currently not on all platforms).
-== Cairo canvas ==
+## Cairo canvas
-cairo canvas is one of backends of canvas component. canvas is mostly
+Cairo `canvas` is one of backends of canvas component. `canvas` is mostly
used for slideshow rendering and also for emf+ rendering. we hoped it
will even be used by drawing layer, but it didn't happen (yet?) for
-API look at offapi/com/sun/star/rendering/, the implementation is in
-canvas and cppcanvas modules.
+API look at `offapi/com/sun/star/rendering/`, the implementation is in
+`canvas` and `cppcanvas` modules.
-cairo canvas backend uses cairo library for rendering. main advantage
+Cairo `canvas` backend uses Cairo library for rendering. Main advantage
is support of alpha transparency and in some cases accelerated
rendering.
-the backend itself is quite old and stable, not many changes in that
+The backend itself is quite old and stable, not many changes in that
area lately, mostly changes for emf+ rendering, communication with
vcl and bugfixes
-FUTURE work: look at cairo canvas and situation when it is used
-(mostly slideshow). TODO there still might be more cases when we
+## Future Works
+
+Look at Cairo `canvas` and situation when it is used
+(mostly slideshow).
+
+## TODO
+There still might be more cases when we
can save some roundtrips when exchanging data with vcl.