Core raster image management and basic operations
Extracted from fortplot_raster.f90 for size reduction (SRP compliance)
          
      
      
        
          Derived Types
              
    
    
      
        Components
          
    
      
        | Type | Visibility | Attributes |  | Name |  | Initial |  | 
    
        
            | integer(kind=1), | public, | allocatable | :: | image_data(:) |  |  |  | 
        
            | integer, | public |  | :: | width |  |  |  | 
        
            | integer, | public |  | :: | height |  |  |  | 
        
            | real(kind=wp), | public |  | :: | current_r | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | current_g | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | current_b | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | current_line_width | = | 1.0_wp |  | 
        
            | character(len=10), | public |  | :: | line_style | = | '-' |  | 
        
            | real(kind=wp), | public |  | :: | line_pattern(20) |  |  |  | 
        
            | integer, | public |  | :: | pattern_size | = | 1 |  | 
        
            | real(kind=wp), | public |  | :: | pattern_length | = | SOLID_LINE_PATTERN_LENGTH |  | 
        
            | real(kind=wp), | public |  | :: | pattern_distance | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_edge_r | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_edge_g | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_edge_b | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_edge_alpha | = | 1.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_face_r | = | 1.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_face_g | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_face_b | = | 0.0_wp |  | 
        
            | real(kind=wp), | public |  | :: | marker_face_alpha | = | 1.0_wp |  | 
    
  
        Type-Bound Procedures
        
     
   
        
        
        
          Functions
              
    
    
          
  
  Arguments
      
    
      
        | Type | Intent | Optional | Attributes |  | Name |  | 
    
        
            | integer, | intent(in) |  |  | :: | width |  | 
        
            | integer, | intent(in) |  |  | :: | height |  | 
    
  
    
    
     
   
        
        
        
          Subroutines
              
    
    
          
  
  Arguments
      
    
      
        | Type | Intent | Optional | Attributes |  | Name |  | 
    
        
            | type(raster_image_t), | intent(inout) |  |  | :: | image |  |