| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193 | 
							- <?php 
 
- include "head.inc"; 
 
- require_once "../dompdf_config.inc.php"; 
 
- function to_bytes($string) {
 
-   $string = strtolower(trim($string));
 
-   
 
-   if (!preg_match("/(.*)([kmgt])/", $string, $matches)) {
 
-     return intval($string);
 
-   }
 
-   
 
-   list($string, $value, $suffix) = $matches;
 
-   switch($suffix) {
 
-     case 't': $value *= 1024;     
 
-     case 'g': $value *= 1024;
 
-     case 'm': $value *= 1024;
 
-     case 'k': $value *= 1024;
 
-   }
 
-   
 
-   return intval($value);
 
- }
 
- ?>
 
- <a name="setup"> </a>
 
- <h2>Font manager</h2>
 
- <ul>
 
-   <li style="list-style-image: url('images/star_02.gif');"><a href="#installed-fonts">Installed fonts</a></li>
 
-   <li style="list-style-image: url('images/star_02.gif');"><a href="#install-fonts">Install new fonts</a></li>
 
- </ul>
 
- <h3 id="installed-fonts">Installed fonts</h3>
 
- <?php 
 
- Font_Metrics::init();
 
- $fonts = Font_Metrics::get_font_families();
 
- $extensions = array("ttf", "afm", "afm.php", "ufm", "ufm.php");
 
- ?>
 
- <button onclick="$('#clear-font-cache-message').load('controller.php?cmd=clear-font-cache', function(){ location.reload(); })">Clear font cache</button>
 
- <span id="clear-font-cache-message"></span>
 
- <table class="setup">
 
-   <tr>
 
-     <th rowspan="2">Font family</th>
 
-     <th rowspan="2">Variants</th>
 
-     <th colspan="6">File versions</th>
 
-   </tr>
 
-   <tr>
 
-     <th>TTF</th>
 
-     <th>AFM</th>
 
-     <th>AFM cache</th>
 
-     <th>UFM</th>
 
-     <th>UFM cache</th>
 
-   </tr>
 
-   <?php foreach($fonts as $family => $variants) { ?>
 
-     <tr>
 
-       <td class="title" rowspan="<?php echo count($variants); ?>">
 
-         <?php 
 
-           echo $family; 
 
-           if ($family == DOMPDF_DEFAULT_FONT) echo ' <strong>(default)</strong>';
 
-         ?>
 
-       </td>
 
-       <?php 
 
-       $i = 0;
 
-       foreach($variants as $name => $path) {
 
-         if ($i > 0) {
 
-           echo "<tr>";
 
-         }
 
-         
 
-         echo "
 
-         <td>
 
-           <strong style='width: 10em;'>$name</strong> : $path<br />
 
-         </td>";
 
-         
 
-         foreach ($extensions as $ext) {
 
-           $v = "";
 
-           $class = "";
 
-           
 
-           if (is_readable("$path.$ext")) {
 
-             // if not cache file
 
-             if (strpos($ext, ".php") === false) {
 
-               $class = "ok";
 
-               $v = $ext;
 
-             }
 
-             
 
-             // cache file
 
-             else {
 
-               // check if old cache format
 
-               $content = file_get_contents("$path.$ext", null, null, null, 50);
 
-               if (strpos($content, '$this->')) {
 
-                 $v = "DEPREC.";
 
-               }
 
-               else {
 
-                 ob_start();
 
-                 $d = include("$path.$ext");
 
-                 ob_end_clean();
 
-                 
 
-                 if ($d == 1)
 
-                   $v = "DEPREC.";
 
-                 else {
 
-                   $class = "ok";
 
-                   $v = $d["_version_"];
 
-                 }
 
-               }
 
-             }
 
-           }
 
-           
 
-           echo "<td style='width: 2em; text-align: center;' class='$class'>$v</td>";
 
-         }
 
-         
 
-         echo "</tr>";
 
-         $i++;
 
-       }
 
-       ?>
 
-   <?php } ?>
 
- </table>
 
- <h3 id="install-fonts">Install new fonts</h3>
 
- <script type="text/javascript">
 
- function checkFileName(form) {
 
-   var fields = {normal: "Normal", bold: "Bold", bold_italic: "Bold italic", italic: "Italic"};
 
-   var pattern = /\.[ot]tf$/i;
 
-   var ok = true;
 
-   if (!form.elements.family.value) {
 
-     alert("The font name is required");
 
-     form.elements.family.focus();
 
-     return false;
 
-   }
 
-   
 
-   $.each(fields, function(key, name){
 
-     var value = form.elements["file["+key+"]"].value;
 
-     if (!value) return;
 
-     
 
-     if (!value.match(pattern)) {
 
-       alert("The font name specified for "+name+" is not a TrueType font");
 
-       ok = false;
 
-       return false;
 
-     }
 
-   });
 
-     
 
-   return ok;
 
- }
 
- </script>
 
- <?php 
 
- if (auth_ok()) {
 
- $max_size = min(to_bytes(ini_get('post_max_size')), to_bytes(ini_get('upload_max_filesize'))); 
 
- ?>
 
- <form name="upload-font" method="post" action="controller.php?cmd=install-font" target="upload-font" enctype="multipart/form-data" onsubmit="return checkFileName(this)">
 
-   <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_size; ?>" />
 
-   
 
-   <table class="setup">
 
-     <tr>
 
-       <td class="title">Name</td>
 
-       <td><input type="text" name="family" /></td>
 
-       <td rowspan="6"><iframe name="upload-font" id="upload-font" style="border: 0; width: 500px;"></iframe></td>
 
-     </tr>
 
-     <tr>
 
-       <td class="title">Normal</td>
 
-       <td><input type="file" name="file[normal]" /></td>
 
-     </tr>
 
-     <tr>
 
-       <td class="title">Bold</td>
 
-       <td><input type="file" name="file[bold]" /></td>
 
-     </tr>
 
-     <tr>
 
-       <td class="title">Bold italic</td>
 
-       <td><input type="file" name="file[bold_italic]" /></td>
 
-     </tr>
 
-     <tr>
 
-       <td class="title">Italic</td>
 
-       <td><input type="file" name="file[italic]" /></td>
 
-     </tr>
 
-     <tr>
 
-       <td></td>
 
-       <td><button>Install !!</button></td>
 
-     </tr>
 
-   </table>
 
- </form>
 
- <?php }
 
- else {
 
-   echo auth_get_link();
 
- } ?>
 
- <?php include("foot.inc"); ?>
 
 
  |