PDF-specific drawing utility functions
This module provides PDF vector graphics drawing primitives including markers, shapes, and specialized vector operations.
Author: fortplot contributors
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=:), | public, | allocatable | :: | content_stream | |||
| type(vector_graphics_state), | public | :: | current_state | ||||
| character(len=32), | public | :: | marker_gstate_name | = | '' |
| procedure, public :: initialize_stream => initialize_vector_stream | |
| procedure, public :: add_to_stream => add_to_vector_stream | |
| procedure, public :: draw_vector_line => draw_generic_vector_line | |
| procedure, public :: set_vector_color => set_generic_vector_color | |
| procedure, public :: set_vector_line_width => set_generic_vector_line_width | |
| procedure, public :: write_command => pdf_write_command | |
| procedure, public :: write_move => pdf_write_move | |
| procedure, public :: write_line => pdf_write_line | |
| procedure, public :: write_stroke => pdf_write_stroke | |
| procedure, public :: write_color => pdf_write_color | |
| procedure, public :: write_line_width => pdf_write_line_width | |
| procedure, public :: save_state => pdf_save_state | |
| procedure, public :: restore_state => pdf_restore_state | |
| procedure, public :: set_marker_gstate => pdf_set_marker_gstate | |
| procedure, public :: apply_marker_gstate => pdf_apply_marker_gstate |
Draw filled circle with outline in PDF
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(pdf_stream_writer), | intent(inout) | :: | this | |||
| real(kind=wp), | intent(in) | :: | cx | |||
| real(kind=wp), | intent(in) | :: | cy | |||
| real(kind=wp), | intent(in) | :: | radius |
Draw filled square with outline in PDF
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(pdf_stream_writer), | intent(inout) | :: | this | |||
| real(kind=wp), | intent(in) | :: | cx | |||
| real(kind=wp), | intent(in) | :: | cy | |||
| real(kind=wp), | intent(in) | :: | size |
Draw filled diamond with outline in PDF
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(pdf_stream_writer), | intent(inout) | :: | this | |||
| real(kind=wp), | intent(in) | :: | cx | |||
| real(kind=wp), | intent(in) | :: | cy | |||
| real(kind=wp), | intent(in) | :: | size |
Draw X-shaped marker in PDF
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(pdf_stream_writer), | intent(inout) | :: | this | |||
| real(kind=wp), | intent(in) | :: | cx | |||
| real(kind=wp), | intent(in) | :: | cy | |||
| real(kind=wp), | intent(in) | :: | size |
Draw arrow marker in PDF
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(pdf_stream_writer), | intent(inout) | :: | this | |||
| real(kind=wp), | intent(in) | :: | x | |||
| real(kind=wp), | intent(in) | :: | y | |||
| real(kind=wp), | intent(in) | :: | dx | |||
| real(kind=wp), | intent(in) | :: | dy | |||
| real(kind=wp), | intent(in) | :: | size | |||
| character(len=*), | intent(in) | :: | style |