@@ -153,7 +153,10 @@ def groupId(self):
153153 def tags (self ):
154154 return self .tr ('layer,raster,convert,file,map themes,tiles,render' ).split (',' )
155155
156- # def processAlgorithm(self, progress):
156+ def prepareAlgorithm (self , parameters , context , feedback ):
157+ self .mapSettings = qgis .utils .iface .mapCanvas ().mapSettings ()
158+ return True
159+
157160 def processAlgorithm (self , parameters , context , feedback ):
158161 """Here is where the processing itself takes place."""
159162
@@ -194,9 +197,11 @@ def processAlgorithm(self, parameters, context, feedback):
194197 self .OUTPUT ,
195198 context )
196199
200+ project = context .project ()
201+
197202 tile_set = TileSet (map_theme , layer , extent , tile_size , mupp ,
198203 output_layer , make_trans ,
199- qgis . utils . iface . mapCanvas (). mapSettings () )
204+ self . mapSettings , project )
200205 tile_set .render (feedback , make_trans )
201206
202207 return {self .OUTPUT : output_layer }
@@ -209,7 +214,7 @@ class TileSet():
209214 """
210215
211216 def __init__ (self , map_theme , layer , extent , tile_size , mupp , output ,
212- make_trans , map_settings ):
217+ make_trans , map_settings , project ):
213218 """
214219 :param map_theme:
215220 :param extent:
@@ -260,10 +265,14 @@ def __init__(self, map_theme, layer, extent, tile_size, mupp, output,
260265 self .settings .setFlag (QgsMapSettings .RenderMapTile , True )
261266 self .settings .setFlag (QgsMapSettings .UseAdvancedEffects , True )
262267
268+ r = project .readNumEntry ('Gui' , '/CanvasColorRedPart' , 255 )[0 ]
269+ g = project .readNumEntry ('Gui' , '/CanvasColorGreenPart' , 255 )[0 ]
270+ b = project .readNumEntry ('Gui' , '/CanvasColorBluePart' , 255 )[0 ]
263271 if make_trans :
264- self .settings . setBackgroundColor ( QColor (255 , 255 , 255 , 0 ) )
272+ self .bgColor = QColor (r , g , b , 0 )
265273 else :
266- self .settings .setBackgroundColor (QColor (255 , 255 , 255 ))
274+ self .bgColor = QColor (r , g , b )
275+ self .settings .setBackgroundColor (self .bgColor )
267276
268277 if QgsProject .instance ().mapThemeCollection ().hasMapTheme (map_theme ):
269278 self .settings .setLayers (
@@ -300,11 +309,9 @@ def renderTile(self, x, y, feedback, make_trans):
300309 """
301310
302311 if make_trans :
303- background_color = QColor (255 , 255 , 255 , 0 )
304- self .image .fill (background_color .rgba ())
312+ self .image .fill (self .bgColor .rgba ())
305313 else :
306- background_color = QColor (255 , 255 , 255 )
307- self .image .fill (background_color .rgb ())
314+ self .image .fill (self .bgColor .rgb ())
308315
309316 painter = QPainter (self .image )
310317
0 commit comments