mirror of
				https://github.com/Frooodle/Stirling-PDF.git
				synced 2025-11-01 01:21:18 +01:00 
			
		
		
		
	WIP: No errors but nothing is working
This commit is contained in:
		
							parent
							
								
									99b0150e7a
								
							
						
					
					
						commit
						14a90f5e50
					
				@ -81,6 +81,13 @@ public class GeneralWebController {
 | 
				
			|||||||
        model.addAttribute("currentPage", "view-pdf");
 | 
					        model.addAttribute("currentPage", "view-pdf");
 | 
				
			||||||
        return "view-pdf";
 | 
					        return "view-pdf";
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @GetMapping("/viewer")
 | 
				
			||||||
 | 
					    @Hidden
 | 
				
			||||||
 | 
					    public String ViewForm(Model model) {
 | 
				
			||||||
 | 
					        model.addAttribute("currentPage", "viewer");
 | 
				
			||||||
 | 
					        return "viewer";
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @GetMapping("/multi-tool")
 | 
					    @GetMapping("/multi-tool")
 | 
				
			||||||
    @Hidden
 | 
					    @Hidden
 | 
				
			||||||
 | 
				
			|||||||
@ -632,7 +632,9 @@ merge.submit=Merge
 | 
				
			|||||||
pdfOrganiser.title=Page Organizer
 | 
					pdfOrganiser.title=Page Organizer
 | 
				
			||||||
pdfOrganiser.header=PDF Page Organizer
 | 
					pdfOrganiser.header=PDF Page Organizer
 | 
				
			||||||
pdfOrganiser.submit=Rearrange Pages
 | 
					pdfOrganiser.submit=Rearrange Pages
 | 
				
			||||||
 | 
					#view pdf
 | 
				
			||||||
 | 
					viewPdf.title=View PDF
 | 
				
			||||||
 | 
					viewPdf.header=View PDF
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#multiTool
 | 
					#multiTool
 | 
				
			||||||
multiTool.title=PDF Multi Tool
 | 
					multiTool.title=PDF Multi Tool
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										3591
									
								
								src/main/resources/static/pdfjs/css/viewer.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3591
									
								
								src/main/resources/static/pdfjs/css/viewer.css
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										8232
									
								
								src/main/resources/static/pdfjs/js/pdf_viewer.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8232
									
								
								src/main/resources/static/pdfjs/js/pdf_viewer.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1
									
								
								src/main/resources/static/pdfjs/js/pdf_viewer.js.map
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								src/main/resources/static/pdfjs/js/pdf_viewer.js.map
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										66
									
								
								src/main/resources/static/pdfjs/js/viewer.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								src/main/resources/static/pdfjs/js/viewer.js
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,66 @@
 | 
				
			|||||||
 | 
					/* Copyright 2014 Mozilla Foundation
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					 * you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					 * You may obtain a copy of the License at
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 *     http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					 * distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					 * See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					 * limitations under the License.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"use strict";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if (!pdfjsLib.getDocument || !pdfjsViewer.PDFPageView) {
 | 
				
			||||||
 | 
					    // eslint-disable-next-line no-alert
 | 
				
			||||||
 | 
					    alert("Please build the pdfjs-dist library using\n  `gulp dist-install`");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// The workerSrc property shall be specified.
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					pdfjsLib.GlobalWorkerOptions.workerSrc =
 | 
				
			||||||
 | 
					    "/pdfjs/pdf.worker.js";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Some PDFs need external cmaps.
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					const CMAP_URL = "/pdfjs/cmaps/";
 | 
				
			||||||
 | 
					const CMAP_PACKED = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const DEFAULT_URL = "/pdfjs/example/compressed.tracemonkey-pldi-09.pdf";
 | 
				
			||||||
 | 
					const PAGE_TO_VIEW = 1;
 | 
				
			||||||
 | 
					const SCALE = 1.0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const ENABLE_XFA = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const container = document.getElementById("pageContainer");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const eventBus = new pdfjsViewer.EventBus();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Loading document.
 | 
				
			||||||
 | 
					const loadingTask = pdfjsLib.getDocument({
 | 
				
			||||||
 | 
					    url: DEFAULT_URL,
 | 
				
			||||||
 | 
					    cMapUrl: CMAP_URL,
 | 
				
			||||||
 | 
					    cMapPacked: CMAP_PACKED,
 | 
				
			||||||
 | 
					    enableXfa: ENABLE_XFA,
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
 | 
					(async function () {
 | 
				
			||||||
 | 
					    const pdfDocument = await loadingTask.promise;
 | 
				
			||||||
 | 
					    // Document loaded, retrieving the page.
 | 
				
			||||||
 | 
					    const pdfPage = await pdfDocument.getPage(PAGE_TO_VIEW);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // Creating the page view with default parameters.
 | 
				
			||||||
 | 
					    const pdfPageView = new pdfjsViewer.PDFPageView({
 | 
				
			||||||
 | 
					        container,
 | 
				
			||||||
 | 
					        id: PAGE_TO_VIEW,
 | 
				
			||||||
 | 
					        scale: SCALE,
 | 
				
			||||||
 | 
					        defaultViewport: pdfPage.getViewport({scale: SCALE}),
 | 
				
			||||||
 | 
					        eventBus,
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					    // Associate the actual page with the view, and draw it.
 | 
				
			||||||
 | 
					    pdfPageView.setPdfPage(pdfPage);
 | 
				
			||||||
 | 
					    return pdfPageView.draw();
 | 
				
			||||||
 | 
					})();
 | 
				
			||||||
							
								
								
									
										1
									
								
								src/main/resources/static/pdfjs/js/viewer.js.map
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								src/main/resources/static/pdfjs/js/viewer.js.map
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										797
									
								
								src/main/resources/static/pdfjs/pdf.sandbox.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										797
									
								
								src/main/resources/static/pdfjs/pdf.sandbox.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1
									
								
								src/main/resources/static/pdfjs/pdf.sandbox.js.map
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								src/main/resources/static/pdfjs/pdf.sandbox.js.map
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							@ -21,9 +21,8 @@
 | 
				
			|||||||
                <p class="small my-2">Drag & Drop PDF(s) inside dashed region<br><i>or</i></p>
 | 
					                <p class="small my-2">Drag & Drop PDF(s) inside dashed region<br><i>or</i></p>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                <input id="upload_image_background" data-post-name="image_background"
 | 
					                <input id="upload_image_background" data-post-name="image_background"
 | 
				
			||||||
                       data-post-url="https://someplace.com/image/uploads/backgrounds/"
 | 
					                       class="position-absolute invisible" type="file"
 | 
				
			||||||
                       class="position-absolute invisible" type="file" multiple
 | 
					                       accept="application/pdf"/>
 | 
				
			||||||
                       accept="image/jpeg, image/png, image/svg+xml"/>
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                <label class="btn btn-upload mb-3" for="upload_image_background">Choose file(s)</label>
 | 
					                <label class="btn btn-upload mb-3" for="upload_image_background">Choose file(s)</label>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										553
									
								
								src/main/resources/templates/viewer.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										553
									
								
								src/main/resources/templates/viewer.html
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,553 @@
 | 
				
			|||||||
 | 
					<!DOCTYPE html>
 | 
				
			||||||
 | 
					<!--
 | 
				
			||||||
 | 
					Copyright 2012 Mozilla Foundation
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					You may obtain a copy of the License at
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Adobe CMap resources are covered by their own copyright but the same license:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Copyright 1990-2015 Adobe Systems Incorporated.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					See https://github.com/adobe-type-tools/cmap-resources
 | 
				
			||||||
 | 
					-->
 | 
				
			||||||
 | 
					<html dir="ltr" mozdisallowselectionprint>
 | 
				
			||||||
 | 
					<head>
 | 
				
			||||||
 | 
					  <meta charset="utf-8">
 | 
				
			||||||
 | 
					  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
 | 
				
			||||||
 | 
					  <meta name="google" content="notranslate">
 | 
				
			||||||
 | 
					  <title>PDF.js viewer</title>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <!-- This snippet is used in production (included from viewer.html) -->
 | 
				
			||||||
 | 
					  <link rel="resource" type="application/l10n" href="/pdfjs/locale/locale.properties">
 | 
				
			||||||
 | 
					  <script src="/pdfjs/pdf.js"></script>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <link rel="stylesheet" href="/pdfjs/css/viewer.css">
 | 
				
			||||||
 | 
					  <script src="/pdfjs/js/pdf_viewer.js"></script>
 | 
				
			||||||
 | 
					  <script src="/pdfjs/js/viewer.js"></script>
 | 
				
			||||||
 | 
					</head>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<body tabindex="1">
 | 
				
			||||||
 | 
					<div id="outerContainer">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <div id="sidebarContainer">
 | 
				
			||||||
 | 
					    <div id="toolbarSidebar">
 | 
				
			||||||
 | 
					      <div id="toolbarSidebarLeft">
 | 
				
			||||||
 | 
					        <div id="sidebarViewButtons" class="splitToolbarButton toggled" role="radiogroup">
 | 
				
			||||||
 | 
					          <button id="viewThumbnail" class="toolbarButton toggled" title="Show Thumbnails" tabindex="2"
 | 
				
			||||||
 | 
					                  data-l10n-id="thumbs" role="radio" aria-checked="true" aria-controls="thumbnailView">
 | 
				
			||||||
 | 
					            <span data-l10n-id="thumbs_label">Thumbnails</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="viewOutline" class="toolbarButton"
 | 
				
			||||||
 | 
					                  title="Show Document Outline (double-click to expand/collapse all items)" tabindex="3"
 | 
				
			||||||
 | 
					                  data-l10n-id="document_outline" role="radio" aria-checked="false" aria-controls="outlineView">
 | 
				
			||||||
 | 
					            <span data-l10n-id="document_outline_label">Document Outline</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="viewAttachments" class="toolbarButton" title="Show Attachments" tabindex="4"
 | 
				
			||||||
 | 
					                  data-l10n-id="attachments" role="radio" aria-checked="false" aria-controls="attachmentsView">
 | 
				
			||||||
 | 
					            <span data-l10n-id="attachments_label">Attachments</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="viewLayers" class="toolbarButton"
 | 
				
			||||||
 | 
					                  title="Show Layers (double-click to reset all layers to the default state)" tabindex="5"
 | 
				
			||||||
 | 
					                  data-l10n-id="layers" role="radio" aria-checked="false" aria-controls="layersView">
 | 
				
			||||||
 | 
					            <span data-l10n-id="layers_label">Layers</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <div id="toolbarSidebarRight">
 | 
				
			||||||
 | 
					        <div id="outlineOptionsContainer" class="hidden">
 | 
				
			||||||
 | 
					          <div class="verticalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          <button id="currentOutlineItem" class="toolbarButton" disabled="disabled" title="Find Current Outline Item"
 | 
				
			||||||
 | 
					                  tabindex="6" data-l10n-id="current_outline_item">
 | 
				
			||||||
 | 
					            <span data-l10n-id="current_outline_item_label">Current Outline Item</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					    <div id="sidebarContent">
 | 
				
			||||||
 | 
					      <div id="thumbnailView">
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div id="outlineView" class="hidden">
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div id="attachmentsView" class="hidden">
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div id="layersView" class="hidden">
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					    <div id="sidebarResizer"></div>
 | 
				
			||||||
 | 
					  </div>  <!-- sidebarContainer -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <div id="mainContainer">
 | 
				
			||||||
 | 
					    <div class="findbar hidden doorHanger" id="findbar">
 | 
				
			||||||
 | 
					      <div id="findbarInputContainer">
 | 
				
			||||||
 | 
					        <input id="findInput" class="toolbarField" title="Find" placeholder="Find in document…" tabindex="91"
 | 
				
			||||||
 | 
					               data-l10n-id="find_input" aria-invalid="false">
 | 
				
			||||||
 | 
					        <div class="splitToolbarButton">
 | 
				
			||||||
 | 
					          <button id="findPrevious" class="toolbarButton" title="Find the previous occurrence of the phrase"
 | 
				
			||||||
 | 
					                  tabindex="92" data-l10n-id="find_previous">
 | 
				
			||||||
 | 
					            <span data-l10n-id="find_previous_label">Previous</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <div class="splitToolbarButtonSeparator"></div>
 | 
				
			||||||
 | 
					          <button id="findNext" class="toolbarButton" title="Find the next occurrence of the phrase" tabindex="93"
 | 
				
			||||||
 | 
					                  data-l10n-id="find_next">
 | 
				
			||||||
 | 
					            <span data-l10n-id="find_next_label">Next</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <div id="findbarOptionsOneContainer">
 | 
				
			||||||
 | 
					        <input type="checkbox" id="findHighlightAll" class="toolbarField" tabindex="94">
 | 
				
			||||||
 | 
					        <label for="findHighlightAll" class="toolbarLabel" data-l10n-id="find_highlight">Highlight All</label>
 | 
				
			||||||
 | 
					        <input type="checkbox" id="findMatchCase" class="toolbarField" tabindex="95">
 | 
				
			||||||
 | 
					        <label for="findMatchCase" class="toolbarLabel" data-l10n-id="find_match_case_label">Match Case</label>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div id="findbarOptionsTwoContainer">
 | 
				
			||||||
 | 
					        <input type="checkbox" id="findMatchDiacritics" class="toolbarField" tabindex="96">
 | 
				
			||||||
 | 
					        <label for="findMatchDiacritics" class="toolbarLabel" data-l10n-id="find_match_diacritics_label">Match
 | 
				
			||||||
 | 
					          Diacritics</label>
 | 
				
			||||||
 | 
					        <input type="checkbox" id="findEntireWord" class="toolbarField" tabindex="97">
 | 
				
			||||||
 | 
					        <label for="findEntireWord" class="toolbarLabel" data-l10n-id="find_entire_word_label">Whole Words</label>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <div id="findbarMessageContainer" aria-live="polite">
 | 
				
			||||||
 | 
					        <span id="findResultsCount" class="toolbarLabel"></span>
 | 
				
			||||||
 | 
					        <span id="findMsg" class="toolbarLabel"></span>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>  <!-- findbar -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <div class="editorParamsToolbar hidden doorHangerRight" id="editorFreeTextParamsToolbar">
 | 
				
			||||||
 | 
					      <div class="editorParamsToolbarContainer">
 | 
				
			||||||
 | 
					        <div class="editorParamsSetter">
 | 
				
			||||||
 | 
					          <label for="editorFreeTextColor" class="editorParamsLabel" data-l10n-id="editor_free_text_color">Color</label>
 | 
				
			||||||
 | 
					          <input type="color" id="editorFreeTextColor" class="editorParamsColor" tabindex="100">
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <div class="editorParamsSetter">
 | 
				
			||||||
 | 
					          <label for="editorFreeTextFontSize" class="editorParamsLabel"
 | 
				
			||||||
 | 
					                 data-l10n-id="editor_free_text_size">Size</label>
 | 
				
			||||||
 | 
					          <input type="range" id="editorFreeTextFontSize" class="editorParamsSlider" value="10" min="5" max="100"
 | 
				
			||||||
 | 
					                 step="1" tabindex="101">
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <div class="editorParamsToolbar hidden doorHangerRight" id="editorInkParamsToolbar">
 | 
				
			||||||
 | 
					      <div class="editorParamsToolbarContainer">
 | 
				
			||||||
 | 
					        <div class="editorParamsSetter">
 | 
				
			||||||
 | 
					          <label for="editorInkColor" class="editorParamsLabel" data-l10n-id="editor_ink_color">Color</label>
 | 
				
			||||||
 | 
					          <input type="color" id="editorInkColor" class="editorParamsColor" tabindex="102">
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <div class="editorParamsSetter">
 | 
				
			||||||
 | 
					          <label for="editorInkThickness" class="editorParamsLabel"
 | 
				
			||||||
 | 
					                 data-l10n-id="editor_ink_thickness">Thickness</label>
 | 
				
			||||||
 | 
					          <input type="range" id="editorInkThickness" class="editorParamsSlider" value="1" min="1" max="20" step="1"
 | 
				
			||||||
 | 
					                 tabindex="103">
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <div class="editorParamsSetter">
 | 
				
			||||||
 | 
					          <label for="editorInkOpacity" class="editorParamsLabel" data-l10n-id="editor_ink_opacity">Opacity</label>
 | 
				
			||||||
 | 
					          <input type="range" id="editorInkOpacity" class="editorParamsSlider" value="100" min="1" max="100" step="1"
 | 
				
			||||||
 | 
					                 tabindex="104">
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <div class="editorParamsToolbar hidden doorHangerRight" id="editorStampParamsToolbar">
 | 
				
			||||||
 | 
					      <div class="editorParamsToolbarContainer">
 | 
				
			||||||
 | 
					        <button id="editorStampAddImage" class="secondaryToolbarButton" title="Add image" tabindex="105"
 | 
				
			||||||
 | 
					                data-l10n-id="editor_stamp_add_image">
 | 
				
			||||||
 | 
					          <span data-l10n-id="editor_stamp_add_image_label">Add image</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <div id="secondaryToolbar" class="secondaryToolbar hidden doorHangerRight">
 | 
				
			||||||
 | 
					      <div id="secondaryToolbarButtonContainer">
 | 
				
			||||||
 | 
					        <button id="secondaryOpenFile" class="secondaryToolbarButton visibleLargeView" title="Open File" tabindex="51"
 | 
				
			||||||
 | 
					                data-l10n-id="open_file">
 | 
				
			||||||
 | 
					          <span data-l10n-id="open_file_label">Open</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button id="secondaryPrint" class="secondaryToolbarButton visibleMediumView" title="Print" tabindex="52"
 | 
				
			||||||
 | 
					                data-l10n-id="print">
 | 
				
			||||||
 | 
					          <span data-l10n-id="print_label">Print</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button id="secondaryDownload" class="secondaryToolbarButton visibleMediumView" title="Save" tabindex="53"
 | 
				
			||||||
 | 
					                data-l10n-id="save">
 | 
				
			||||||
 | 
					          <span data-l10n-id="save_label">Save</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="horizontalToolbarSeparator visibleLargeView"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button id="presentationMode" class="secondaryToolbarButton" title="Switch to Presentation Mode" tabindex="54"
 | 
				
			||||||
 | 
					                data-l10n-id="presentation_mode">
 | 
				
			||||||
 | 
					          <span data-l10n-id="presentation_mode_label">Presentation Mode</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <a href="#" id="viewBookmark" class="secondaryToolbarButton" title="Current Page (View URL from Current Page)"
 | 
				
			||||||
 | 
					           tabindex="55" data-l10n-id="bookmark1">
 | 
				
			||||||
 | 
					          <span data-l10n-id="bookmark1_label">Current Page</span>
 | 
				
			||||||
 | 
					        </a>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div id="viewBookmarkSeparator" class="horizontalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button id="firstPage" class="secondaryToolbarButton" title="Go to First Page" tabindex="56"
 | 
				
			||||||
 | 
					                data-l10n-id="first_page">
 | 
				
			||||||
 | 
					          <span data-l10n-id="first_page_label">Go to First Page</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					        <button id="lastPage" class="secondaryToolbarButton" title="Go to Last Page" tabindex="57"
 | 
				
			||||||
 | 
					                data-l10n-id="last_page">
 | 
				
			||||||
 | 
					          <span data-l10n-id="last_page_label">Go to Last Page</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="horizontalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button id="pageRotateCw" class="secondaryToolbarButton" title="Rotate Clockwise" tabindex="58"
 | 
				
			||||||
 | 
					                data-l10n-id="page_rotate_cw">
 | 
				
			||||||
 | 
					          <span data-l10n-id="page_rotate_cw_label">Rotate Clockwise</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					        <button id="pageRotateCcw" class="secondaryToolbarButton" title="Rotate Counterclockwise" tabindex="59"
 | 
				
			||||||
 | 
					                data-l10n-id="page_rotate_ccw">
 | 
				
			||||||
 | 
					          <span data-l10n-id="page_rotate_ccw_label">Rotate Counterclockwise</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="horizontalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div id="cursorToolButtons" role="radiogroup">
 | 
				
			||||||
 | 
					          <button id="cursorSelectTool" class="secondaryToolbarButton toggled" title="Enable Text Selection Tool"
 | 
				
			||||||
 | 
					                  tabindex="60" data-l10n-id="cursor_text_select_tool" role="radio" aria-checked="true">
 | 
				
			||||||
 | 
					            <span data-l10n-id="cursor_text_select_tool_label">Text Selection Tool</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="cursorHandTool" class="secondaryToolbarButton" title="Enable Hand Tool" tabindex="61"
 | 
				
			||||||
 | 
					                  data-l10n-id="cursor_hand_tool" role="radio" aria-checked="false">
 | 
				
			||||||
 | 
					            <span data-l10n-id="cursor_hand_tool_label">Hand Tool</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="horizontalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div id="scrollModeButtons" role="radiogroup">
 | 
				
			||||||
 | 
					          <button id="scrollPage" class="secondaryToolbarButton" title="Use Page Scrolling" tabindex="62"
 | 
				
			||||||
 | 
					                  data-l10n-id="scroll_page" role="radio" aria-checked="false">
 | 
				
			||||||
 | 
					            <span data-l10n-id="scroll_page_label">Page Scrolling</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="scrollVertical" class="secondaryToolbarButton toggled" title="Use Vertical Scrolling"
 | 
				
			||||||
 | 
					                  tabindex="63" data-l10n-id="scroll_vertical" role="radio" aria-checked="true">
 | 
				
			||||||
 | 
					            <span data-l10n-id="scroll_vertical_label">Vertical Scrolling</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="scrollHorizontal" class="secondaryToolbarButton" title="Use Horizontal Scrolling" tabindex="64"
 | 
				
			||||||
 | 
					                  data-l10n-id="scroll_horizontal" role="radio" aria-checked="false">
 | 
				
			||||||
 | 
					            <span data-l10n-id="scroll_horizontal_label">Horizontal Scrolling</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="scrollWrapped" class="secondaryToolbarButton" title="Use Wrapped Scrolling" tabindex="65"
 | 
				
			||||||
 | 
					                  data-l10n-id="scroll_wrapped" role="radio" aria-checked="false">
 | 
				
			||||||
 | 
					            <span data-l10n-id="scroll_wrapped_label">Wrapped Scrolling</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="horizontalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div id="spreadModeButtons" role="radiogroup">
 | 
				
			||||||
 | 
					          <button id="spreadNone" class="secondaryToolbarButton toggled" title="Do not join page spreads" tabindex="66"
 | 
				
			||||||
 | 
					                  data-l10n-id="spread_none" role="radio" aria-checked="true">
 | 
				
			||||||
 | 
					            <span data-l10n-id="spread_none_label">No Spreads</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="spreadOdd" class="secondaryToolbarButton"
 | 
				
			||||||
 | 
					                  title="Join page spreads starting with odd-numbered pages" tabindex="67" data-l10n-id="spread_odd"
 | 
				
			||||||
 | 
					                  role="radio" aria-checked="false">
 | 
				
			||||||
 | 
					            <span data-l10n-id="spread_odd_label">Odd Spreads</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="spreadEven" class="secondaryToolbarButton"
 | 
				
			||||||
 | 
					                  title="Join page spreads starting with even-numbered pages" tabindex="68" data-l10n-id="spread_even"
 | 
				
			||||||
 | 
					                  role="radio" aria-checked="false">
 | 
				
			||||||
 | 
					            <span data-l10n-id="spread_even_label">Even Spreads</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="horizontalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button id="documentProperties" class="secondaryToolbarButton" title="Document Properties…" tabindex="69"
 | 
				
			||||||
 | 
					                data-l10n-id="document_properties" aria-controls="documentPropertiesDialog">
 | 
				
			||||||
 | 
					          <span data-l10n-id="document_properties_label">Document Properties…</span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>  <!-- secondaryToolbar -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <div class="toolbar">
 | 
				
			||||||
 | 
					      <div id="toolbarContainer">
 | 
				
			||||||
 | 
					        <div id="toolbarViewer">
 | 
				
			||||||
 | 
					          <div id="toolbarViewerLeft">
 | 
				
			||||||
 | 
					            <button id="sidebarToggle" class="toolbarButton" title="Toggle Sidebar" tabindex="11"
 | 
				
			||||||
 | 
					                    data-l10n-id="toggle_sidebar" aria-expanded="false" aria-controls="sidebarContainer">
 | 
				
			||||||
 | 
					              <span data-l10n-id="toggle_sidebar_label">Toggle Sidebar</span>
 | 
				
			||||||
 | 
					            </button>
 | 
				
			||||||
 | 
					            <div class="toolbarButtonSpacer"></div>
 | 
				
			||||||
 | 
					            <button id="viewFind" class="toolbarButton" title="Find in Document" tabindex="12" data-l10n-id="findbar"
 | 
				
			||||||
 | 
					                    aria-expanded="false" aria-controls="findbar">
 | 
				
			||||||
 | 
					              <span data-l10n-id="findbar_label">Find</span>
 | 
				
			||||||
 | 
					            </button>
 | 
				
			||||||
 | 
					            <div class="splitToolbarButton hiddenSmallView">
 | 
				
			||||||
 | 
					              <button class="toolbarButton" title="Previous Page" id="previous" tabindex="13" data-l10n-id="previous">
 | 
				
			||||||
 | 
					                <span data-l10n-id="previous_label">Previous</span>
 | 
				
			||||||
 | 
					              </button>
 | 
				
			||||||
 | 
					              <div class="splitToolbarButtonSeparator"></div>
 | 
				
			||||||
 | 
					              <button class="toolbarButton" title="Next Page" id="next" tabindex="14" data-l10n-id="next">
 | 
				
			||||||
 | 
					                <span data-l10n-id="next_label">Next</span>
 | 
				
			||||||
 | 
					              </button>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					            <input type="number" id="pageNumber" class="toolbarField" title="Page" value="1" min="1" tabindex="15"
 | 
				
			||||||
 | 
					                   data-l10n-id="page" autocomplete="off">
 | 
				
			||||||
 | 
					            <span id="numPages" class="toolbarLabel"></span>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					          <div id="toolbarViewerRight">
 | 
				
			||||||
 | 
					            <button id="openFile" class="toolbarButton hiddenLargeView" title="Open File" tabindex="31"
 | 
				
			||||||
 | 
					                    data-l10n-id="open_file">
 | 
				
			||||||
 | 
					              <span data-l10n-id="open_file_label">Open</span>
 | 
				
			||||||
 | 
					            </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <button id="print" class="toolbarButton hiddenMediumView" title="Print" tabindex="32" data-l10n-id="print">
 | 
				
			||||||
 | 
					              <span data-l10n-id="print_label">Print</span>
 | 
				
			||||||
 | 
					            </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <button id="download" class="toolbarButton hiddenMediumView" title="Save" tabindex="33" data-l10n-id="save">
 | 
				
			||||||
 | 
					              <span data-l10n-id="save_label">Save</span>
 | 
				
			||||||
 | 
					            </button>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <div class="verticalToolbarSeparator hiddenMediumView"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <div id="editorModeButtons" class="splitToolbarButton toggled" role="radiogroup">
 | 
				
			||||||
 | 
					              <button id="editorFreeText" class="toolbarButton" disabled="disabled" title="Text" role="radio"
 | 
				
			||||||
 | 
					                      aria-checked="false" aria-controls="editorFreeTextParamsToolbar" tabindex="34"
 | 
				
			||||||
 | 
					                      data-l10n-id="editor_free_text2">
 | 
				
			||||||
 | 
					                <span data-l10n-id="editor_free_text2_label">Text</span>
 | 
				
			||||||
 | 
					              </button>
 | 
				
			||||||
 | 
					              <button id="editorInk" class="toolbarButton" disabled="disabled" title="Draw" role="radio"
 | 
				
			||||||
 | 
					                      aria-checked="false" aria-controls="editorInkParamsToolbar" tabindex="35"
 | 
				
			||||||
 | 
					                      data-l10n-id="editor_ink2">
 | 
				
			||||||
 | 
					                <span data-l10n-id="editor_ink2_label">Draw</span>
 | 
				
			||||||
 | 
					              </button>
 | 
				
			||||||
 | 
					              <button id="editorStamp" class="toolbarButton hidden" disabled="disabled" title="Add or edit images"
 | 
				
			||||||
 | 
					                      role="radio" aria-checked="false" aria-controls="editorStampParamsToolbar" tabindex="36"
 | 
				
			||||||
 | 
					                      data-l10n-id="editor_stamp1">
 | 
				
			||||||
 | 
					                <span data-l10n-id="editor_stamp1_label">Add or edit images</span>
 | 
				
			||||||
 | 
					              </button>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <div id="editorModeSeparator" class="verticalToolbarSeparator"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <button id="secondaryToolbarToggle" class="toolbarButton" title="Tools" tabindex="48" data-l10n-id="tools"
 | 
				
			||||||
 | 
					                    aria-expanded="false" aria-controls="secondaryToolbar">
 | 
				
			||||||
 | 
					              <span data-l10n-id="tools_label">Tools</span>
 | 
				
			||||||
 | 
					            </button>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					          <div id="toolbarViewerMiddle">
 | 
				
			||||||
 | 
					            <div class="splitToolbarButton">
 | 
				
			||||||
 | 
					              <button id="zoomOut" class="toolbarButton" title="Zoom Out" tabindex="21" data-l10n-id="zoom_out">
 | 
				
			||||||
 | 
					                <span data-l10n-id="zoom_out_label">Zoom Out</span>
 | 
				
			||||||
 | 
					              </button>
 | 
				
			||||||
 | 
					              <div class="splitToolbarButtonSeparator"></div>
 | 
				
			||||||
 | 
					              <button id="zoomIn" class="toolbarButton" title="Zoom In" tabindex="22" data-l10n-id="zoom_in">
 | 
				
			||||||
 | 
					                <span data-l10n-id="zoom_in_label">Zoom In</span>
 | 
				
			||||||
 | 
					              </button>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					            <span id="scaleSelectContainer" class="dropdownToolbarButton">
 | 
				
			||||||
 | 
					                  <select id="scaleSelect" title="Zoom" tabindex="23" data-l10n-id="zoom">
 | 
				
			||||||
 | 
					                    <option id="pageAutoOption" title="" value="auto" selected="selected"
 | 
				
			||||||
 | 
					                            data-l10n-id="page_scale_auto">Automatic Zoom</option>
 | 
				
			||||||
 | 
					                    <option id="pageActualOption" title="" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option>
 | 
				
			||||||
 | 
					                    <option id="pageFitOption" title="" value="page-fit" data-l10n-id="page_scale_fit">Page Fit</option>
 | 
				
			||||||
 | 
					                    <option id="pageWidthOption" title="" value="page-width"
 | 
				
			||||||
 | 
					                            data-l10n-id="page_scale_width">Page Width</option>
 | 
				
			||||||
 | 
					                    <option id="customScaleOption" title="" value="custom" disabled="disabled" hidden="true"></option>
 | 
				
			||||||
 | 
					                    <option title="" value="0.5" data-l10n-id="page_scale_percent"
 | 
				
			||||||
 | 
					                            data-l10n-args='{ "scale": 50 }'>50%</option>
 | 
				
			||||||
 | 
					                    <option title="" value="0.75" data-l10n-id="page_scale_percent"
 | 
				
			||||||
 | 
					                            data-l10n-args='{ "scale": 75 }'>75%</option>
 | 
				
			||||||
 | 
					                    <option title="" value="1" data-l10n-id="page_scale_percent"
 | 
				
			||||||
 | 
					                            data-l10n-args='{ "scale": 100 }'>100%</option>
 | 
				
			||||||
 | 
					                    <option title="" value="1.25" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 125 }'>125%</option>
 | 
				
			||||||
 | 
					                    <option title="" value="1.5" data-l10n-id="page_scale_percent" data-l10n-args='{ "scale": 150 }'>150%</option>
 | 
				
			||||||
 | 
					                    <option title="" value="2" data-l10n-id="page_scale_percent"
 | 
				
			||||||
 | 
					                            data-l10n-args='{ "scale": 200 }'>200%</option>
 | 
				
			||||||
 | 
					                    <option title="" value="3" data-l10n-id="page_scale_percent"
 | 
				
			||||||
 | 
					                            data-l10n-args='{ "scale": 300 }'>300%</option>
 | 
				
			||||||
 | 
					                    <option title="" value="4" data-l10n-id="page_scale_percent"
 | 
				
			||||||
 | 
					                            data-l10n-args='{ "scale": 400 }'>400%</option>
 | 
				
			||||||
 | 
					                  </select>
 | 
				
			||||||
 | 
					                </span>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <div id="loadingBar">
 | 
				
			||||||
 | 
					          <div class="progress">
 | 
				
			||||||
 | 
					            <div class="glimmer">
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <div id="viewerContainer" tabindex="0">
 | 
				
			||||||
 | 
					      <div id="pageContainer" class="pdfViewer"></div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					  </div> <!-- mainContainer -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <div id="dialogContainer">
 | 
				
			||||||
 | 
					    <dialog id="passwordDialog">
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <label for="password" id="passwordText" data-l10n-id="password_label">Enter the password to open this PDF
 | 
				
			||||||
 | 
					          file:</label>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <input type="password" id="password" class="toolbarField">
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="buttonRow">
 | 
				
			||||||
 | 
					        <button id="passwordCancel" class="dialogButton"><span data-l10n-id="password_cancel">Cancel</span></button>
 | 
				
			||||||
 | 
					        <button id="passwordSubmit" class="dialogButton"><span data-l10n-id="password_ok">OK</span></button>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </dialog>
 | 
				
			||||||
 | 
					    <dialog id="documentPropertiesDialog">
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="fileNameLabel" data-l10n-id="document_properties_file_name">File name:</span>
 | 
				
			||||||
 | 
					        <p id="fileNameField" aria-labelledby="fileNameLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="fileSizeLabel" data-l10n-id="document_properties_file_size">File size:</span>
 | 
				
			||||||
 | 
					        <p id="fileSizeField" aria-labelledby="fileSizeLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="separator"></div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="titleLabel" data-l10n-id="document_properties_title">Title:</span>
 | 
				
			||||||
 | 
					        <p id="titleField" aria-labelledby="titleLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="authorLabel" data-l10n-id="document_properties_author">Author:</span>
 | 
				
			||||||
 | 
					        <p id="authorField" aria-labelledby="authorLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="subjectLabel" data-l10n-id="document_properties_subject">Subject:</span>
 | 
				
			||||||
 | 
					        <p id="subjectField" aria-labelledby="subjectLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="keywordsLabel" data-l10n-id="document_properties_keywords">Keywords:</span>
 | 
				
			||||||
 | 
					        <p id="keywordsField" aria-labelledby="keywordsLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="creationDateLabel" data-l10n-id="document_properties_creation_date">Creation Date:</span>
 | 
				
			||||||
 | 
					        <p id="creationDateField" aria-labelledby="creationDateLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="modificationDateLabel" data-l10n-id="document_properties_modification_date">Modification Date:</span>
 | 
				
			||||||
 | 
					        <p id="modificationDateField" aria-labelledby="modificationDateLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="creatorLabel" data-l10n-id="document_properties_creator">Creator:</span>
 | 
				
			||||||
 | 
					        <p id="creatorField" aria-labelledby="creatorLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="separator"></div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="producerLabel" data-l10n-id="document_properties_producer">PDF Producer:</span>
 | 
				
			||||||
 | 
					        <p id="producerField" aria-labelledby="producerLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="versionLabel" data-l10n-id="document_properties_version">PDF Version:</span>
 | 
				
			||||||
 | 
					        <p id="versionField" aria-labelledby="versionLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="pageCountLabel" data-l10n-id="document_properties_page_count">Page Count:</span>
 | 
				
			||||||
 | 
					        <p id="pageCountField" aria-labelledby="pageCountLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="pageSizeLabel" data-l10n-id="document_properties_page_size">Page Size:</span>
 | 
				
			||||||
 | 
					        <p id="pageSizeField" aria-labelledby="pageSizeLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="separator"></div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span id="linearizedLabel" data-l10n-id="document_properties_linearized">Fast Web View:</span>
 | 
				
			||||||
 | 
					        <p id="linearizedField" aria-labelledby="linearizedLabel">-</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="buttonRow">
 | 
				
			||||||
 | 
					        <button id="documentPropertiesClose" class="dialogButton"><span
 | 
				
			||||||
 | 
					                data-l10n-id="document_properties_close">Close</span></button>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </dialog>
 | 
				
			||||||
 | 
					    <dialog id="altTextDialog" aria-labelledby="dialogLabel" aria-describedby="dialogDescription">
 | 
				
			||||||
 | 
					      <div id="altTextContainer">
 | 
				
			||||||
 | 
					        <div id="overallDescription">
 | 
				
			||||||
 | 
					          <span id="dialogLabel" data-l10n-id="editor_alt_text_dialog_label" class="title">Choose an option</span>
 | 
				
			||||||
 | 
					          <span id="dialogDescription" data-l10n-id="editor_alt_text_dialog_description">
 | 
				
			||||||
 | 
					                Alt text (alternative text) helps when people can’t see the image or when it doesn’t load.
 | 
				
			||||||
 | 
					              </span>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <div id="addDescription">
 | 
				
			||||||
 | 
					          <div class="radio">
 | 
				
			||||||
 | 
					            <div class="radioButton">
 | 
				
			||||||
 | 
					              <input type="radio" id="descriptionButton" name="altTextOption" tabindex="0"
 | 
				
			||||||
 | 
					                     aria-describedby="descriptionAreaLabel" checked>
 | 
				
			||||||
 | 
					              <label for="descriptionButton" data-l10n-id="editor_alt_text_add_description_label">Add a
 | 
				
			||||||
 | 
					                description</label>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					            <div class="radioLabel">
 | 
				
			||||||
 | 
					                  <span id="descriptionAreaLabel" data-l10n-id="editor_alt_text_add_description_description">
 | 
				
			||||||
 | 
					                    Aim for 1-2 sentences that describe the subject, setting, or actions.
 | 
				
			||||||
 | 
					                  </span>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					          <div class="descriptionArea">
 | 
				
			||||||
 | 
					            <textarea id="descriptionTextarea"
 | 
				
			||||||
 | 
					                      placeholder="For example, “A young man sits down at a table to eat a meal”"
 | 
				
			||||||
 | 
					                      aria-labelledby="descriptionAreaLabel" data-l10n-id="editor_alt_text_textarea"
 | 
				
			||||||
 | 
					                      tabindex="0"></textarea>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <div id="markAsDecorative">
 | 
				
			||||||
 | 
					          <div class="radio">
 | 
				
			||||||
 | 
					            <div class="radioButton">
 | 
				
			||||||
 | 
					              <input type="radio" id="decorativeButton" name="altTextOption" aria-describedby="decorativeLabel">
 | 
				
			||||||
 | 
					              <label for="decorativeButton" data-l10n-id="editor_alt_text_mark_decorative_label">Mark as
 | 
				
			||||||
 | 
					                decorative</label>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					            <div class="radioLabel">
 | 
				
			||||||
 | 
					                  <span id="decorativeLabel" data-l10n-id="editor_alt_text_mark_decorative_description">
 | 
				
			||||||
 | 
					                    This is used for ornamental images, like borders or watermarks.
 | 
				
			||||||
 | 
					                  </span>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <div id="buttons">
 | 
				
			||||||
 | 
					          <button id="altTextCancel" tabindex="0"><span data-l10n-id="editor_alt_text_cancel_button">Cancel</span>
 | 
				
			||||||
 | 
					          </button>
 | 
				
			||||||
 | 
					          <button id="altTextSave" tabindex="0"><span data-l10n-id="editor_alt_text_save_button">Save</span></button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </dialog>
 | 
				
			||||||
 | 
					    <dialog id="printServiceDialog" style="min-width: 200px;">
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <span data-l10n-id="print_progress_message">Preparing document for printing…</span>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="row">
 | 
				
			||||||
 | 
					        <progress value="0" max="100"></progress>
 | 
				
			||||||
 | 
					        <span data-l10n-id="print_progress_percent" data-l10n-args='{ "progress": 0 }'
 | 
				
			||||||
 | 
					              class="relative-progress">0%</span>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="buttonRow">
 | 
				
			||||||
 | 
					        <button id="printCancel" class="dialogButton"><span data-l10n-id="print_progress_close">Cancel</span></button>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </dialog>
 | 
				
			||||||
 | 
					  </div>  <!-- dialogContainer -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</div> <!-- outerContainer -->
 | 
				
			||||||
 | 
					<div id="printContainer"></div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<input type="file" id="fileInput" class="hidden">
 | 
				
			||||||
 | 
					</body>
 | 
				
			||||||
 | 
					</html>
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user