Changeset 66714 in spip-zone for _plugins_/pdfjs


Ignore:
Timestamp:
Oct 11, 2012, 7:47:43 PM (7 years ago)
Author:
joseph@…
Message:

Mise à jour de pdf.js et du viewer.css

Les fichiers sont réorganisés dans un répertoire lib. De plus, on réduit les personnalisations à des surcharges afin de faciliter les mises à jours ultérieures.

Seul le fichier pdfjs.html est repris de web/viewer.html avec un head personnalisé.

Location:
_plugins_/pdfjs
Files:
38 added
3 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/pdfjs/paquet.xml

    r58441 r66714  
    22        prefix="pdfjs"
    33        categorie="multimedia"
    4         version="0.1.0"
     4        version="0.2.0"
    55        etat="experimental"
    6         compatibilite="[3.0.0-dev;["
     6        compatibilite="[2.0.0;["
    77        logo="prive/themes/spip/images/pdfjs-32.png"
    88        documentation="http://www.spip-contrib.net/Lecteur-pdf-javascript-pdf-js"
     
    1212        <credit lien="http://www.erational.org">erational (mise en plugin)</credit> 
    1313        <licence lien="https://github.com/mozilla/pdf.js/blob/master/LICENSE">license</licence>
    14   <copyright>2011 Mozilla Foundation</copyright>
     14        <copyright>2011 Mozilla Foundation</copyright>
    1515</paquet>
  • _plugins_/pdfjs/pdfjs.html

    r58708 r66714  
    1 [(#HTTP_HEADER{Content-type: text/html[; charset=(#CHARSET)]})]<!DOCTYPE html>
    2 <html>
    3     <head>
    4         <title>Lecteur pdf simple</title>
    5         #INSERT_HEAD[(#REM)
    6               - avantages active la compression js/css
    7                           permet de regrouper les fichiers suivants
    8                           pour l'instant pas vraiment utile car on passe par worker_loader
    9                          
    10                           sinon il faudrait generer un unique pdf.js
    11                           mais ajourdit la maintenance du plugin en cas maj d'un  des scripts (il faut tout recompiler)
    12              
    13               - defaut:   utilise des fichiers de spip inutiles jquery,mediabox
    14        
    15         ]         
    16         <link rel="stylesheet" href="#CHEMIN{pdfjs.css}" media="all" />         
    17         <script type="text/javascript" src="#CHEMIN{compatibility.js}"></script> [(#REM) PDFJSSCRIPT_REMOVE_FIREFOX_EXTENSION ]
    18         <script type="text/javascript" src="#CHEMIN{src/core.js}"></script>
    19         <script type="text/javascript" src="#CHEMIN{src/util.js}"></script> 
    20         <script type="text/javascript" src="#CHEMIN{src/canvas.js}"></script> 
    21         <script type="text/javascript" src="#CHEMIN{src/obj.js}"></script> 
    22         <script type="text/javascript" src="#CHEMIN{src/function.js}"></script>
    23         <script type="text/javascript" src="#CHEMIN{src/charsets.js}"></script> 
    24         <script type="text/javascript" src="#CHEMIN{src/cidmaps.js}"></script> 
    25         <script type="text/javascript" src="#CHEMIN{src/colorspace.js}"></script> 
    26         <script type="text/javascript" src="#CHEMIN{src/crypto.js}"></script> 
    27         <script type="text/javascript" src="#CHEMIN{src/evaluator.js}"></script> 
    28         <script type="text/javascript" src="#CHEMIN{src/fonts.js}"></script> 
    29         <script type="text/javascript" src="#CHEMIN{src/glyphlist.js}"></script> 
    30         <script type="text/javascript" src="#CHEMIN{src/image.js}"></script> 
    31         <script type="text/javascript" src="#CHEMIN{src/metrics.js}"></script> 
    32         <script type="text/javascript" src="#CHEMIN{src/parser.js}"></script> 
    33         <script type="text/javascript" src="#CHEMIN{src/pattern.js}"></script> 
    34         <script type="text/javascript" src="#CHEMIN{src/stream.js}"></script> 
    35         <script type="text/javascript" src="#CHEMIN{src/worker.js}"></script> 
    36         [(#REM) dans la distrib on a aussi
    37                 debugger.js         -> inutile
    38                 ../external/jpg.js  ->  mais on le l'inclut pas car une fois la compression genere une erreur js ]
    39         <script type="text/javascript" src="#CHEMIN{src/jpx.js}"></script> 
    40         [(#REM) FIXME
    41                     il faudrait recuperer ici l'url de worker_loader.js
    42                     par l'url du js compresse via le insert_head... comment ?]
    43         <script type="text/javascript">PDFJS.workerSrc = '#CHEMIN{src/worker_loader.js}';</script>             
    44         <script type="text/javascript" src="[(#URL_PAGE{pdfjs.js}|parametre_url{id_document,#ENV{id_document}})]"></script>       
    45     </head>
     1[(#HTTP_HEADER{Content-type: text/html[; charset=(#CHARSET)]})]<BOUCLE_doc(DOCUMENTS){id_document}{extension=pdf}{tout}>[(#ENV{file}|non)<!DOCTYPE html>
     2<html dir="#LANG_DIR">[(#REM)
     3  Cette page est basée sur http://mozilla.github.com/pdf.js/web/viewer.html avec quelques modifications :
     4    - Le head a été adapté pour aller rechercher les scripts au bon endroit.
     5    - Le body est inchangé, les surcharges étant faites dans le head.
     6    - Plutôt que de modifier le source de web/viewer.js, on surcharge les valeurs adéquates juste après son chargement. La surcharge sera maintenue en cas de maintenance.
     7    - Les fichiers build/pdf.js, web/l10.js et web/locale.properties ne sont pas directement disponibles dans le source mais peuvent être téléchargés aux adresses :
     8        - http://mozilla.github.com/pdf.js/build/pdf.js
     9        - http://mozilla.github.com/pdf.js/web/l10.js
     10        - http://mozilla.github.com/pdf.js/web/locale.properties
     11    - Le bouton permettant de charger un fichier personnel est masqué.
     12    - Pour des raisons de sécurité, on refuse la présence d'une variable d'environnement file (qui permet de passer au viewer sa propre URL).
     13  ]<head>
     14    <meta charset="#CHARSET">
     15    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
     16    <title>[(#TITRE|textebrut) - ][(#NOM_SITE_SPIP|textebrut)]</title>
     17
     18    <link rel="stylesheet" href="#CHEMIN{lib/pdfjs/web/viewer.css}"/>
     19    <script type="text/javascript" src="#CHEMIN{lib/pdfjs/web/compatibility.js}"></script>
     20    <!-- This snippet is used in production, see Makefile -->
     21    <link rel="resource" type="application/l10n" href="#CHEMIN{lib/pdfjs/web/locale.properties}"/>
     22    <script type="text/javascript" src="#CHEMIN{lib/pdfjs/web/l10n.js}"></script>
     23    <script type="text/javascript" src="#CHEMIN{lib/pdfjs/build/pdf.js}"></script>
     24    <script type="text/javascript" src="#CHEMIN{lib/pdfjs/web/debugger.js}"></script>
     25    <script type="text/javascript" src="#CHEMIN{lib/pdfjs/web/viewer.js}"></script>
     26    <script type="text/javascript">
     27        PDFJS.workerSrc = '#CHEMIN{lib/pdfjs/build/pdf.js}';
     28        kDefaultURL = '[(#URL_DOCUMENT|copie_locale)]';
     29        kImageDirectory = '#CHEMIN{lib/pdfjs/web/images/}';
     30    </script>
     31    <style type="text/css">#openFile {display:none;}</style>
     32  </head>
    4633
    4734  <body>
    48     <div id="controls">
    49       <button id="previous" onclick="PDFView.page--;" oncontextmenu="return false;">
    50         <img src="#CHEMIN{images/go-up.svg}" align="top" height="16"/>       
    51       </button>
     35    <div id="outerContainer">
    5236
    53       <button id="next" onclick="PDFView.page++;" oncontextmenu="return false;">
    54         <img src="#CHEMIN{images/go-down.svg}" align="top" height="16"/>     
    55       </button>
     37      <div id="sidebarContainer">
     38        <div id="toolbarSidebar" class="splitToolbarButton toggled">
     39          <button id="viewThumbnail" class="toolbarButton group toggled" title="Show Thumbnails" tabindex="1" data-l10n-id="thumbs">
     40             <span data-l10n-id="thumbs_label">Thumbnails</span>
     41          </button>
     42          <button id="viewOutline" class="toolbarButton group" title="Show Document Outline" tabindex="2" data-l10n-id="outline">
     43             <span data-l10n-id="outline_label">Document Outline</span>
     44          </button>
     45        </div>
     46        <div id="sidebarContent">
     47          <div id="thumbnailView">
     48          </div>
     49          <div id="outlineView" class="hidden">
     50          </div>
     51        </div>
     52      </div>  <!-- sidebarContainer -->
    5653
    57       <!--<div class="separator"></div> -->
    58 
    59       <input type="number" id="pageNumber" onchange="PDFView.page = this.value;" value="1" size="4" min="1" />
    60 
    61       <span>/</span>
    62       <span id="numPages">--</span>
    63 
    64       <div class="separator"></div>
    65          
    66       <button id="zoomOut" title="Zoom Out" onclick="PDFView.zoomOut();" oncontextmenu="return false;">
    67         <img src="#CHEMIN{images/zoom-out.svg}" align="top" height="16"/>
    68       </button>
    69       <button id="zoomIn" title="Zoom In" onclick="PDFView.zoomIn();" oncontextmenu="return false;">
    70         <img src="#CHEMIN{images/zoom-in.svg}" align="top" height="16"/>
    71       </button>
    72 
    73       <div class="separator"></div>
    74 
    75       <select id="scaleSelect" onchange="PDFView.parseScale(this.value);" oncontextmenu="return false;">
    76         <option id="customScaleOption" value="custom"></option>
    77         <option value="0.5">50%</option>
    78         <option value="0.75">75%</option>
    79         <option value="1">100%</option>
    80         <option value="1.25">125%</option>
    81         <option value="1.5">150%</option>
    82         <option value="2">200%</option>
    83         <option id="pageWidthOption" value="page-width">Page Width</option>
    84         <option id="pageFitOption" value="page-fit">Page Fit</option>
    85         <option id="pageAutoOption" value="auto" selected="selected">Auto</option>
    86       </select>
    87 
    88       <div class="separator"></div>
    89 
    90       <button id="print" onclick="window.print();" oncontextmenu="return false;">
    91         <img src="#CHEMIN{images/document-print.svg}" align="top" height="16"/>         
    92       </button>
    93 
    94       <button id="download" title="Download" onclick="PDFView.download();" oncontextmenu="return false;">
    95         <img src="#CHEMIN{images/download.svg}" align="top" height="16"/>       
    96       </button>
     54      <div id="mainContainer">
     55        <div class="findbar hidden doorHanger" id="findbar">
     56          <label for="findInput" class="toolbarLabel" data-l10n-id="find_label">Find:</label>
     57          <input id="findInput" class="toolbarField" tabindex="20">
     58          <div class="splitToolbarButton">
     59            <button class="toolbarButton findPrevious" title="" id="findPrevious" tabindex="21" data-l10n-id="find_previous">
     60              <span data-l10n-id="find_previous_label">Previous</span>
     61            </button>
     62            <div class="splitToolbarButtonSeparator"></div>
     63            <button class="toolbarButton findNext" title="" id="findNext" tabindex="22" data-l10n-id="find_next">
     64              <span data-l10n-id="find_next_label">Next</span>
     65            </button>
     66          </div>
     67          <input type="checkbox" id="findHighlightAll" class="toolbarField">
     68          <label for="findHighlightAll" class="toolbarLabel" tabindex="23" data-l10n-id="find_highlight">Highlight all</label>
     69          <input type="checkbox" id="findMatchCase" class="toolbarField">
     70          <label for="findMatchCase" class="toolbarLabel" tabindex="24" data-l10n-id="find_match_case_label">Match case</label>
     71          <span id="findMsg" class="toolbarLabel"></span>
     72        </div>
     73        <div class="toolbar">
     74          <div id="toolbarContainer">
     75            <div id="toolbarViewer">
     76              <div id="toolbarViewerLeft">
     77                <button id="sidebarToggle" class="toolbarButton" title="Toggle Sidebar" tabindex="3" data-l10n-id="toggle_slider">
     78                  <span data-l10n-id="toggle_slider_label">Toggle Sidebar</span>
     79                </button>
     80                <div class="toolbarButtonSpacer"></div>
     81                <button id="viewFind" class="toolbarButton group" title="Find in Document" tabindex="4" data-l10n-id="findbar">
     82                   <span data-l10n-id="findbar_label">Find</span>
     83                </button>
     84                <div class="splitToolbarButton">
     85                  <button class="toolbarButton pageUp" title="Previous Page" id="previous" tabindex="5" data-l10n-id="previous">
     86                    <span data-l10n-id="previous_label">Previous</span>
     87                  </button>
     88                  <div class="splitToolbarButtonSeparator"></div>
     89                  <button class="toolbarButton pageDown" title="Next Page" id="next" tabindex="6" data-l10n-id="next">
     90                    <span data-l10n-id="next_label">Next</span>
     91                  </button>
     92                </div>
     93                <label id="pageNumberLabel" class="toolbarLabel" for="pageNumber" data-l10n-id="page_label">Page: </label>
     94                <input type="number" id="pageNumber" class="toolbarField pageNumber" value="1" size="4" min="1" tabindex="7">
     95                </input>
     96                <span id="numPages" class="toolbarLabel"></span>
     97              </div>
     98              <div id="toolbarViewerRight">
     99                <input id="fileInput" class="fileInput" type="file" oncontextmenu="return false;" style="visibility: hidden; position: fixed; right: 0; top: 0" />
    97100
    98101
    99       <span id="info">--</span>
    100     </div>
    101     <div id="errorWrapper" hidden='true'>
    102       <div id="errorMessageLeft">
    103         <span id="errorMessage"></span>
    104         <button id="errorShowMore" onclick="" oncontextmenu="return false;">
    105           More Information
    106         </button>
    107         <button id="errorShowLess" onclick="" oncontextmenu="return false;" hidden='true'>
    108           Less Information
    109         </button>
    110       </div>
    111       <div id="errorMessageRight">
    112         <button id="errorClose" oncontextmenu="return false;">
    113           Close
    114         </button>
    115       </div>
    116       <div class="clearBoth"></div>
    117       <textarea id="errorMoreInfo" hidden='true' readonly="readonly"></textarea>
    118     </div>
    119    
    120    
    121     <div id="sidebar">
    122       <div id="sidebarBox">
    123         <div id="pinIcon" onClick="PDFView.pinSidebar()"></div>
    124         <div id="sidebarScrollView">
    125           <div id="sidebarView"></div>
     102                <button id="fullscreen" class="toolbarButton fullscreen" title="Switch to Presentation Mode" tabindex="11" data-l10n-id="presentation_mode">
     103                  <span data-l10n-id="presentation_mode_label">Presentation Mode</span>
     104                </button>
     105
     106                <button id="openFile" class="toolbarButton openFile" title="Open File" tabindex="12" data-l10n-id="open_file">
     107                   <span data-l10n-id="open_file_label">Open</span>
     108                </button>
     109
     110                <button id="print" class="toolbarButton print" title="Print" tabindex="13" data-l10n-id="print">
     111                  <span data-l10n-id="print_label">Print</span>
     112                </button>
     113
     114                <button id="download" class="toolbarButton download" title="Download" tabindex="14" data-l10n-id="download">
     115                  <span data-l10n-id="download_label">Download</span>
     116                </button>
     117                <!-- <div class="toolbarButtonSpacer"></div> -->
     118                <a href="#" id="viewBookmark" class="toolbarButton bookmark" title="Current view (copy or open in new window)" tabindex="15" data-l10n-id="bookmark"><span data-l10n-id="bookmark_label">Current View</span></a>
     119              </div>
     120              <div class="outerCenter">
     121                <div class="innerCenter" id="toolbarViewerMiddle">
     122                  <div class="splitToolbarButton">
     123                    <button class="toolbarButton zoomOut" title="Zoom Out" tabindex="8" data-l10n-id="zoom_out">
     124                      <span data-l10n-id="zoom_out_label">Zoom Out</span>
     125                    </button>
     126                    <div class="splitToolbarButtonSeparator"></div>
     127                    <button class="toolbarButton zoomIn" title="Zoom In" tabindex="9" data-l10n-id="zoom_in">
     128                      <span data-l10n-id="zoom_in_label">Zoom In</span>
     129                     </button>
     130                  </div>
     131                  <span id="scaleSelectContainer" class="dropdownToolbarButton">
     132                     <select id="scaleSelect" title="Zoom" oncontextmenu="return false;" tabindex="10" data-l10n-id="zoom">
     133                      <option id="pageAutoOption" value="auto" selected="selected" data-l10n-id="page_scale_auto">Automatic Zoom</option>
     134                      <option id="pageActualOption" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option>
     135                      <option id="pageFitOption" value="page-fit" data-l10n-id="page_scale_fit">Fit Page</option>
     136                      <option id="pageWidthOption" value="page-width" data-l10n-id="page_scale_width">Full Width</option>
     137                      <option id="customScaleOption" value="custom"></option>
     138                      <option value="0.5">50%</option>
     139                      <option value="0.75">75%</option>
     140                      <option value="1">100%</option>
     141                      <option value="1.25">125%</option>
     142                      <option value="1.5">150%</option>
     143                      <option value="2">200%</option>
     144                    </select>
     145                  </span>
     146                </div>
     147              </div>
     148            </div>
     149          </div>
    126150        </div>
    127         <div id="outlineScrollView" hidden='true'>
    128           <div id="outlineView"></div>
     151
     152        <menu type="context" id="viewerContextMenu">
     153          <menuitem label="First Page" id="first_page"
     154                    data-l10n-id="first_page" ></menuitem>
     155          <menuitem label="Last Page" id="last_page"
     156                    data-l10n-id="last_page" ></menuitem>
     157          <menuitem label="Rotate Counter-Clockwise" id="page_rotate_ccw"
     158                    data-l10n-id="page_rotate_ccw" ></menuitem>
     159          <menuitem label="Rotate Clockwise" id="page_rotate_cw"
     160                    data-l10n-id="page_rotate_cw" ></menuitem>
     161        </menu>
     162
     163        <div id="viewerContainer">
     164          <div id="viewer" contextmenu="viewerContextMenu"></div>
    129165        </div>
    130         <div id="sidebarControls">
    131           <button id="thumbsSwitch" title="Show Thumbnails" onclick="PDFView.switchSidebarView('thumbs')" data-selected>
    132             <img src="#CHEMIN{images/nav-thumbs.svg}" align="top" height="16" alt="Thumbs" />
    133           </button>
    134           <button id="outlineSwitch" title="Show Document Outline" onclick="PDFView.switchSidebarView('outline')" disabled>
    135             <img src="#CHEMIN{images/nav-outline.svg}" align="top" height="16" alt="Document Outline" />
    136           </button>
     166
     167        <div id="loadingBox">
     168          <div id="loading"></div>
     169          <div id="loadingBar"><div class="progress"></div></div>
    137170        </div>
    138       </div>
    139     </div>
    140      
    141171
    142     <div id="loading">Chargement... 0%</div>
    143     <div id="viewer"></div>
     172        <div id="errorWrapper" hidden='true'>
     173          <div id="errorMessageLeft">
     174            <span id="errorMessage"></span>
     175            <button id="errorShowMore" onclick="" oncontextmenu="return false;" data-l10n-id="error_more_info">
     176              More Information
     177            </button>
     178            <button id="errorShowLess" onclick="" oncontextmenu="return false;" data-l10n-id="error_less_info" hidden='true'>
     179              Less Information
     180            </button>
     181          </div>
     182          <div id="errorMessageRight">
     183            <button id="errorClose" oncontextmenu="return false;" data-l10n-id="error_close">
     184              Close
     185            </button>
     186          </div>
     187          <div class="clearBoth"></div>
     188          <textarea id="errorMoreInfo" hidden='true' readonly="readonly"></textarea>
     189        </div>
     190      </div> <!-- mainContainer -->
     191
     192    </div> <!-- outerContainer -->
     193    <div id="printContainer"></div>
    144194  </body>
    145 </html>
     195</html>]</BOUCLE_doc>
  • _plugins_/pdfjs/plugin.xml

    r58441 r66714  
    33        <auteur>[andreasgal->http://mozilla.github.com/pdf.js/], mise en plugin par [erational->http://www.erational.org]</auteur>
    44        <icon>prive/themes/spip/images/pdfjs-32.png</icon>
    5         <version>0.1.0</version>
     5        <version>0.2.0</version>
    66        <etat>experimental</etat>
    77        <description>Lecteur javascript de vos documents pdf via le nouveau mod&egrave;le &lt;lecteurpdfXX&gt;</description>
Note: See TracChangeset for help on using the changeset viewer.