Difference between revisions of "BGRABitmap tutorial"
(→Other drawing contexts: numbers) |
(→More) |
||
(3 intermediate revisions by 3 users not shown) | |||
Line 3: | Line 3: | ||
{{BGRABitmap_tutorial_index}} | {{BGRABitmap_tutorial_index}} | ||
− | Welcome to the index of the tutorials for the | + | Welcome to the index of the tutorials for the [[BGRABitmap|BGRABitmap]] library. You can browse tutorials by number with the bar on the top, or by the following categories: |
=== Install BGRABitmap and draw basic shapes === | === Install BGRABitmap and draw basic shapes === | ||
− | + | TBGRABitmap images have drawing functions using floating point coordinates or integer coordinates. | |
* [[BGRABitmap tutorial 1|Installing BGRABitmap (No. 1)]] | * [[BGRABitmap tutorial 1|Installing BGRABitmap (No. 1)]] | ||
Line 14: | Line 14: | ||
* [[BGRABitmap tutorial 6|Line styles (No. 6)]] | * [[BGRABitmap tutorial 6|Line styles (No. 6)]] | ||
* [[BGRABitmap tutorial 7|Splines and Bézier curves (No. 7)]] | * [[BGRABitmap tutorial 7|Splines and Bézier curves (No. 7)]] | ||
− | * [[BGRABitmap tutorial 12| | + | * [[BGRABitmap tutorial 12|Text functions (No. 12)]] |
* [[BGRABitmap tutorial 13|Integer coordinates and floating point coordinates (No. 13)]] | * [[BGRABitmap tutorial 13|Integer coordinates and floating point coordinates (No. 13)]] | ||
=== Textures and scanners === | === Textures and scanners === | ||
− | Pixels are a table in memory containing values in the format | + | Pixels are a table in memory containing values in the TBGRAPixel format. At this level, we can do various operations: |
* [[BGRABitmap tutorial 4|Direct pixel access with Scanline (No. 4)]] | * [[BGRABitmap tutorial 4|Direct pixel access with Scanline (No. 4)]] | ||
Line 30: | Line 30: | ||
=== Other drawing contexts === | === Other drawing contexts === | ||
− | It is possible to have other | + | It is possible to have other contexts, that provide/allow other basic drawing functions: |
* Standard Canvas (Canvas and CanvasOpacity properties) : avoid using it because of the slowness of conversions of bitmap data | * Standard Canvas (Canvas and CanvasOpacity properties) : avoid using it because of the slowness of conversions of bitmap data | ||
* Canvas with features brought by BGRABitmap (CanvasBGRA property, Brush and Pen have an Opacity property) | * Canvas with features brought by BGRABitmap (CanvasBGRA property, Brush and Pen have an Opacity property) | ||
** [http://www.youtube.com/watch?v=HGYSLgtYx-U How to convert your application from TCanvas to CanvasBGRA (video)] | ** [http://www.youtube.com/watch?v=HGYSLgtYx-U How to convert your application from TCanvas to CanvasBGRA (video)] | ||
− | * [[BGRABitmap tutorial 14|Drawing with a 2D canvas with affine transformations | + | * [[BGRABitmap tutorial 14|Drawing with a 2D canvas with affine transformations (No. 14)]] |
− | * [[BGRABitmap tutorial 15|Real 3D rendering | + | * [[BGRABitmap tutorial 15|Real 3D rendering (No. 15)]] |
− | * [[BGRABitmap tutorial 16|Using textures with 3D rendering | + | * [[BGRABitmap tutorial 16|Using textures with 3D rendering (No. 16)]] |
=== More === | === More === | ||
You can use BGRABitmap to [[BGRABitmap_tutorial_TAChart|improve TAChart rendering]]. | You can use BGRABitmap to [[BGRABitmap_tutorial_TAChart|improve TAChart rendering]]. | ||
+ | |||
+ | You can use it as well to display icons with the [[SVG_Image_List|SVG Image List]]. | ||
More classes are available (you need to create them when you need them): | More classes are available (you need to create them when you need them): | ||
Line 55: | Line 57: | ||
[[Category:Graphics]] | [[Category:Graphics]] | ||
[[Category:Tutorials]] | [[Category:Tutorials]] | ||
− | [[Category: BGRABitmap]] | + | [[Category:BGRABitmap]] |
+ | [[Category:Lazarus]] |
Revision as of 17:50, 13 December 2020
│
Deutsch (de) │
English (en) │
español (es) │
français (fr) │
русский (ru) │
Home | Tutorial 1 | Tutorial 2 | Tutorial 3 | Tutorial 4 | Tutorial 5 | Tutorial 6 | Tutorial 7 | Tutorial 8 | Tutorial 9 | Tutorial 10 | Tutorial 11 | Tutorial 12 | Tutorial 13 | Tutorial 14 | Tutorial 15 | Tutorial 16 | Edit
Welcome to the index of the tutorials for the BGRABitmap library. You can browse tutorials by number with the bar on the top, or by the following categories:
Install BGRABitmap and draw basic shapes
TBGRABitmap images have drawing functions using floating point coordinates or integer coordinates.
- Installing BGRABitmap (No. 1)
- Loading and displaying an image (No. 2)
- Drawing with the mouse (No. 3)
- Line styles (No. 6)
- Splines and Bézier curves (No. 7)
- Text functions (No. 12)
- Integer coordinates and floating point coordinates (No. 13)
Textures and scanners
Pixels are a table in memory containing values in the TBGRAPixel format. At this level, we can do various operations:
- Direct pixel access with Scanline (No. 4)
- Combining layers of pixels (No. 5)
- Generating textures (No. 8)
- Phong shading using textures (No. 9)
- Texture mapping (No. 10)
- Using scanners to combine transformations (No. 11)
Other drawing contexts
It is possible to have other contexts, that provide/allow other basic drawing functions:
- Standard Canvas (Canvas and CanvasOpacity properties) : avoid using it because of the slowness of conversions of bitmap data
- Canvas with features brought by BGRABitmap (CanvasBGRA property, Brush and Pen have an Opacity property)
- Drawing with a 2D canvas with affine transformations (No. 14)
- Real 3D rendering (No. 15)
- Using textures with 3D rendering (No. 16)
More
You can use BGRABitmap to improve TAChart rendering.
You can use it as well to display icons with the SVG Image List.
More classes are available (you need to create them when you need them):
- TBGRATextEffect, in unit BGRATextFX, allows to prepare the drawing of text line, to add effects like contour and shadow.
- TBGRALayeredBitmap, in unit BGRALayers, allow to create a multi-layered bitmap. Units BGRAPaintNet and BGRAOpenRaster contain implementations to read and write in Paint.NET format (read only) and OpenRaster format (read and write).
- Units BGRAGradientScanner and BGRATransform contain scanners to do various effects.
- Unit BGRAGradients contain procedures to generate gradients and TPhongShading class for Phong shading.
- TBGRACompressableBitmap, in unit BGRACompressableBitmap, allow to store and compress images.
Other units contient low level functions, and you should not need to use them for a normal usage.