30
30
import sys
31
31
from unicodedata import normalize
32
32
33
+ VIEWER_SLIDE_NAME = 'slide'
34
+
33
35
class TileWorker (Process ):
34
36
"""A child process that generates and writes tiles."""
35
37
@@ -141,7 +143,7 @@ def _run_image(self, associated=None):
141
143
if associated is None :
142
144
image = self ._slide
143
145
if self ._with_viewer :
144
- basename = os .path .join (self ._basename , 'slide' )
146
+ basename = os .path .join (self ._basename , VIEWER_SLIDE_NAME )
145
147
else :
146
148
basename = self ._basename
147
149
else :
@@ -151,14 +153,21 @@ def _run_image(self, associated=None):
151
153
DeepZoomImageTiler (dz , basename , self ._format , associated ,
152
154
self ._queue ).run ()
153
155
156
+ def _url_for (self , associated ):
157
+ if associated is None :
158
+ base = VIEWER_SLIDE_NAME
159
+ else :
160
+ base = self ._slugify (associated )
161
+ return '%s.dzi' % base
162
+
154
163
def _write_html (self ):
155
164
import jinja2
156
165
env = jinja2 .Environment (loader = jinja2 .PackageLoader (__name__ ),
157
166
autoescape = True )
158
167
template = env .get_template ('index.html' )
159
- associated_urls = dict ((n , '%s.dzi' % self ._slugify (n ))
168
+ associated_urls = dict ((n , self ._url_for (n ))
160
169
for n in self ._slide .associated_images )
161
- data = template .render (slide_url = 'slide.dzi' ,
170
+ data = template .render (slide_url = self . _url_for ( None ) ,
162
171
associated = associated_urls ,
163
172
properties = self ._slide .properties )
164
173
with open (os .path .join (self ._basename , 'index.html' ), 'w' ) as fh :
0 commit comments