| 1 |
<!DOCTYPE html> |
| 2 |
<!-- |
| 3 |
Copyright 2012 Mozilla Foundation |
| 4 |
|
| 5 |
Licensed under the Apache License, Version 2.0 (the "License"); |
| 6 |
you may not use this file except in compliance with the License. |
| 7 |
You may obtain a copy of the License at |
| 8 |
|
| 9 |
http://www.apache.org/licenses/LICENSE-2.0 |
| 10 |
|
| 11 |
Unless required by applicable law or agreed to in writing, software |
| 12 |
distributed under the License is distributed on an "AS IS" BASIS, |
| 13 |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 14 |
See the License for the specific language governing permissions and |
| 15 |
limitations under the License. |
| 16 |
|
| 17 |
Adobe CMap resources are covered by their own copyright but the same license: |
| 18 |
|
| 19 |
Copyright 1990-2015 Adobe Systems Incorporated. |
| 20 |
|
| 21 |
See https://github.com/adobe-type-tools/cmap-resources |
| 22 |
--> |
| 23 |
<script> |
| 24 |
const originalFetch = window.fetch; |
| 25 |
window.fetch = function (input, init = {}) { |
| 26 |
const url = input instanceof Request ? input.url : input.toString(); |
| 27 |
const returnDefault = url.includes('.json') || url.includes('.ftl'); |
| 28 |
if (returnDefault) { |
| 29 |
return originalFetch(input, init); |
| 30 |
} |
| 31 |
const req = {...init}; |
| 32 |
req.headers = new Headers(req.headers || {}); |
| 33 |
req.headers.set('X-E2PDF-REQUEST', 'true'); |
| 34 |
return originalFetch(input, req) |
| 35 |
.then(resp => { |
| 36 |
if (resp.ok) { |
| 37 |
return resp; |
| 38 |
} else { |
| 39 |
var errorMessage = 'Something went wrong!'; |
| 40 |
return resp.json().then((json) => { |
| 41 |
if (json && json.redirect_url) { |
| 42 |
errorMessage = json.redirect_error_message; |
| 43 |
throw new Error(errorMessage); |
| 44 |
} else { |
| 45 |
if (json && json.error) { |
| 46 |
errorMessage = json.error; |
| 47 |
} |
| 48 |
throw new Error(errorMessage); |
| 49 |
} |
| 50 |
}).catch(() => { |
| 51 |
throw new Error(errorMessage); |
| 52 |
}); |
| 53 |
} |
| 54 |
}).catch((error) => { |
| 55 |
document.getElementById('e2pdfViewerLoadError').innerHTML = error.message || 'Something went wrong!'; |
| 56 |
document.documentElement.classList.add('e2pdf-viewer-error'); |
| 57 |
}); |
| 58 |
}; |
| 59 |
document.addEventListener('DOMContentLoaded', () => { |
| 60 |
if (window.MutationObserver) { |
| 61 |
new MutationObserver((mutationsList, observer) => { |
| 62 |
for (var mutation of mutationsList) { |
| 63 |
observer.disconnect(); |
| 64 |
var html = document.getElementsByTagName('html')[0]; |
| 65 |
html.classList ? html.classList.add('e2pdf-pages-loaded') : html.className += ' e2pdf-pages-loaded'; |
| 66 |
} |
| 67 |
}).observe(document.getElementById('viewer'), {attributes: false, childList: true, characterData: false}); |
| 68 |
} else { |
| 69 |
setTimeout(function () { |
| 70 |
var html = document.getElementsByTagName('html')[0]; |
| 71 |
html.classList ? html.classList.add('e2pdf-pages-loaded') : html.className += ' e2pdf-pages-loaded'; |
| 72 |
}, 3000); |
| 73 |
} |
| 74 |
}); |
| 75 |
(function (w) { |
| 76 |
w.URLSearchParams = w.URLSearchParams || function (searchString) { |
| 77 |
var self = this; |
| 78 |
self.searchString = searchString; |
| 79 |
self.get = function (name) { |
| 80 |
let results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(self.searchString); |
| 81 |
if (results == null) { |
| 82 |
return null; |
| 83 |
} else { |
| 84 |
return decodeURIComponent(results[1]) || 0; |
| 85 |
} |
| 86 |
}; |
| 87 |
}; |
| 88 |
})(window); |
| 89 |
var classes = []; |
| 90 |
try { |
| 91 |
let classList = []; |
| 92 |
if (window.frameElement && window.frameElement.classList) { |
| 93 |
classList = Array.from(window.frameElement.classList); |
| 94 |
} else { |
| 95 |
var urlParams = new URLSearchParams(window.location.search); |
| 96 |
if (urlParams.get('class') != null) { |
| 97 |
classList = urlParams.get('class').split(';'); |
| 98 |
} |
| 99 |
} |
| 100 |
if (classList.includes("e2pdf-responsive")) { |
| 101 |
classes.push('e2pdf-responsive'); |
| 102 |
} |
| 103 |
if (classList.includes("e2pdf-responsive-page")) { |
| 104 |
classes.push('e2pdf-responsive-page'); |
| 105 |
} |
| 106 |
if (classList.includes("e2pdf-hide-toolbar")) { |
| 107 |
classes.push('e2pdf-hide-toolbar'); |
| 108 |
} |
| 109 |
if (classList.includes("e2pdf-hide-secondary-toolbar")) { |
| 110 |
classes.push('e2pdf-hide-secondary-toolbar'); |
| 111 |
} |
| 112 |
if (classList.includes("e2pdf-hide-left-toolbar")) { |
| 113 |
classes.push('e2pdf-hide-left-toolbar'); |
| 114 |
} |
| 115 |
if (classList.includes("e2pdf-hide-middle-toolbar")) { |
| 116 |
classes.push('e2pdf-hide-middle-toolbar'); |
| 117 |
} |
| 118 |
if (classList.includes("e2pdf-hide-right-toolbar")) { |
| 119 |
classes.push('e2pdf-hide-right-toolbar'); |
| 120 |
} |
| 121 |
if (classList.includes("e2pdf-hide-sidebar")) { |
| 122 |
classes.push('e2pdf-hide-sidebar'); |
| 123 |
} |
| 124 |
if (classList.includes("e2pdf-hide-search")) { |
| 125 |
classes.push('e2pdf-hide-search'); |
| 126 |
} |
| 127 |
if (classList.includes("e2pdf-hide-pageupdown")) { |
| 128 |
classes.push('e2pdf-hide-pageupdown'); |
| 129 |
} |
| 130 |
if (classList.includes("e2pdf-hide-pagenumber")) { |
| 131 |
classes.push('e2pdf-hide-pagenumber'); |
| 132 |
} |
| 133 |
if (classList.includes("e2pdf-hide-zoom")) { |
| 134 |
classes.push('e2pdf-hide-zoom'); |
| 135 |
} |
| 136 |
if (classList.includes("e2pdf-hide-scale")) { |
| 137 |
classes.push('e2pdf-hide-scale'); |
| 138 |
} |
| 139 |
if (classList.includes("e2pdf-hide-presentation")) { |
| 140 |
classes.push('e2pdf-hide-presentation'); |
| 141 |
} |
| 142 |
if (classList.includes("e2pdf-hide-openfile")) { |
| 143 |
classes.push('e2pdf-hide-openfile'); |
| 144 |
} |
| 145 |
if (classList.includes("e2pdf-hide-print")) { |
| 146 |
classes.push('e2pdf-hide-print'); |
| 147 |
} |
| 148 |
if (classList.includes("e2pdf-hide-download")) { |
| 149 |
classes.push('e2pdf-hide-download'); |
| 150 |
} |
| 151 |
if (classList.includes("e2pdf-hide-bookmark")) { |
| 152 |
classes.push('e2pdf-hide-bookmark'); |
| 153 |
} |
| 154 |
if (classList.includes("e2pdf-hide-firstlastpage")) { |
| 155 |
classes.push('e2pdf-hide-firstlastpage'); |
| 156 |
} |
| 157 |
if (classList.includes("e2pdf-hide-rotate")) { |
| 158 |
classes.push('e2pdf-hide-rotate'); |
| 159 |
} |
| 160 |
if (classList.includes("e2pdf-hide-cursor")) { |
| 161 |
classes.push('e2pdf-hide-cursor'); |
| 162 |
} |
| 163 |
if (classList.includes("e2pdf-hide-scroll")) { |
| 164 |
classes.push('e2pdf-hide-scroll'); |
| 165 |
} |
| 166 |
if (classList.includes("e2pdf-hide-spread")) { |
| 167 |
classes.push('e2pdf-hide-spread'); |
| 168 |
} |
| 169 |
if (classList.includes("e2pdf-hide-properties")) { |
| 170 |
classes.push('e2pdf-hide-properties'); |
| 171 |
} |
| 172 |
if (classList.includes("e2pdf-hide-background")) { |
| 173 |
classes.push('e2pdf-hide-background'); |
| 174 |
} |
| 175 |
if (classList.includes("e2pdf-hide-loader")) { |
| 176 |
classes.push('e2pdf-hide-loader'); |
| 177 |
} |
| 178 |
if (classList.includes("e2pdf-hide-freetext")) { |
| 179 |
classes.push('e2pdf-hide-freetext'); |
| 180 |
} |
| 181 |
if (classList.includes("e2pdf-hide-ink")) { |
| 182 |
classes.push('e2pdf-hide-ink'); |
| 183 |
} |
| 184 |
if (classList.includes("e2pdf-hide-stamp")) { |
| 185 |
classes.push('e2pdf-hide-stamp'); |
| 186 |
} |
| 187 |
if (classList.includes("e2pdf-hide-highlight")) { |
| 188 |
classes.push('e2pdf-hide-highlight'); |
| 189 |
} |
| 190 |
if (classList.includes("e2pdf-hide-editor")) { |
| 191 |
classes.push('e2pdf-hide-editor'); |
| 192 |
} |
| 193 |
if (classList.includes("e2pdf-dark-theme")) { |
| 194 |
classes.push('e2pdf-dark-theme'); |
| 195 |
} |
| 196 |
if (classList.includes("e2pdf-preview")) { |
| 197 |
classes.push('e2pdf-preview'); |
| 198 |
} |
| 199 |
} catch (e) { |
| 200 |
} |
| 201 |
document.write('<html dir="ltr" class="' + classes.join(' ') + '" mozdisallowselectionprint>'); |
| 202 |
</script> |
| 203 |
<head> |
| 204 |
<meta charset="utf-8"> |
| 205 |
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> |
| 206 |
<meta name="google" content="notranslate"> |
| 207 |
<meta name="robots" content="noindex, nofollow" /> |
| 208 |
<title>PDF</title> |
| 209 |
<!-- This snippet is used in production (included from viewer.html) --> |
| 210 |
<link rel="resource" type="application/l10n" href="locale/locale.json"> |
| 211 |
<script src="../build/pdf.js?v=1.29.11" type="module"></script> |
| 212 |
<link rel="stylesheet" href="viewer.css?v=1.29.11"> |
| 213 |
<link rel="stylesheet" href="../../../../../uploads/e2pdf/viewer/style.css?v=1.29.11"> |
| 214 |
<script src="viewer.js?v=1.29.11" type="module"></script> |
| 215 |
</head> |
| 216 |
<body tabindex="0"> |
| 217 |
<div id="outerContainer"> |
| 218 |
|
| 219 |
<div id="sidebarContainer"> |
| 220 |
<div id="toolbarSidebar" class="toolbarHorizontalGroup"> |
| 221 |
<div id="toolbarSidebarLeft"> |
| 222 |
<div id="sidebarViewButtons" class="toolbarHorizontalGroup toggled" role="radiogroup"> |
| 223 |
<button id="viewThumbnail" class="toolbarButton toggled" type="button" tabindex="0" data-l10n-id="pdfjs-thumbs-button" role="radio" aria-checked="true" aria-controls="thumbnailView"> |
| 224 |
<span data-l10n-id="pdfjs-thumbs-button-label"></span> |
| 225 |
</button> |
| 226 |
<button id="viewOutline" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-document-outline-button" role="radio" aria-checked="false" aria-controls="outlineView"> |
| 227 |
<span data-l10n-id="pdfjs-document-outline-button-label"></span> |
| 228 |
</button> |
| 229 |
<button id="viewAttachments" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-attachments-button" role="radio" aria-checked="false" aria-controls="attachmentsView"> |
| 230 |
<span data-l10n-id="pdfjs-attachments-button-label"></span> |
| 231 |
</button> |
| 232 |
<button id="viewLayers" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-layers-button" role="radio" aria-checked="false" aria-controls="layersView"> |
| 233 |
<span data-l10n-id="pdfjs-layers-button-label"></span> |
| 234 |
</button> |
| 235 |
</div> |
| 236 |
</div> |
| 237 |
|
| 238 |
<div id="toolbarSidebarRight"> |
| 239 |
<div id="outlineOptionsContainer" class="toolbarHorizontalGroup"> |
| 240 |
<div class="verticalToolbarSeparator"></div> |
| 241 |
|
| 242 |
<button id="currentOutlineItem" class="toolbarButton" type="button" disabled="disabled" tabindex="0" data-l10n-id="pdfjs-current-outline-item-button"> |
| 243 |
<span data-l10n-id="pdfjs-current-outline-item-button-label"></span> |
| 244 |
</button> |
| 245 |
</div> |
| 246 |
</div> |
| 247 |
</div> |
| 248 |
<div id="sidebarContent"> |
| 249 |
<div id="thumbnailView"> |
| 250 |
</div> |
| 251 |
<div id="outlineView" class="hidden"> |
| 252 |
</div> |
| 253 |
<div id="attachmentsView" class="hidden"> |
| 254 |
</div> |
| 255 |
<div id="layersView" class="hidden"> |
| 256 |
</div> |
| 257 |
</div> |
| 258 |
<div id="sidebarResizer"></div> |
| 259 |
</div> <!-- sidebarContainer --> |
| 260 |
|
| 261 |
<div id="mainContainer"> |
| 262 |
<div class="toolbar"> |
| 263 |
<div id="toolbarContainer"> |
| 264 |
<div id="toolbarViewer" class="toolbarHorizontalGroup"> |
| 265 |
<div id="toolbarViewerLeft" class="toolbarHorizontalGroup"> |
| 266 |
<button id="sidebarToggleButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-toggle-sidebar-button" aria-expanded="false" aria-haspopup="true" aria-controls="sidebarContainer"> |
| 267 |
<span data-l10n-id="pdfjs-toggle-sidebar-button-label"></span> |
| 268 |
</button> |
| 269 |
<div class="toolbarButtonSpacer"></div> |
| 270 |
<div class="toolbarButtonWithContainer"> |
| 271 |
<button id="viewFindButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-findbar-button" aria-expanded="false" aria-controls="findbar"> |
| 272 |
<span data-l10n-id="pdfjs-findbar-button-label"></span> |
| 273 |
</button> |
| 274 |
<div class="hidden doorHanger toolbarHorizontalGroup" id="findbar"> |
| 275 |
<div id="findInputContainer" class="toolbarHorizontalGroup"> |
| 276 |
<span class="loadingInput end toolbarHorizontalGroup"> |
| 277 |
<input id="findInput" class="toolbarField" tabindex="0" data-l10n-id="pdfjs-find-input" aria-invalid="false"> |
| 278 |
</span> |
| 279 |
<div class="toolbarHorizontalGroup"> |
| 280 |
<button id="findPreviousButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-find-previous-button"> |
| 281 |
<span data-l10n-id="pdfjs-find-previous-button-label"></span> |
| 282 |
</button> |
| 283 |
<div class="splitToolbarButtonSeparator"></div> |
| 284 |
<button id="findNextButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-find-next-button"> |
| 285 |
<span data-l10n-id="pdfjs-find-next-button-label"></span> |
| 286 |
</button> |
| 287 |
</div> |
| 288 |
</div> |
| 289 |
|
| 290 |
<div id="findbarOptionsOneContainer" class="toolbarHorizontalGroup"> |
| 291 |
<div class="toggleButton toolbarLabel"> |
| 292 |
<input type="checkbox" id="findHighlightAll" tabindex="0" /> |
| 293 |
<label for="findHighlightAll" data-l10n-id="pdfjs-find-highlight-checkbox"></label> |
| 294 |
</div> |
| 295 |
<div class="toggleButton toolbarLabel"> |
| 296 |
<input type="checkbox" id="findMatchCase" tabindex="0" /> |
| 297 |
<label for="findMatchCase" data-l10n-id="pdfjs-find-match-case-checkbox-label"></label> |
| 298 |
</div> |
| 299 |
</div> |
| 300 |
<div id="findbarOptionsTwoContainer" class="toolbarHorizontalGroup"> |
| 301 |
<div class="toggleButton toolbarLabel"> |
| 302 |
<input type="checkbox" id="findMatchDiacritics" tabindex="0" /> |
| 303 |
<label for="findMatchDiacritics" data-l10n-id="pdfjs-find-match-diacritics-checkbox-label"></label> |
| 304 |
</div> |
| 305 |
<div class="toggleButton toolbarLabel"> |
| 306 |
<input type="checkbox" id="findEntireWord" tabindex="0" /> |
| 307 |
<label for="findEntireWord" data-l10n-id="pdfjs-find-entire-word-checkbox-label"></label> |
| 308 |
</div> |
| 309 |
</div> |
| 310 |
|
| 311 |
<div id="findbarMessageContainer" class="toolbarHorizontalGroup" aria-live="polite"> |
| 312 |
<span id="findResultsCount" class="toolbarLabel"></span> |
| 313 |
<span id="findMsg" class="toolbarLabel"></span> |
| 314 |
</div> |
| 315 |
</div> <!-- findbar --> |
| 316 |
</div> |
| 317 |
<div class="toolbarHorizontalGroup hiddenSmallView"> |
| 318 |
<button class="toolbarButton" type="button" id="previous" tabindex="0" data-l10n-id="pdfjs-previous-button"> |
| 319 |
<span data-l10n-id="pdfjs-previous-button-label"></span> |
| 320 |
</button> |
| 321 |
<div class="splitToolbarButtonSeparator"></div> |
| 322 |
<button class="toolbarButton" type="button" id="next" tabindex="0" data-l10n-id="pdfjs-next-button"> |
| 323 |
<span data-l10n-id="pdfjs-next-button-label"></span> |
| 324 |
</button> |
| 325 |
</div> |
| 326 |
<div class="toolbarHorizontalGroup"> |
| 327 |
<span class="loadingInput start toolbarHorizontalGroup"> |
| 328 |
<input type="number" id="pageNumber" class="toolbarField" value="1" min="1" tabindex="0" data-l10n-id="pdfjs-page-input" autocomplete="off"> |
| 329 |
</span> |
| 330 |
<span id="numPages" class="toolbarLabel"></span> |
| 331 |
</div> |
| 332 |
</div> |
| 333 |
<div id="toolbarViewerMiddle" class="toolbarHorizontalGroup"> |
| 334 |
<div class="toolbarHorizontalGroup"> |
| 335 |
<button id="zoomOutButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-zoom-out-button"> |
| 336 |
<span data-l10n-id="pdfjs-zoom-out-button-label"></span> |
| 337 |
</button> |
| 338 |
<div class="splitToolbarButtonSeparator"></div> |
| 339 |
<button id="zoomInButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-zoom-in-button"> |
| 340 |
<span data-l10n-id="pdfjs-zoom-in-button-label"></span> |
| 341 |
</button> |
| 342 |
</div> |
| 343 |
<span id="scaleSelectContainer" class="dropdownToolbarButton"> |
| 344 |
<select id="scaleSelect" tabindex="0" data-l10n-id="pdfjs-zoom-select"> |
| 345 |
<option id="pageAutoOption" value="auto" selected="selected" data-l10n-id="pdfjs-page-scale-auto"></option> |
| 346 |
<option id="pageActualOption" value="page-actual" data-l10n-id="pdfjs-page-scale-actual"></option> |
| 347 |
<option id="pageFitOption" value="page-fit" data-l10n-id="pdfjs-page-scale-fit"></option> |
| 348 |
<option id="pageWidthOption" value="page-width" data-l10n-id="pdfjs-page-scale-width"></option> |
| 349 |
<option id="customScaleOption" value="custom" disabled="disabled" hidden="true" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 0 }'></option> |
| 350 |
<option value="0.5" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 50 }'></option> |
| 351 |
<option value="0.75" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 75 }'></option> |
| 352 |
<option value="1" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 100 }'></option> |
| 353 |
<option value="1.25" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 125 }'></option> |
| 354 |
<option value="1.5" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 150 }'></option> |
| 355 |
<option value="2" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 200 }'></option> |
| 356 |
<option value="3" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 300 }'></option> |
| 357 |
<option value="4" data-l10n-id="pdfjs-page-scale-percent" data-l10n-args='{ "scale": 400 }'></option> |
| 358 |
</select> |
| 359 |
</span> |
| 360 |
</div> |
| 361 |
<div id="toolbarViewerRight" class="toolbarHorizontalGroup"> |
| 362 |
<div id="editorModeButtons" class="toolbarHorizontalGroup" role="radiogroup"> |
| 363 |
<div id="editorSignature" class="toolbarButtonWithContainer" hidden="true"> |
| 364 |
<button id="editorSignatureButton" class="toolbarButton" type="button" tabindex="0" disabled="disabled" role="radio" aria-expanded="false" aria-haspopup="true" aria-controls="editorSignatureParamsToolbar" data-l10n-id="pdfjs-editor-signature-button"> |
| 365 |
<span data-l10n-id="pdfjs-editor-signature-button-label"></span> |
| 366 |
</button> |
| 367 |
<div class="editorParamsToolbar hidden doorHangerRight menu" id="editorSignatureParamsToolbar"> |
| 368 |
<div id="addSignatureDoorHanger" class="menuContainer" role="region" data-l10n-id="pdfjs-editor-add-signature-container"> |
| 369 |
<button id="editorSignatureAddSignature" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-editor-signature-add-signature-button"> |
| 370 |
<span data-l10n-id="pdfjs-editor-signature-add-signature-button-label" class="editorParamsLabel"></span> |
| 371 |
</button> |
| 372 |
</div> |
| 373 |
</div> |
| 374 |
</div> |
| 375 |
<div id="editorHighlight" class="toolbarButtonWithContainer"> |
| 376 |
<button id="editorHighlightButton" class="toolbarButton" type="button" disabled="disabled" role="radio" aria-expanded="false" aria-haspopup="true" aria-controls="editorHighlightParamsToolbar" tabindex="0" data-l10n-id="pdfjs-editor-highlight-button"> |
| 377 |
<span data-l10n-id="pdfjs-editor-highlight-button-label"></span> |
| 378 |
</button> |
| 379 |
<div class="editorParamsToolbar hidden doorHangerRight" id="editorHighlightParamsToolbar"> |
| 380 |
<div id="highlightParamsToolbarContainer" class="editorParamsToolbarContainer"> |
| 381 |
<div id="editorHighlightColorPicker" class="colorPicker"> |
| 382 |
<span id="highlightColorPickerLabel" class="editorParamsLabel" data-l10n-id="pdfjs-editor-highlight-colorpicker-label"></span> |
| 383 |
</div> |
| 384 |
<div id="editorHighlightThickness"> |
| 385 |
<label for="editorFreeHighlightThickness" class="editorParamsLabel" data-l10n-id="pdfjs-editor-free-highlight-thickness-input"></label> |
| 386 |
<div class="thicknessPicker"> |
| 387 |
<input type="range" id="editorFreeHighlightThickness" class="editorParamsSlider" data-l10n-id="pdfjs-editor-free-highlight-thickness-title" value="12" min="8" max="24" step="1" tabindex="0"> |
| 388 |
</div> |
| 389 |
</div> |
| 390 |
<div id="editorHighlightVisibility"> |
| 391 |
<div class="divider"></div> |
| 392 |
<div class="toggler"> |
| 393 |
<label for="editorHighlightShowAll" class="editorParamsLabel" data-l10n-id="pdfjs-editor-highlight-show-all-button-label"></label> |
| 394 |
<button id="editorHighlightShowAll" class="toggle-button" type="button" data-l10n-id="pdfjs-editor-highlight-show-all-button" aria-pressed="true" tabindex="0"></button> |
| 395 |
</div> |
| 396 |
</div> |
| 397 |
</div> |
| 398 |
</div> |
| 399 |
</div> |
| 400 |
<div id="editorFreeText" class="toolbarButtonWithContainer"> |
| 401 |
<button id="editorFreeTextButton" class="toolbarButton" type="button" disabled="disabled" role="radio" aria-expanded="false" aria-haspopup="true" aria-controls="editorFreeTextParamsToolbar" tabindex="0" data-l10n-id="pdfjs-editor-free-text-button"> |
| 402 |
<span data-l10n-id="pdfjs-editor-free-text-button-label"></span> |
| 403 |
</button> |
| 404 |
<div class="editorParamsToolbar hidden doorHangerRight" id="editorFreeTextParamsToolbar"> |
| 405 |
<div class="editorParamsToolbarContainer"> |
| 406 |
<div class="editorParamsSetter"> |
| 407 |
<label for="editorFreeTextColor" class="editorParamsLabel" data-l10n-id="pdfjs-editor-free-text-color-input"></label> |
| 408 |
<input type="color" id="editorFreeTextColor" class="editorParamsColor" tabindex="0"> |
| 409 |
</div> |
| 410 |
<div class="editorParamsSetter"> |
| 411 |
<label for="editorFreeTextFontSize" class="editorParamsLabel" data-l10n-id="pdfjs-editor-free-text-size-input"></label> |
| 412 |
<input type="range" id="editorFreeTextFontSize" class="editorParamsSlider" value="10" min="5" max="100" step="1" tabindex="0"> |
| 413 |
</div> |
| 414 |
</div> |
| 415 |
</div> |
| 416 |
</div> |
| 417 |
<div id="editorInk" class="toolbarButtonWithContainer"> |
| 418 |
<button id="editorInkButton" class="toolbarButton" type="button" disabled="disabled" role="radio" aria-expanded="false" aria-haspopup="true" aria-controls="editorInkParamsToolbar" tabindex="0" data-l10n-id="pdfjs-editor-ink-button"> |
| 419 |
<span data-l10n-id="pdfjs-editor-ink-button-label"></span> |
| 420 |
</button> |
| 421 |
<div class="editorParamsToolbar hidden doorHangerRight" id="editorInkParamsToolbar"> |
| 422 |
<div class="editorParamsToolbarContainer"> |
| 423 |
<div class="editorParamsSetter"> |
| 424 |
<label for="editorInkColor" class="editorParamsLabel" data-l10n-id="pdfjs-editor-ink-color-input"></label> |
| 425 |
<input type="color" id="editorInkColor" class="editorParamsColor" tabindex="0"> |
| 426 |
</div> |
| 427 |
<div class="editorParamsSetter"> |
| 428 |
<label for="editorInkThickness" class="editorParamsLabel" data-l10n-id="pdfjs-editor-ink-thickness-input"></label> |
| 429 |
<input type="range" id="editorInkThickness" class="editorParamsSlider" value="1" min="1" max="20" step="1" tabindex="0"> |
| 430 |
</div> |
| 431 |
<div class="editorParamsSetter"> |
| 432 |
<label for="editorInkOpacity" class="editorParamsLabel" data-l10n-id="pdfjs-editor-ink-opacity-input"></label> |
| 433 |
<input type="range" id="editorInkOpacity" class="editorParamsSlider" value="1" min="0.05" max="1" step="0.05" tabindex="0"> |
| 434 |
</div> |
| 435 |
</div> |
| 436 |
</div> |
| 437 |
</div> |
| 438 |
<div id="editorStamp" class="toolbarButtonWithContainer"> |
| 439 |
<button id="editorStampButton" class="toolbarButton" type="button" disabled="disabled" role="radio" aria-expanded="false" aria-haspopup="true" aria-controls="editorStampParamsToolbar" tabindex="0" data-l10n-id="pdfjs-editor-stamp-button"> |
| 440 |
<span data-l10n-id="pdfjs-editor-stamp-button-label"></span> |
| 441 |
</button> |
| 442 |
<div class="editorParamsToolbar hidden doorHangerRight menu" id="editorStampParamsToolbar"> |
| 443 |
<div class="menuContainer"> |
| 444 |
<button id="editorStampAddImage" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-editor-stamp-add-image-button"> |
| 445 |
<span class="editorParamsLabel" data-l10n-id="pdfjs-editor-stamp-add-image-button-label"></span> |
| 446 |
</button> |
| 447 |
</div> |
| 448 |
</div> |
| 449 |
</div> |
| 450 |
</div> |
| 451 |
|
| 452 |
<div id="editorModeSeparator" class="verticalToolbarSeparator"></div> |
| 453 |
|
| 454 |
<div class="toolbarHorizontalGroup hiddenMediumView"> |
| 455 |
<button id="printButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-print-button"> |
| 456 |
<span data-l10n-id="pdfjs-print-button-label"></span> |
| 457 |
</button> |
| 458 |
|
| 459 |
<button id="downloadButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-save-button"> |
| 460 |
<span data-l10n-id="pdfjs-save-button-label"></span> |
| 461 |
</button> |
| 462 |
</div> |
| 463 |
|
| 464 |
<div class="verticalToolbarSeparator hiddenMediumView"></div> |
| 465 |
|
| 466 |
<div id="secondaryToolbarToggle" class="toolbarButtonWithContainer"> |
| 467 |
<button id="secondaryToolbarToggleButton" class="toolbarButton" type="button" tabindex="0" data-l10n-id="pdfjs-tools-button" aria-expanded="false" aria-haspopup="true" aria-controls="secondaryToolbar"> |
| 468 |
<span data-l10n-id="pdfjs-tools-button-label"></span> |
| 469 |
</button> |
| 470 |
<div id="secondaryToolbar" class="hidden doorHangerRight menu"> |
| 471 |
<div id="secondaryToolbarButtonContainer" class="menuContainer"> |
| 472 |
<button id="secondaryOpenFile" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-open-file-button"> |
| 473 |
<span data-l10n-id="pdfjs-open-file-button-label"></span> |
| 474 |
</button> |
| 475 |
|
| 476 |
<div class="visibleMediumView"> |
| 477 |
<button id="secondaryPrint" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-print-button"> |
| 478 |
<span data-l10n-id="pdfjs-print-button-label"></span> |
| 479 |
</button> |
| 480 |
|
| 481 |
<button id="secondaryDownload" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-save-button"> |
| 482 |
<span data-l10n-id="pdfjs-save-button-label"></span> |
| 483 |
</button> |
| 484 |
|
| 485 |
</div> |
| 486 |
|
| 487 |
<div class="horizontalToolbarSeparator"></div> |
| 488 |
|
| 489 |
<button id="presentationMode" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-presentation-mode-button"> |
| 490 |
<span data-l10n-id="pdfjs-presentation-mode-button-label"></span> |
| 491 |
</button> |
| 492 |
|
| 493 |
<a href="#" id="viewBookmark" class="toolbarButton labeled" tabindex="0" data-l10n-id="pdfjs-bookmark-button"> |
| 494 |
<span data-l10n-id="pdfjs-bookmark-button-label"></span> |
| 495 |
</a> |
| 496 |
|
| 497 |
<div id="viewBookmarkSeparator" class="horizontalToolbarSeparator"></div> |
| 498 |
|
| 499 |
<button id="firstPage" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-first-page-button"> |
| 500 |
<span data-l10n-id="pdfjs-first-page-button-label"></span> |
| 501 |
</button> |
| 502 |
<button id="lastPage" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-last-page-button"> |
| 503 |
<span data-l10n-id="pdfjs-last-page-button-label"></span> |
| 504 |
</button> |
| 505 |
|
| 506 |
<div class="horizontalToolbarSeparator"></div> |
| 507 |
|
| 508 |
<button id="pageRotateCw" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-page-rotate-cw-button"> |
| 509 |
<span data-l10n-id="pdfjs-page-rotate-cw-button-label"></span> |
| 510 |
</button> |
| 511 |
<button id="pageRotateCcw" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-page-rotate-ccw-button"> |
| 512 |
<span data-l10n-id="pdfjs-page-rotate-ccw-button-label"></span> |
| 513 |
</button> |
| 514 |
|
| 515 |
<div class="horizontalToolbarSeparator"></div> |
| 516 |
|
| 517 |
<div id="cursorToolButtons" role="radiogroup"> |
| 518 |
<button id="cursorSelectTool" class="toolbarButton labeled toggled" type="button" tabindex="0" data-l10n-id="pdfjs-cursor-text-select-tool-button" role="radio" aria-checked="true"> |
| 519 |
<span data-l10n-id="pdfjs-cursor-text-select-tool-button-label"></span> |
| 520 |
</button> |
| 521 |
<button id="cursorHandTool" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-cursor-hand-tool-button" role="radio" aria-checked="false"> |
| 522 |
<span data-l10n-id="pdfjs-cursor-hand-tool-button-label"></span> |
| 523 |
</button> |
| 524 |
</div> |
| 525 |
|
| 526 |
<div class="horizontalToolbarSeparator"></div> |
| 527 |
|
| 528 |
<div id="scrollModeButtons" role="radiogroup"> |
| 529 |
<button id="scrollPage" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-scroll-page-button" role="radio" aria-checked="false"> |
| 530 |
<span data-l10n-id="pdfjs-scroll-page-button-label"></span> |
| 531 |
</button> |
| 532 |
<button id="scrollVertical" class="toolbarButton labeled toggled" type="button" tabindex="0" data-l10n-id="pdfjs-scroll-vertical-button" role="radio" aria-checked="true"> |
| 533 |
<span data-l10n-id="pdfjs-scroll-vertical-button-label"></span> |
| 534 |
</button> |
| 535 |
<button id="scrollHorizontal" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-scroll-horizontal-button" role="radio" aria-checked="false"> |
| 536 |
<span data-l10n-id="pdfjs-scroll-horizontal-button-label"></span> |
| 537 |
</button> |
| 538 |
<button id="scrollWrapped" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-scroll-wrapped-button" role="radio" aria-checked="false"> |
| 539 |
<span data-l10n-id="pdfjs-scroll-wrapped-button-label"></span> |
| 540 |
</button> |
| 541 |
</div> |
| 542 |
|
| 543 |
<div class="horizontalToolbarSeparator"></div> |
| 544 |
|
| 545 |
<div id="spreadModeButtons" role="radiogroup"> |
| 546 |
<button id="spreadNone" class="toolbarButton labeled toggled" type="button" tabindex="0" data-l10n-id="pdfjs-spread-none-button" role="radio" aria-checked="true"> |
| 547 |
<span data-l10n-id="pdfjs-spread-none-button-label"></span> |
| 548 |
</button> |
| 549 |
<button id="spreadOdd" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-spread-odd-button" role="radio" aria-checked="false"> |
| 550 |
<span data-l10n-id="pdfjs-spread-odd-button-label"></span> |
| 551 |
</button> |
| 552 |
<button id="spreadEven" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-spread-even-button" role="radio" aria-checked="false"> |
| 553 |
<span data-l10n-id="pdfjs-spread-even-button-label"></span> |
| 554 |
</button> |
| 555 |
</div> |
| 556 |
|
| 557 |
<div id="imageAltTextSettingsSeparator" class="horizontalToolbarSeparator hidden"></div> |
| 558 |
<button id="imageAltTextSettings" type="button" class="toolbarButton labeled hidden" tabindex="0" data-l10n-id="pdfjs-image-alt-text-settings-button" aria-controls="altTextSettingsDialog"> |
| 559 |
<span data-l10n-id="pdfjs-image-alt-text-settings-button-label"></span> |
| 560 |
</button> |
| 561 |
|
| 562 |
<div class="horizontalToolbarSeparator"></div> |
| 563 |
|
| 564 |
<button id="documentProperties" class="toolbarButton labeled" type="button" tabindex="0" data-l10n-id="pdfjs-document-properties-button" aria-controls="documentPropertiesDialog"> |
| 565 |
<span data-l10n-id="pdfjs-document-properties-button-label"></span> |
| 566 |
</button> |
| 567 |
</div> |
| 568 |
</div> <!-- secondaryToolbar --> |
| 569 |
</div> |
| 570 |
</div> |
| 571 |
</div> |
| 572 |
<div id="loadingBar"> |
| 573 |
<div class="progress"> |
| 574 |
<div class="glimmer"> |
| 575 |
</div> |
| 576 |
</div> |
| 577 |
</div> |
| 578 |
</div> |
| 579 |
</div> |
| 580 |
|
| 581 |
<div id="viewerContainer" tabindex="0"> |
| 582 |
<div id="viewer" class="pdfViewer"></div> |
| 583 |
</div> |
| 584 |
<div id="e2pdfViewerLoader"><div class="e2pdf-viewer-loader-icon"></div><div class="e2pdf-viewer-loader-text"></div></div> |
| 585 |
<div id="e2pdfViewerLoadError"></div> |
| 586 |
</div> <!-- mainContainer --> |
| 587 |
|
| 588 |
<div id="dialogContainer"> |
| 589 |
<dialog id="passwordDialog"> |
| 590 |
<div class="row"> |
| 591 |
<label for="password" id="passwordText" data-l10n-id="pdfjs-password-label"></label> |
| 592 |
</div> |
| 593 |
<div class="row"> |
| 594 |
<input type="password" id="password" class="toolbarField"> |
| 595 |
</div> |
| 596 |
<div class="buttonRow"> |
| 597 |
<button id="passwordCancel" class="dialogButton" type="button"><span data-l10n-id="pdfjs-password-cancel-button"></span></button> |
| 598 |
<button id="passwordSubmit" class="dialogButton" type="button"><span data-l10n-id="pdfjs-password-ok-button"></span></button> |
| 599 |
</div> |
| 600 |
</dialog> |
| 601 |
<dialog id="documentPropertiesDialog"> |
| 602 |
<div class="row"> |
| 603 |
<span id="fileNameLabel" data-l10n-id="pdfjs-document-properties-file-name"></span> |
| 604 |
<p id="fileNameField" aria-labelledby="fileNameLabel">-</p> |
| 605 |
</div> |
| 606 |
<div class="row"> |
| 607 |
<span id="fileSizeLabel" data-l10n-id="pdfjs-document-properties-file-size"></span> |
| 608 |
<p id="fileSizeField" aria-labelledby="fileSizeLabel">-</p> |
| 609 |
</div> |
| 610 |
<div class="separator"></div> |
| 611 |
<div class="row"> |
| 612 |
<span id="titleLabel" data-l10n-id="pdfjs-document-properties-title"></span> |
| 613 |
<p id="titleField" aria-labelledby="titleLabel">-</p> |
| 614 |
</div> |
| 615 |
<div class="row"> |
| 616 |
<span id="authorLabel" data-l10n-id="pdfjs-document-properties-author"></span> |
| 617 |
<p id="authorField" aria-labelledby="authorLabel">-</p> |
| 618 |
</div> |
| 619 |
<div class="row"> |
| 620 |
<span id="subjectLabel" data-l10n-id="pdfjs-document-properties-subject"></span> |
| 621 |
<p id="subjectField" aria-labelledby="subjectLabel">-</p> |
| 622 |
</div> |
| 623 |
<div class="row"> |
| 624 |
<span id="keywordsLabel" data-l10n-id="pdfjs-document-properties-keywords"></span> |
| 625 |
<p id="keywordsField" aria-labelledby="keywordsLabel">-</p> |
| 626 |
</div> |
| 627 |
<div class="row"> |
| 628 |
<span id="creationDateLabel" data-l10n-id="pdfjs-document-properties-creation-date"></span> |
| 629 |
<p id="creationDateField" aria-labelledby="creationDateLabel">-</p> |
| 630 |
</div> |
| 631 |
<div class="row"> |
| 632 |
<span id="modificationDateLabel" data-l10n-id="pdfjs-document-properties-modification-date"></span> |
| 633 |
<p id="modificationDateField" aria-labelledby="modificationDateLabel">-</p> |
| 634 |
</div> |
| 635 |
<div class="row"> |
| 636 |
<span id="creatorLabel" data-l10n-id="pdfjs-document-properties-creator"></span> |
| 637 |
<p id="creatorField" aria-labelledby="creatorLabel">-</p> |
| 638 |
</div> |
| 639 |
<div class="separator"></div> |
| 640 |
<div class="row"> |
| 641 |
<span id="producerLabel" data-l10n-id="pdfjs-document-properties-producer"></span> |
| 642 |
<p id="producerField" aria-labelledby="producerLabel">-</p> |
| 643 |
</div> |
| 644 |
<div class="row"> |
| 645 |
<span id="versionLabel" data-l10n-id="pdfjs-document-properties-version"></span> |
| 646 |
<p id="versionField" aria-labelledby="versionLabel">-</p> |
| 647 |
</div> |
| 648 |
<div class="row"> |
| 649 |
<span id="pageCountLabel" data-l10n-id="pdfjs-document-properties-page-count"></span> |
| 650 |
<p id="pageCountField" aria-labelledby="pageCountLabel">-</p> |
| 651 |
</div> |
| 652 |
<div class="row"> |
| 653 |
<span id="pageSizeLabel" data-l10n-id="pdfjs-document-properties-page-size"></span> |
| 654 |
<p id="pageSizeField" aria-labelledby="pageSizeLabel">-</p> |
| 655 |
</div> |
| 656 |
<div class="separator"></div> |
| 657 |
<div class="row"> |
| 658 |
<span id="linearizedLabel" data-l10n-id="pdfjs-document-properties-linearized"></span> |
| 659 |
<p id="linearizedField" aria-labelledby="linearizedLabel">-</p> |
| 660 |
</div> |
| 661 |
<div class="buttonRow"> |
| 662 |
<button id="documentPropertiesClose" class="dialogButton" type="button"><span data-l10n-id="pdfjs-document-properties-close-button"></span></button> |
| 663 |
</div> |
| 664 |
</dialog> |
| 665 |
<dialog class="dialog altText" id="altTextDialog" aria-labelledby="dialogLabel" aria-describedby="dialogDescription"> |
| 666 |
<div id="altTextContainer" class="mainContainer"> |
| 667 |
<div id="overallDescription"> |
| 668 |
<span id="dialogLabel" data-l10n-id="pdfjs-editor-alt-text-dialog-label" class="title"></span> |
| 669 |
<span id="dialogDescription" data-l10n-id="pdfjs-editor-alt-text-dialog-description"></span> |
| 670 |
</div> |
| 671 |
<div id="addDescription"> |
| 672 |
<div class="radio"> |
| 673 |
<div class="radioButton"> |
| 674 |
<input type="radio" id="descriptionButton" name="altTextOption" tabindex="0" aria-describedby="descriptionAreaLabel" checked> |
| 675 |
<label for="descriptionButton" data-l10n-id="pdfjs-editor-alt-text-add-description-label"></label> |
| 676 |
</div> |
| 677 |
<div class="radioLabel"> |
| 678 |
<span id="descriptionAreaLabel" data-l10n-id="pdfjs-editor-alt-text-add-description-description"></span> |
| 679 |
</div> |
| 680 |
</div> |
| 681 |
<div class="descriptionArea"> |
| 682 |
<textarea id="descriptionTextarea" aria-labelledby="descriptionAreaLabel" data-l10n-id="pdfjs-editor-alt-text-textarea" tabindex="0"></textarea> |
| 683 |
</div> |
| 684 |
</div> |
| 685 |
<div id="markAsDecorative"> |
| 686 |
<div class="radio"> |
| 687 |
<div class="radioButton"> |
| 688 |
<input type="radio" id="decorativeButton" name="altTextOption" aria-describedby="decorativeLabel"> |
| 689 |
<label for="decorativeButton" data-l10n-id="pdfjs-editor-alt-text-mark-decorative-label"></label> |
| 690 |
</div> |
| 691 |
<div class="radioLabel"> |
| 692 |
<span id="decorativeLabel" data-l10n-id="pdfjs-editor-alt-text-mark-decorative-description"></span> |
| 693 |
</div> |
| 694 |
</div> |
| 695 |
</div> |
| 696 |
<div id="buttons"> |
| 697 |
<button id="altTextCancel" class="secondaryButton" type="button" tabindex="0"><span data-l10n-id="pdfjs-editor-alt-text-cancel-button"></span></button> |
| 698 |
<button id="altTextSave" class="primaryButton" type="button" tabindex="0"><span data-l10n-id="pdfjs-editor-alt-text-save-button"></span></button> |
| 699 |
</div> |
| 700 |
</div> |
| 701 |
</dialog> |
| 702 |
<dialog class="dialog newAltText" id="newAltTextDialog" aria-labelledby="newAltTextTitle" aria-describedby="newAltTextDescription" tabindex="0"> |
| 703 |
<div id="newAltTextContainer" class="mainContainer"> |
| 704 |
<div class="title"> |
| 705 |
<span id="newAltTextTitle" data-l10n-id="pdfjs-editor-new-alt-text-dialog-edit-label" role="sectionhead" tabindex="0"></span> |
| 706 |
</div> |
| 707 |
<div id="mainContent"> |
| 708 |
<div id="descriptionAndSettings"> |
| 709 |
<div id="descriptionInstruction"> |
| 710 |
<div id="newAltTextDescriptionContainer"> |
| 711 |
<div class="altTextSpinner" role="status" aria-live="polite"></div> |
| 712 |
<textarea id="newAltTextDescriptionTextarea" aria-labelledby="descriptionAreaLabel" data-l10n-id="pdfjs-editor-new-alt-text-textarea" tabindex="0"></textarea> |
| 713 |
</div> |
| 714 |
<span id="newAltTextDescription" role="note" data-l10n-id="pdfjs-editor-new-alt-text-description"></span> |
| 715 |
<div id="newAltTextDisclaimer" role="note"><div><span data-l10n-id="pdfjs-editor-new-alt-text-disclaimer1"></span> <a href="https://support.mozilla.org/en-US/kb/pdf-alt-text" target="_blank" rel="noopener noreferrer" id="newAltTextLearnMore" data-l10n-id="pdfjs-editor-new-alt-text-disclaimer-learn-more-url" tabindex="0"></a></div></div> |
| 716 |
</div> |
| 717 |
<div id="newAltTextCreateAutomatically" class="toggler"> |
| 718 |
<button id="newAltTextCreateAutomaticallyButton" class="toggle-button" type="button" aria-pressed="true" tabindex="0"></button> |
| 719 |
<label for="newAltTextCreateAutomaticallyButton" class="togglerLabel" data-l10n-id="pdfjs-editor-new-alt-text-create-automatically-button-label"></label> |
| 720 |
</div> |
| 721 |
<div id="newAltTextDownloadModel" class="hidden"> |
| 722 |
<span id="newAltTextDownloadModelDescription" data-l10n-id="pdfjs-editor-new-alt-text-ai-model-downloading-progress" aria-valuemin="0" data-l10n-args='{ "totalSize": 0, "downloadedSize": 0 }'></span> |
| 723 |
</div> |
| 724 |
</div> |
| 725 |
<div id="newAltTextImagePreview"></div> |
| 726 |
</div> |
| 727 |
<div id="newAltTextError" class="messageBar"> |
| 728 |
<div> |
| 729 |
<div> |
| 730 |
<span class="title" data-l10n-id="pdfjs-editor-new-alt-text-error-title"></span> |
| 731 |
<span class="description" data-l10n-id="pdfjs-editor-new-alt-text-error-description"></span> |
| 732 |
</div> |
| 733 |
<button id="newAltTextCloseButton" class="closeButton" type="button" tabindex="0"><span data-l10n-id="pdfjs-editor-new-alt-text-error-close-button"></span></button> |
| 734 |
</div> |
| 735 |
</div> |
| 736 |
<div id="newAltTextButtons" class="dialogButtonsGroup"> |
| 737 |
<button id="newAltTextCancel" type="button" class="secondaryButton hidden" tabindex="0"><span data-l10n-id="pdfjs-editor-alt-text-cancel-button"></span></button> |
| 738 |
<button id="newAltTextNotNow" type="button" class="secondaryButton" tabindex="0"><span data-l10n-id="pdfjs-editor-new-alt-text-not-now-button"></span></button> |
| 739 |
<button id="newAltTextSave" type="button" class="primaryButton" tabindex="0"><span data-l10n-id="pdfjs-editor-alt-text-save-button"></span></button> |
| 740 |
</div> |
| 741 |
</div> |
| 742 |
</dialog> |
| 743 |
|
| 744 |
<dialog class="dialog" id="altTextSettingsDialog" aria-labelledby="altTextSettingsTitle"> |
| 745 |
<div id="altTextSettingsContainer" class="mainContainer"> |
| 746 |
<div class="title"> |
| 747 |
<span id="altTextSettingsTitle" data-l10n-id="pdfjs-editor-alt-text-settings-dialog-label" role="sectionhead" tabindex="0" class="title"></span> |
| 748 |
</div> |
| 749 |
<div id="automaticAltText"> |
| 750 |
<span data-l10n-id="pdfjs-editor-alt-text-settings-automatic-title"></span> |
| 751 |
<div id="automaticSettings"> |
| 752 |
<div id="createModelSetting"> |
| 753 |
<div class="toggler"> |
| 754 |
<button id="createModelButton" type="button" class="toggle-button" aria-pressed="true" tabindex="0"></button> |
| 755 |
<label for="createModelButton" class="togglerLabel" data-l10n-id="pdfjs-editor-alt-text-settings-create-model-button-label"></label> |
| 756 |
</div> |
| 757 |
<div id="createModelDescription" class="description"> |
| 758 |
<span data-l10n-id="pdfjs-editor-alt-text-settings-create-model-description"></span> <a href="https://support.mozilla.org/en-US/kb/pdf-alt-text" target="_blank" rel="noopener noreferrer" id="altTextSettingsLearnMore" data-l10n-id="pdfjs-editor-new-alt-text-disclaimer-learn-more-url" tabindex="0"></a> |
| 759 |
</div> |
| 760 |
</div> |
| 761 |
<div id="aiModelSettings"> |
| 762 |
<div> |
| 763 |
<span data-l10n-id="pdfjs-editor-alt-text-settings-download-model-label" data-l10n-args='{ "totalSize": 180 }'></span> |
| 764 |
<div id="aiModelDescription" class="description"> |
| 765 |
<span data-l10n-id="pdfjs-editor-alt-text-settings-ai-model-description"></span> |
| 766 |
</div> |
| 767 |
</div> |
| 768 |
<button id="deleteModelButton" type="button" class="secondaryButton" tabindex="0"><span data-l10n-id="pdfjs-editor-alt-text-settings-delete-model-button"></span></button> |
| 769 |
<button id="downloadModelButton" type="button" class="secondaryButton" tabindex="0"><span data-l10n-id="pdfjs-editor-alt-text-settings-download-model-button"></span></button> |
| 770 |
</div> |
| 771 |
</div> |
| 772 |
</div> |
| 773 |
<div class="dialogSeparator"></div> |
| 774 |
<div id="altTextEditor"> |
| 775 |
<span data-l10n-id="pdfjs-editor-alt-text-settings-editor-title"></span> |
| 776 |
<div id="showAltTextEditor"> |
| 777 |
<div class="toggler"> |
| 778 |
<button id="showAltTextDialogButton" type="button" class="toggle-button" aria-pressed="true" tabindex="0"></button> |
| 779 |
<label for="showAltTextDialogButton" class="togglerLabel" data-l10n-id="pdfjs-editor-alt-text-settings-show-dialog-button-label"></label> |
| 780 |
</div> |
| 781 |
<div id="showAltTextDialogDescription" class="description"> |
| 782 |
<span data-l10n-id="pdfjs-editor-alt-text-settings-show-dialog-description"></span> |
| 783 |
</div> |
| 784 |
</div> |
| 785 |
</div> |
| 786 |
<div id="buttons" class="dialogButtonsGroup"> |
| 787 |
<button id="altTextSettingsCloseButton" type="button" class="primaryButton" tabindex="0"><span data-l10n-id="pdfjs-editor-alt-text-settings-close-button"></span></button> |
| 788 |
</div> |
| 789 |
</div> |
| 790 |
</dialog> |
| 791 |
|
| 792 |
<dialog class="dialog signatureDialog" id="addSignatureDialog" aria-labelledby="addSignatureDialogLabel"> |
| 793 |
<span id="addSignatureDialogLabel" data-l10n-id="pdfjs-editor-add-signature-dialog-label"></span> |
| 794 |
<div id="addSignatureContainer" class="mainContainer"> |
| 795 |
<div class="title"> |
| 796 |
<span role="sectionhead" data-l10n-id="pdfjs-editor-add-signature-dialog-title" tabindex="0"></span> |
| 797 |
</div> |
| 798 |
<div role="tablist" id="addSignatureOptions"> |
| 799 |
<button id="addSignatureTypeButton" type="button" role="tab" aria-selected="true" aria-controls="addSignatureTypeContainer" data-l10n-id="pdfjs-editor-add-signature-type-button" tabindex="0"></button> |
| 800 |
<button id="addSignatureDrawButton" type="button" role="tab" aria-selected="false" aria-controls="addSignatureDrawContainer" data-l10n-id="pdfjs-editor-add-signature-draw-button" tabindex="0"></button> |
| 801 |
<button id="addSignatureImageButton" type="button" role="tab" aria-selected="false" aria-controls="addSignatureImageContainer" data-l10n-id="pdfjs-editor-add-signature-image-button" tabindex="-1"></button> |
| 802 |
</div> |
| 803 |
<div id="addSignatureActionContainer" data-selected="type"> |
| 804 |
<div id="addSignatureTypeContainer" role="tabpanel" aria-labelledby="addSignatureTypeContainer"> |
| 805 |
<input id="addSignatureTypeInput" type="text" data-l10n-id="pdfjs-editor-add-signature-type-input" tabindex="0"></input> |
| 806 |
</div> |
| 807 |
<div id="addSignatureDrawContainer" role="tabpanel" aria-labelledby="addSignatureDrawButton" tabindex="-1"> |
| 808 |
<svg id="addSignatureDraw" xmlns="http://www.w3.org/2000/svg" aria-labelledby="addSignatureDrawPlaceholder">></svg> |
| 809 |
<span id="addSignatureDrawPlaceholder" data-l10n-id="pdfjs-editor-add-signature-draw-placeholder"></span> |
| 810 |
<div id="thickness"> |
| 811 |
<div> |
| 812 |
<label for="addSignatureDrawThickness" data-l10n-id="pdfjs-editor-add-signature-draw-thickness-range-label"></label> |
| 813 |
<input type="range" id="addSignatureDrawThickness" min="1" max="5" step="1" value="1" data-l10n-id="pdfjs-editor-add-signature-draw-thickness-range" data-l10n-args='{ "thickness": 1 }' tabindex="0"> |
| 814 |
</div> |
| 815 |
</div> |
| 816 |
</div> |
| 817 |
<div id="addSignatureImageContainer" role="tabpanel" aria-labelledby="addSignatureImageButton" tabindex="-1"> |
| 818 |
<svg id="addSignatureImage" xmlns="http://www.w3.org/2000/svg" aria-labelledby="addSignatureImagePlaceholder">></svg> |
| 819 |
<div id="addSignatureImagePlaceholder"> |
| 820 |
<span data-l10n-id="pdfjs-editor-add-signature-image-placeholder"></span> |
| 821 |
<label id="addSignatureImageBrowse" for="addSignatureFilePicker" tabindex="0"> |
| 822 |
<a data-l10n-id="pdfjs-editor-add-signature-image-browse-link"></a> |
| 823 |
</label> |
| 824 |
<input id="addSignatureFilePicker" type="file"></input> |
| 825 |
</div> |
| 826 |
</div> |
| 827 |
<div id="addSignatureControls"> |
| 828 |
<div id="horizontalContainer"> |
| 829 |
<div id="addSignatureDescriptionContainer"> |
| 830 |
<label for="addSignatureDescInput" data-l10n-id="pdfjs-editor-add-signature-description-label"></label> |
| 831 |
<span id="addSignatureDescription" class="inputWithClearButton"> |
| 832 |
<input id="addSignatureDescInput" type="text" data-l10n-id="pdfjs-editor-add-signature-description-input" tabindex="0"></input> |
| 833 |
<button class="clearInputButton" type="button" tabindex="0" aria-hidden="true"></button> |
| 834 |
</span> |
| 835 |
</div> |
| 836 |
<button id="clearSignatureButton" type="button" data-l10n-id="pdfjs-editor-add-signature-clear-button" tabindex="0"><span data-l10n-id="pdfjs-editor-add-signature-clear-button-label"></span></button> |
| 837 |
</div> |
| 838 |
<div id="addSignatureSaveContainer"> |
| 839 |
<input type="checkbox" id="addSignatureSaveCheckbox" checked="true"></input> |
| 840 |
<label for="addSignatureSaveCheckbox" data-l10n-id="pdfjs-editor-add-signature-save-checkbox"></label> |
| 841 |
<span></span> |
| 842 |
<span id="addSignatureSaveWarning" data-l10n-id="pdfjs-editor-add-signature-save-warning-message"></span> |
| 843 |
</div> |
| 844 |
</div> |
| 845 |
<div id="addSignatureError" hidden="true" class="messageBar"> |
| 846 |
<div> |
| 847 |
<div> |
| 848 |
<span class="title" data-l10n-id="pdfjs-editor-add-signature-image-upload-error-title"></span> |
| 849 |
<span class="description" data-l10n-id="pdfjs-editor-add-signature-image-upload-error-description"></span> |
| 850 |
</div> |
| 851 |
<button id="addSignatureErrorCloseButton" class="closeButton" type="button" tabindex="0"><span data-l10n-id="pdfjs-editor-add-signature-error-close-button"></span></button> |
| 852 |
</div> |
| 853 |
</div> |
| 854 |
<div class="dialogButtonsGroup"> |
| 855 |
<button id="addSignatureCancelButton" type="button" class="secondaryButton" tabindex="0"><span data-l10n-id="pdfjs-editor-add-signature-cancel-button"></span></button> |
| 856 |
<button id="addSignatureAddButton" type="button" class="primaryButton" disabled tabindex="0"><span data-l10n-id="pdfjs-editor-add-signature-add-button"></span></button> |
| 857 |
</div> |
| 858 |
</div> |
| 859 |
</div> |
| 860 |
</dialog> |
| 861 |
|
| 862 |
<dialog class="dialog signatureDialog" id="editSignatureDescriptionDialog" aria-labelledby="editSignatureDescriptionTitle"> |
| 863 |
<div id="editSignatureDescriptionContainer" class="mainContainer"> |
| 864 |
<div class="title"> |
| 865 |
<span id="editSignatureDescriptionTitle" role="sectionhead" data-l10n-id="pdfjs-editor-edit-signature-dialog-title" tabindex="0"></span> |
| 866 |
</div> |
| 867 |
<div id="editSignatureDescriptionAndView"> |
| 868 |
<div id="editSignatureDescriptionContainer"> |
| 869 |
<label for="editSignatureDescInput" data-l10n-id="pdfjs-editor-add-signature-description-label"></label> |
| 870 |
<span id="editSignatureDescription" class="inputWithClearButton"> |
| 871 |
<input id="editSignatureDescInput" type="text" data-l10n-id="pdfjs-editor-add-signature-description-input" tabindex="0"></input> |
| 872 |
<button class="clearInputButton" type="button" tabindex="0" aria-hidden="true"></button> |
| 873 |
</span> |
| 874 |
</div> |
| 875 |
<svg id="editSignatureView" xmlns="http://www.w3.org/2000/svg">></svg> |
| 876 |
</div> |
| 877 |
<div class="dialogButtonsGroup"> |
| 878 |
<button id="editSignatureCancelButton" type="button" class="secondaryButton" tabindex="0"><span data-l10n-id="pdfjs-editor-add-signature-cancel-button"></span></button> |
| 879 |
<button id="editSignatureUpdateButton" type="button" class="primaryButton" disabled tabindex="0"><span data-l10n-id="pdfjs-editor-edit-signature-update-button"></span></button> |
| 880 |
</div> |
| 881 |
</div> |
| 882 |
</dialog> |
| 883 |
|
| 884 |
<dialog id="printServiceDialog" style="min-width: 200px;"> |
| 885 |
<div class="row"> |
| 886 |
<span data-l10n-id="pdfjs-print-progress-message"></span> |
| 887 |
</div> |
| 888 |
<div class="row"> |
| 889 |
<progress value="0" max="100"></progress> |
| 890 |
<span data-l10n-id="pdfjs-print-progress-percent" data-l10n-args='{ "progress": 0 }' class="relative-progress">0%</span> |
| 891 |
</div> |
| 892 |
<div class="buttonRow"> |
| 893 |
<button id="printCancel" class="dialogButton" type="button"><span data-l10n-id="pdfjs-print-progress-close-button"></span></button> |
| 894 |
</div> |
| 895 |
</dialog> |
| 896 |
</div> <!-- dialogContainer --> |
| 897 |
|
| 898 |
<div id="editorUndoBar" class="messageBar" role="status" aria-labelledby="editorUndoBarMessage" tabindex="-1" hidden> |
| 899 |
<div> |
| 900 |
<div> |
| 901 |
<span id="editorUndoBarMessage" class="description"></span> |
| 902 |
</div> |
| 903 |
<button id="editorUndoBarUndoButton" class="undoButton" type="button" tabindex="0" data-l10n-id="pdfjs-editor-undo-bar-undo-button"> |
| 904 |
<span data-l10n-id="pdfjs-editor-undo-bar-undo-button-label"></span> |
| 905 |
</button> |
| 906 |
<button id="editorUndoBarCloseButton" class="closeButton" type="button" tabindex="0" data-l10n-id="pdfjs-editor-undo-bar-close-button"> |
| 907 |
<span data-l10n-id="pdfjs-editor-undo-bar-close-button-label"></span> |
| 908 |
</button> |
| 909 |
</div> |
| 910 |
</div> <!-- editorUndoBar --> |
| 911 |
|
| 912 |
</div> <!-- outerContainer --> |
| 913 |
<div id="printContainer"></div> |
| 914 |
</body> |
| 915 |
</html> |
| 916 |
|