author | Jan Vrany <jan.vrany@labware.com> |
Mon, 15 Jun 2020 15:01:43 +0100 | |
changeset 88 | 9d51db2ba641 |
parent 79 | df95786f3e31 |
permissions | -rw-r--r-- |
58
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
1 |
# Cairo for Smalltalk/X |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
2 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
3 |
**stx:goodies/libcairo** is a Smalltalk/X package providing integration of [Cairo graphics library][1]. |
59 | 4 |
It contains a drop-in replacement for native GC ([DeviceGraphicsContext][5]) to switch |
5 |
rendering of some or all windows to Cairo. |
|
58
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
6 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
7 |
## Features |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
8 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
9 |
* Full access to Cairo API |
79
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
10 |
* Full support for icons with alpha channel |
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
11 |
* Full support for transparency (alpha) for all drawing operations (lines, rectangles) |
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
12 |
* Full and correct support for arbitrary transformation |
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
13 |
* Almost-pixel identical results on Windows and Linux (X11) |
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
14 |
* Ready for Quartz (Mac OS X) and Wayland (X11 seems to be phasing out) |
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
15 |
* **Integrates with Smalltalk/X so complete application can be rendered using Cairo** |
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
16 |
|
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
17 |
## Screenshot |
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
18 |
|
df95786f3e31
README: Addedc screenshot to readme.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
66
diff
changeset
|
19 |
![Launcher](https://bitbucket.org/janvrany/stx-goodies-libcairo/wiki/screenshot_013.png) |
59 | 20 |
|
21 |
## Starting Points |
|
22 |
||
23 |
**For the impatient** |
|
24 |
Following code will install [CairoGraphicsContext][6] as graphics |
|
25 |
device's default graphics context so new windows will be rendered using Cairo: |
|
26 |
||
27 |
Screen current graphicsContextClass: CairoGraphicsContext. |
|
28 |
||
29 |
To revert back to standard rendering, evaluate: |
|
30 |
||
31 |
Screen current graphicsContextClass: Screen current class graphicsContextClass |
|
32 |
||
33 |
For more defailts, see: |
|
34 |
||
35 |
* [Wiki][7] |
|
36 |
* [Examples][8] in particular |
|
58
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
37 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
38 |
## Supported versions of Smalltalk/X |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
39 |
|
59 | 40 |
**stx:goodies/libcairo** is available for [Smalltalk/X "jv branch"][2], both |
41 |
**Windows and Linux**, 32bit and 64bit. |
|
58
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
42 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
43 |
Should you need Cairo on any other version of Smalltalk/X, please contact the author by email. |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
44 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
45 |
## Author |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
46 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
47 |
Jan Vrany `<jan.vrany [at] fit.cvut.cz>` |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
48 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
49 |
## License |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
50 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
51 |
![CC-BY-NC](https://i.creativecommons.org/l/by-nc/4.0/88x31.png) |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
52 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
53 |
This software is licensed under [Creative Commons Attribution-NonCommercial 4.0 International License][3]. You may find a full license text in `LICENSE.txt`. |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
54 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
55 |
In short, you are free to: |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
56 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
57 |
* **Share** — copy and redistribute the material in any medium or format, |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
58 |
* **Adapt** — remix, transform, and build upon the material, |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
59 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
60 |
under the following terms: |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
61 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
62 |
* **Attribution** — You must give appropriate credit, provide a link to the license, and indicate if changes were made, |
59 | 63 |
* **NonCommercial** — You may not use the software for commercial purposes. |
58
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
64 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
65 |
For permissions beyond the scope of this license see [Licensing][4]. |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
66 |
|
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
67 |
[1]: http://www.cairographics.org |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
68 |
[2]: https://swing.fit.cvut.cz/projects/stx-jv/ |
16a69a916e47
Added README.md and LICENSE.txt
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
69 |
[3]: http://creativecommons.org/licenses/by-nc/4.0/ |
59 | 70 |
[4]: https://bitbucket.org/janvrany/stx-goodies-libcairo/wiki/Licensing |
71 |
[5]: http://swing.fit.cvut.cz/hg/stx.libview/file/jv/DeviceGraphicsContext.st |
|
72 |
[6]: https://bitbucket.org/janvrany/stx-goodies-libcairo/src/default/CairoGraphicsContext.st |
|
73 |
[7]: https://bitbucket.org/janvrany/stx-goodies-libcairo/wiki/Home |
|
66
e2ce20f7d777
README: Fixed link to examples
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
59
diff
changeset
|
74 |
[8]: https://bitbucket.org/janvrany/stx-goodies-libcairo/wiki/examples/Examples |