Vtrio - Version 2.0.0

Version Notes

VReport 2.0 is version that is an enhanced version of Vreport 1. In this version we have included PDF exporting option and some minor alignment fixes.

Download this release

Release Info

Developer BrainSINS
Extension Vtrio
Version 2.0.0
Comparing to
See all releases


Code changes from version 1.0.1 to 2.0.0

Files changed (46) hide show
  1. app/code/community/Vtrio/CustomReports/Block/Report/Custom/Grid.php +69 -69
  2. app/code/community/Vtrio/CustomReports/Helper/Data.php +324 -204
  3. app/code/community/Vtrio/CustomReports/controllers/Report/IndexController.php +112 -95
  4. app/code/community/Vtrio/CustomReports/etc/config.xml +1 -1
  5. app/design/adminhtml/default/default/template/vtrio/customreports/gridproduct.phtml +12 -2
  6. app/etc/modules/Vtrio_CustomReports.xml +1 -1
  7. package.xml +8 -8
  8. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courier.php +10 -0
  9. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courierb.php +10 -0
  10. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courierbi.php +10 -0
  11. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courieri.php +10 -0
  12. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helvetica.php +21 -0
  13. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helveticab.php +21 -0
  14. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helveticabi.php +21 -0
  15. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helveticai.php +21 -0
  16. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/symbol.php +20 -0
  17. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/times.php +21 -0
  18. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/timesb.php +21 -0
  19. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/timesbi.php +21 -0
  20. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/timesi.php +21 -0
  21. skin/adminhtml/default/default/vtriocustomreport/fpdf/font/zapfdingbats.php +20 -0
  22. skin/adminhtml/default/default/vtriocustomreport/fpdf/fpdf.php +1898 -0
  23. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1250.map +251 -0
  24. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1251.map +255 -0
  25. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1252.map +251 -0
  26. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1253.map +239 -0
  27. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1254.map +249 -0
  28. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1255.map +233 -0
  29. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1257.map +244 -0
  30. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1258.map +247 -0
  31. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp874.map +225 -0
  32. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-1.map +256 -0
  33. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-11.map +248 -0
  34. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-15.map +256 -0
  35. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-16.map +256 -0
  36. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-2.map +256 -0
  37. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-4.map +256 -0
  38. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-5.map +256 -0
  39. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-7.map +250 -0
  40. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-9.map +256 -0
  41. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/koi8-r.map +256 -0
  42. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/koi8-u.map +256 -0
  43. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/makefont.php +451 -0
  44. skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/ttfparser.php +723 -0
  45. skin/adminhtml/default/default/vtriocustomreport/fpdf/mc_table.php +107 -0
  46. skin/adminhtml/default/default/vtriocustomreport/images/vreport_logo.png +0 -0
app/code/community/Vtrio/CustomReports/Block/Report/Custom/Grid.php CHANGED
@@ -1,69 +1,69 @@
1
- <?php
2
-
3
-
4
- class Vtrio_CustomReports_Block_Report_Custom_Grid extends Mage_Adminhtml_Block_Report_Grid
5
- {
6
-
7
- protected $_subReportSize = 0;
8
-
9
- /**
10
- * Initialize Grid settings
11
- *
12
- */
13
- public function __construct()
14
- {
15
- parent::__construct();
16
- $this->setFilterVisibility(true);
17
- $this->setPagerVisibility(true);
18
- $this->setId('customReport');
19
- $this->setSaveParametersInSession(true);
20
- $this->setUseAjax(true);
21
- $this->setDefaultLimit(1);
22
- $this->setTemplate('vtrio/customreports/gridproduct.phtml');
23
- }
24
-
25
- protected function _prepareColumns()
26
- {
27
- $this->addColumn('name', array(
28
- 'header' => Mage::helper('reports')->__('Product Name'),
29
- 'index' => 'sales_items',
30
- 'align' => 'right',
31
- 'width' => '300px',
32
- 'total' => 'sum',
33
- 'type' => 'number'
34
- ));
35
-
36
- $this->addColumn('ordered_qty', array(
37
- 'header' => Mage::helper('reports')->__('SKU'),
38
- 'width' => '100px',
39
- 'align' => 'right',
40
- 'index' => 'sales_total',
41
- 'total' => 'sum',
42
- 'type' => 'number'
43
- ));
44
- $this->addColumn('invoiced_qty', array(
45
- 'header' => Mage::helper('reports')->__('Total Price'),
46
- 'width' => '80px',
47
- 'align' => 'right',
48
- 'index' => 'invoiced',
49
- 'total' => 'sum',
50
- 'type' => 'number'
51
- ));
52
- $this->addColumn('refunded_qty', array(
53
- 'header' => Mage::helper('reports')->__('Quantity Ordered'),
54
- 'width' => '80px',
55
- 'align' => 'right',
56
- 'index' => 'refunded',
57
- 'total' => 'sum',
58
- 'type' => 'number'
59
- ));
60
-
61
- return parent::_prepareColumns();
62
- }
63
-
64
- public function getGridUrl()
65
- {
66
- return $this->getUrl('*/*/grid', array('_current' => true));
67
- }
68
-
69
- }
1
+ <?php
2
+
3
+
4
+ class Vtrio_CustomReports_Block_Report_Custom_Grid extends Mage_Adminhtml_Block_Report_Grid
5
+ {
6
+
7
+ protected $_subReportSize = 0;
8
+
9
+ /**
10
+ * Initialize Grid settings
11
+ *
12
+ */
13
+ public function __construct()
14
+ {
15
+ parent::__construct();
16
+ $this->setFilterVisibility(true);
17
+ $this->setPagerVisibility(true);
18
+ $this->setId('customReport');
19
+ $this->setSaveParametersInSession(true);
20
+ $this->setUseAjax(true);
21
+ $this->setDefaultLimit(1);
22
+ $this->setTemplate('vtrio/customreports/gridproduct.phtml');
23
+ }
24
+
25
+ protected function _prepareColumns()
26
+ {
27
+ $this->addColumn('name', array(
28
+ 'header' => Mage::helper('reports')->__('Product Name'),
29
+ 'index' => 'sales_items',
30
+ 'align' => 'right',
31
+ 'width' => '300px',
32
+ 'total' => 'sum',
33
+ 'type' => 'number'
34
+ ));
35
+
36
+ $this->addColumn('ordered_qty', array(
37
+ 'header' => Mage::helper('reports')->__('SKU'),
38
+ 'width' => '100px',
39
+ 'align' => 'right',
40
+ 'index' => 'sales_total',
41
+ 'total' => 'sum',
42
+ 'type' => 'number'
43
+ ));
44
+ $this->addColumn('invoiced_qty', array(
45
+ 'header' => Mage::helper('reports')->__('Total Price'),
46
+ 'width' => '80px',
47
+ 'align' => 'right',
48
+ 'index' => 'invoiced',
49
+ 'total' => 'sum',
50
+ 'type' => 'number'
51
+ ));
52
+ $this->addColumn('refunded_qty', array(
53
+ 'header' => Mage::helper('reports')->__('Quantity Ordered'),
54
+ 'width' => '80px',
55
+ 'align' => 'right',
56
+ 'index' => 'refunded',
57
+ 'total' => 'sum',
58
+ 'type' => 'number'
59
+ ));
60
+
61
+ return parent::_prepareColumns();
62
+ }
63
+
64
+ public function getGridUrl()
65
+ {
66
+ return $this->getUrl('*/*/grid', array('_current' => true));
67
+ }
68
+
69
+ }
app/code/community/Vtrio/CustomReports/Helper/Data.php CHANGED
@@ -1,204 +1,324 @@
1
- <?php
2
-
3
- class Vtrio_CustomReports_Helper_Data extends Mage_Core_Helper_Abstract
4
- {
5
-
6
- public function getNewstoreids()
7
- {
8
- $object = new Vtrio_CustomReports_Block_Report_Custom;
9
- $storeidarr = $object->Storeparam();
10
-
11
- return $storeidarr;
12
- }
13
-
14
- public function exportReportToCSV($reportArr,$report_period)
15
- {
16
- $headers = array('Period', 'Product Name', 'SKU', 'Total Price', 'Quantity Ordered', 'Billing Address', 'Shipping Address');
17
- $fp = fopen('php://output', 'w');
18
- if ($fp && $reportArr) {
19
- //echo "in";
20
- header('Content-Type: text/csv');
21
- header('Content-Disposition: attachment; filename="custom_report.csv"');
22
- header('Pragma: no-cache');
23
- header('Expires: 0');
24
- fputcsv($fp, $headers);
25
- foreach ($reportArr as $arr_row) {
26
- $values = array();
27
- $totalQty = $totalQty+$arr_row['qty_ordered'];
28
- $totalPrice = $totalPrice+$arr_row['price'];
29
- $shippingAddr = $arr_row['shipping_address'];
30
- $billingAddr = $arr_row['billing_address'];
31
- if($report_period == 'month'){
32
- $dateVal1 = explode("-",$arr_row['created_at']);
33
- $createdDate = $dateVal1[1]."/".$dateVal1[0];
34
- }else if($report_period == 'year'){
35
- $dateVal1 = explode("-",$arr_row['created_at']);
36
- $createdDate = $dateVal1[0];
37
- }else{
38
- $date = date_create($arr_row['created_at']);
39
- $createdDate = date_format($date,"M d, Y");
40
- }
41
- array_push($values,$createdDate,$arr_row['name'],$arr_row['sku'],number_format($arr_row['price'], 2, '.', ''),number_format($arr_row['qty_ordered'], 2, '.', ''),$billingAddr,$shippingAddr);
42
- fputcsv($fp, $values);
43
- }
44
- $values = array();
45
- array_push($values,'','','','','');
46
- fputcsv($fp, $values);
47
- $values = array();
48
- array_push($values,'','Total','',number_format($totalPrice, 2, '.', ''),number_format($totalQty, 2, '.', ''));
49
- fputcsv($fp, $values);
50
-
51
-
52
-
53
- die;
54
-
55
- }
56
-
57
- else {
58
-
59
- echo "no result";
60
-
61
- }
62
-
63
- }
64
-
65
- public function nestedSubCategory($subcatId,$space,$selectedId = null)
66
- {
67
- $children = Mage::getModel('catalog/category')->getCategories($subcatId);
68
- $helper = Mage::helper('customreports');
69
- $spaceVal = "";
70
- if(count($children)>0){
71
- for($i=1;$i<=$space;$i++){
72
- $spaceVal .= "&nbsp;";
73
- }
74
- foreach ($children as $subCategory) {
75
- $selectedSubCategory = ($selectedId == $subCategory->getId())?'selected = true':'';
76
- $id = $subCategory->getId();
77
- $name = $subCategory->getName();
78
- $option .= "<option value='$id' $selectedSubCategory>$spaceVal $name</option>";
79
- $option .= $helper->nestedSubCategory($id,$space+3,$selectedId);
80
- }
81
- }else{
82
- return $option;
83
- }
84
- return $option;
85
- }
86
-
87
- public function paginationCtrl($catId,$subCatId,$from,$to,$report_period,$store_ids,$order_statuses,$limit,$page){
88
-
89
- $model = Mage::getModel('customreports/collection');
90
- $reportArrCount = $model->getReportCount($catId,$subCatId,$from,$to,$report_period,$store_ids,$order_statuses);
91
- foreach ($reportArrCount as $reportArrCountVal) {
92
- $reportCount = $reportArrCountVal['totalCount'];
93
- }
94
-
95
- $limitConf = array('20','30','50','100');
96
-
97
- $targetpage = Mage::helper('core/url')->getCurrentUrl();
98
- $stages = 1;
99
-
100
- if($page){
101
- $start = ($page - 1) * $limit;
102
- }else{
103
- $start = 0;
104
- }
105
-
106
- // Initial page num setup
107
- if ($page == 0){
108
- $page = 1;
109
- }
110
- $prev = $page - 1;
111
- $next = $page + 1;
112
- $lastpage = ceil($reportCount/$limit);
113
- $LastPagem1 = $lastpage - 1;
114
-
115
-
116
- $paginate = "<div class='vtrioCustPagination'>";
117
- if($lastpage > 1){
118
- // Previous
119
- if ($page > 1){
120
- $paginate .= "<a href='#' onclick='setPage($prev)'>previous</a>";
121
- }else{
122
- $paginate .= "<span class='disabled'>previous</span>";
123
- }
124
- // Pages
125
- if ($lastpage < 7 + ($stages * 2)){ // Not enough pages to breaking it up
126
- for ($counter = 1; $counter <= $lastpage; $counter++){
127
- if ($counter == $page){
128
- $paginate .= "<span class='current'>$counter</span>";
129
- }else{
130
- $paginate .= "<a href='#' onclick='setPage($counter)'>$counter</a>";
131
- }
132
- }
133
- }else if($lastpage > 5 + ($stages * 2)){ // Enough pages to hide a few?
134
- // Beginning only hide later pages
135
- if($page < 1 + ($stages * 2)){
136
- for ($counter = 1; $counter < 4 + ($stages * 2); $counter++){
137
- if ($counter == $page){
138
- $paginate .= "<span class='current'>$counter</span>";
139
- }else{
140
- $paginate .= "<a href='#' onclick='setPage($counter)'>$counter</a>";
141
- }
142
- }
143
- $paginate .= "...";
144
- $paginate .= "<a href='#' onclick='setPage($LastPagem)'>$LastPagem1</a>";
145
- $paginate .= "<a href='#' onclick='setPage($lastpage)'>$lastpage</a>";
146
- }else if($lastpage - ($stages * 2) > $page && $page > ($stages * 2)) {// Middle hide some front and some back
147
-
148
- $paginate .= "<a href='#' onclick='setPage(1)'>1</a>";
149
- $paginate .= "<a href='#' onclick='setPage(2)'>2</a>";
150
- $paginate .= "...";
151
- for ($counter = $page - $stages; $counter <= $page + $stages; $counter++){
152
- if ($counter == $page){
153
- $paginate .= "<span class='current'>$counter</span>";
154
- }else{
155
- $paginate .= "<a href='#' onclick='setPage($counter)'>$counter</a>";
156
- }
157
- }
158
- $paginate .= "...";
159
- $paginate .= "<a href='#' onclick='setPage($LastPagem)'>$LastPagem1</a>";
160
- $paginate .= "<a href='#' onclick='setPage($lastpage)'>$lastpage</a>";
161
- }else{// End only hide early pages
162
- $paginate .= "<a href='#' onclick='setPage(1)'>1</a>";
163
- $paginate .= "<a href='#' onclick='setPage(2)'>2</a>";
164
- $paginate .= "...";
165
- for ($counter = $lastpage - (2 + ($stages * 2)); $counter <= $lastpage; $counter++){
166
- if ($counter == $page){
167
- $paginate.= "<span class='current'>$counter</span>";
168
- }else{
169
- $paginate.= "<a href='#' onclick='setPage($counter)'>$counter</a>";
170
- }
171
- }
172
- }
173
- }
174
- // Next
175
- if ($page < $counter - 1){
176
- $paginate .= "<a href='#' onclick='setPage($next)'>next</a>";
177
- }else{
178
- $paginate .= "<span class='disabled'>next</span>";
179
- }
180
- $viewPerPage = "&nbsp;&nbsp; View <select name='limit' onchange='getPaginationLimit(this)'>";
181
- foreach($limitConf as $limits){
182
- $selected = ($limits == $limit)?'selected=true':'';
183
- $viewPerPage .= "<option value='$limits' $selected>$limits</option>";
184
- }
185
- $viewPerPage .= "</select> per page ";
186
-
187
- $paginate .= $viewPerPage ." | &nbsp;&nbsp;";
188
- }
189
-
190
- if($reportCount){
191
- $paginate .= " Total ".$reportCount." records found </div>";
192
- }else{
193
- //$paginate .= " No records found. </div>";
194
- $paginate .= "</div>";
195
- }
196
-
197
- $returnVal = array();
198
- $returnVal['start'] = $start;
199
- $returnVal['reportCount'] = $reportCount;
200
- $returnVal['paginationLink'] = $paginate;
201
-
202
- return $returnVal;
203
- }
204
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Vtrio_CustomReports_Helper_Data extends Mage_Core_Helper_Abstract
4
+ {
5
+
6
+ public function getNewstoreids()
7
+ {
8
+ $object = new Vtrio_CustomReports_Block_Report_Custom;
9
+ $storeidarr = $object->Storeparam();
10
+
11
+ return $storeidarr;
12
+ }
13
+
14
+ public function exportReportToCSV($reportArr,$report_period)
15
+ {
16
+ $headers = array('Period', 'Product Name', 'SKU', 'Total Price', 'Quantity Ordered', 'Billing Address', 'Shipping Address');
17
+ $fp = fopen('php://output', 'w');
18
+ if ($fp && $reportArr) {
19
+ //echo "in";
20
+ header('Content-Type: text/csv');
21
+ header('Content-Disposition: attachment; filename="custom_report.csv"');
22
+ header('Pragma: no-cache');
23
+ header('Expires: 0');
24
+ fputcsv($fp, $headers);
25
+ foreach ($reportArr as $arr_row) {
26
+ $values = array();
27
+ $totalQty = $totalQty+$arr_row['qty_ordered'];
28
+ $totalPrice = $totalPrice+$arr_row['price'];
29
+ $shippingAddr = $arr_row['shipping_address'];
30
+ $billingAddr = $arr_row['billing_address'];
31
+ if($report_period == 'month'){
32
+ $dateVal1 = explode("-",$arr_row['created_at']);
33
+ $createdDate = $dateVal1[1]."/".$dateVal1[0];
34
+ }else if($report_period == 'year'){
35
+ $dateVal1 = explode("-",$arr_row['created_at']);
36
+ $createdDate = $dateVal1[0];
37
+ }else{
38
+ $date = date_create($arr_row['created_at']);
39
+ $createdDate = date_format($date,"M d, Y");
40
+ }
41
+ array_push($values,$createdDate,$arr_row['name'],$arr_row['sku'],number_format($arr_row['price'], 2, '.', ''),number_format($arr_row['qty_ordered'], 2, '.', ''),$billingAddr,$shippingAddr);
42
+ fputcsv($fp, $values);
43
+ }
44
+ $values = array();
45
+ array_push($values,'','','','','');
46
+ fputcsv($fp, $values);
47
+ $values = array();
48
+ array_push($values,'','Total','',number_format($totalPrice, 2, '.', ''),number_format($totalQty, 2, '.', ''));
49
+ fputcsv($fp, $values);
50
+
51
+
52
+
53
+ die;
54
+
55
+ }
56
+
57
+ else {
58
+
59
+ echo "no result";
60
+
61
+ }
62
+
63
+ }
64
+
65
+ public function nestedSubCategory($subcatId,$space,$selectedId = null)
66
+ {
67
+ $children = Mage::getModel('catalog/category')->getCategories($subcatId);
68
+ $helper = Mage::helper('customreports');
69
+ $spaceVal = "";
70
+ if(count($children)>0){
71
+ for($i=1;$i<=$space;$i++){
72
+ $spaceVal .= "&nbsp;";
73
+ }
74
+ foreach ($children as $subCategory) {
75
+ $selectedSubCategory = ($selectedId == $subCategory->getId())?'selected = true':'';
76
+ $id = $subCategory->getId();
77
+ $name = $subCategory->getName();
78
+ $option .= "<option value='$id' $selectedSubCategory>$spaceVal $name</option>";
79
+ $option .= $helper->nestedSubCategory($id,$space+3,$selectedId);
80
+ }
81
+ }else{
82
+ return $option;
83
+ }
84
+ return $option;
85
+ }
86
+
87
+ public function paginationCtrl($catId,$subCatId,$from,$to,$report_period,$store_ids,$order_statuses,$limit,$page){
88
+
89
+ $model = Mage::getModel('customreports/collection');
90
+ $reportArrCount = $model->getReportCount($catId,$subCatId,$from,$to,$report_period,$store_ids,$order_statuses);
91
+ foreach ($reportArrCount as $reportArrCountVal) {
92
+ $reportCount = $reportArrCountVal['totalCount'];
93
+ }
94
+
95
+ $limitConf = array('20','30','50','100');
96
+
97
+ $targetpage = Mage::helper('core/url')->getCurrentUrl();
98
+ $stages = 1;
99
+
100
+ if($page){
101
+ $start = ($page - 1) * $limit;
102
+ }else{
103
+ $start = 0;
104
+ }
105
+
106
+ // Initial page num setup
107
+ if ($page == 0){
108
+ $page = 1;
109
+ }
110
+ $prev = $page - 1;
111
+ $next = $page + 1;
112
+ $lastpage = ceil($reportCount/$limit);
113
+ $LastPagem1 = $lastpage - 1;
114
+
115
+
116
+ $paginate = "<div class='vtrioCustPagination'>";
117
+ if($lastpage > 1){
118
+ // Previous
119
+ if ($page > 1){
120
+ $paginate .= "<a href='#' onclick='setPage($prev)'>previous</a>";
121
+ }else{
122
+ $paginate .= "<span class='disabled'>previous</span>";
123
+ }
124
+ // Pages
125
+ if ($lastpage < 7 + ($stages * 2)){ // Not enough pages to breaking it up
126
+ for ($counter = 1; $counter <= $lastpage; $counter++){
127
+ if ($counter == $page){
128
+ $paginate .= "<span class='current'>$counter</span>";
129
+ }else{
130
+ $paginate .= "<a href='#' onclick='setPage($counter)'>$counter</a>";
131
+ }
132
+ }
133
+ }else if($lastpage > 5 + ($stages * 2)){ // Enough pages to hide a few?
134
+ // Beginning only hide later pages
135
+ if($page < 1 + ($stages * 2)){
136
+ for ($counter = 1; $counter < 4 + ($stages * 2); $counter++){
137
+ if ($counter == $page){
138
+ $paginate .= "<span class='current'>$counter</span>";
139
+ }else{
140
+ $paginate .= "<a href='#' onclick='setPage($counter)'>$counter</a>";
141
+ }
142
+ }
143
+ $paginate .= "...";
144
+ $paginate .= "<a href='#' onclick='setPage($LastPagem)'>$LastPagem1</a>";
145
+ $paginate .= "<a href='#' onclick='setPage($lastpage)'>$lastpage</a>";
146
+ }else if($lastpage - ($stages * 2) > $page && $page > ($stages * 2)) {// Middle hide some front and some back
147
+
148
+ $paginate .= "<a href='#' onclick='setPage(1)'>1</a>";
149
+ $paginate .= "<a href='#' onclick='setPage(2)'>2</a>";
150
+ $paginate .= "...";
151
+ for ($counter = $page - $stages; $counter <= $page + $stages; $counter++){
152
+ if ($counter == $page){
153
+ $paginate .= "<span class='current'>$counter</span>";
154
+ }else{
155
+ $paginate .= "<a href='#' onclick='setPage($counter)'>$counter</a>";
156
+ }
157
+ }
158
+ $paginate .= "...";
159
+ $paginate .= "<a href='#' onclick='setPage($LastPagem)'>$LastPagem1</a>";
160
+ $paginate .= "<a href='#' onclick='setPage($lastpage)'>$lastpage</a>";
161
+ }else{// End only hide early pages
162
+ $paginate .= "<a href='#' onclick='setPage(1)'>1</a>";
163
+ $paginate .= "<a href='#' onclick='setPage(2)'>2</a>";
164
+ $paginate .= "...";
165
+ for ($counter = $lastpage - (2 + ($stages * 2)); $counter <= $lastpage; $counter++){
166
+ if ($counter == $page){
167
+ $paginate.= "<span class='current'>$counter</span>";
168
+ }else{
169
+ $paginate.= "<a href='#' onclick='setPage($counter)'>$counter</a>";
170
+ }
171
+ }
172
+ }
173
+ }
174
+ // Next
175
+ if ($page < $counter - 1){
176
+ $paginate .= "<a href='#' onclick='setPage($next)'>next</a>";
177
+ }else{
178
+ $paginate .= "<span class='disabled'>next</span>";
179
+ }
180
+ $viewPerPage = "&nbsp;&nbsp; View <select name='limit' onchange='getPaginationLimit(this)'>";
181
+ foreach($limitConf as $limits){
182
+ $selected = ($limits == $limit)?'selected=true':'';
183
+ $viewPerPage .= "<option value='$limits' $selected>$limits</option>";
184
+ }
185
+ $viewPerPage .= "</select> per page ";
186
+
187
+ $paginate .= $viewPerPage ." | &nbsp;&nbsp;";
188
+ }
189
+
190
+ if($reportCount){
191
+ $paginate .= " Total ".$reportCount." records found </div>";
192
+ }else{
193
+ //$paginate .= " No records found. </div>";
194
+ $paginate .= "</div>";
195
+ }
196
+
197
+ $returnVal = array();
198
+ $returnVal['start'] = $start;
199
+ $returnVal['reportCount'] = $reportCount;
200
+ $returnVal['paginationLink'] = $paginate;
201
+
202
+ return $returnVal;
203
+ }
204
+
205
+
206
+ public function exportReportToPDF($reportArr,$report_period)
207
+ {
208
+ require_once(Mage::getBaseDir().DS.'skin'.DS.'adminhtml'.DS.'default'.DS.'default'.DS.'vtriocustomreport'.DS.'fpdf'.DS.'fpdf.php');
209
+ $logo = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN).'adminhtml/default/default/vtriocustomreport/images/vreport_logo.png';
210
+ $pdf = new FPDF();
211
+
212
+
213
+
214
+ $pdf->AddPage('L');
215
+ $pdf->SetFont('Arial','B',24);
216
+
217
+ // Colors, line width and bold font
218
+ $pdf->SetFillColor(69,69,69);
219
+ $pdf->SetDrawColor(255,255,255);
220
+ $pdf->Cell(275,15,'Sales Report','LR',0,'C');
221
+ $pdf->SetTextColor(255);
222
+
223
+ $pdf->SetLineWidth(0.3);
224
+ $pdf->SetFont('Arial','B',11);
225
+ // Logo
226
+ $pdf->Image($logo,10,6,30);
227
+ $pdf->Ln(20);
228
+ $pdf->SetDrawColor(69,69,69);
229
+ $pdf->SetDrawColor(255,255,255);
230
+ $pdf->Cell($w[0],28,'..........','LR',0,'L',$fill);
231
+
232
+ // Line break
233
+ $pdf->Ln(10);
234
+
235
+
236
+ // Header
237
+ $w = array(5, 28, 65, 37, 20, 20, 50,75,60);
238
+ $header = array('#','Period', 'Product Name', 'SKU', 'Tot Price', 'Q.Ordered', 'Billing Address', 'Shipping Address');
239
+ for($i=0;$i<count($header);$i++)
240
+ $pdf->Cell($w[$i],12,$header[$i],1,0,'C',true);
241
+ $pdf->Ln();
242
+ // Color and font restoration
243
+ $pdf->SetFillColor(224,235,255);
244
+ $pdf->SetTextColor(0);
245
+ $pdf->SetFont('');
246
+ // Data
247
+ $fill = false;
248
+
249
+
250
+ // Closing line
251
+
252
+
253
+ $fp = fopen('php://output', 'w');
254
+ if ($fp && $reportArr) {
255
+
256
+
257
+ $indexVal = 0;
258
+
259
+
260
+ foreach ($reportArr as $arr_row) {
261
+ $x = $pdf->GetX();
262
+
263
+
264
+ $values = array();
265
+ $indexVal++;
266
+ $totalQty = $totalQty+$arr_row['qty_ordered'];
267
+ $totalPrice = $totalPrice+$arr_row['price'];
268
+ $shippingAddr = $arr_row['shipping_address'];
269
+ $billingAddr = $arr_row['billing_address'];
270
+ if($report_period == 'month'){
271
+ $dateVal1 = explode("-",$arr_row['created_at']);
272
+ $createdDate = $dateVal1[1]."/".$dateVal1[0];
273
+ }else if($report_period == 'year'){
274
+ $dateVal1 = explode("-",$arr_row['created_at']);
275
+ $createdDate = $dateVal1[0];
276
+ }else{
277
+ $date = date_create($arr_row['created_at']);
278
+ $createdDate = date_format($date,"M d, Y");
279
+ }
280
+ array_push($values,$createdDate,$arr_row['name'],$arr_row['sku'],number_format($arr_row['price'], 2, '.', ''),number_format($arr_row['qty_ordered'], 2, '.', ''),$billingAddr,$shippingAddr);
281
+
282
+
283
+ $pdf->Cell($w[0],28,$indexVal,'LR',0,'L',$fill);
284
+ $pdf->Cell($w[1],28,$createdDate,'LR',0,'L',$fill);
285
+ $pdf->Cell($w[2],28, substr($arr_row['name'],0,50),'LR',0,'L',$fill);
286
+ $pdf->Cell($w[3],28,$arr_row['sku'],'LR',0,'L',$fill);
287
+ $pdf->Cell($w[4],28,number_format($arr_row['price'], 2, '.', ''),'LR',0,'L',$fill);
288
+
289
+ $pdf->Cell($w[5],28,number_format($arr_row['qty_ordered'], 2, '.', ''),'LR',0,'L',$fill);
290
+
291
+ $y = $pdf->GetY();
292
+ $pdf->SetXY($x + 175, $y);
293
+ $pdf->MultiCell($w[6],7,$billingAddr,0,'L',$fill);
294
+ $pdf->SetXY($x + 225, $y);
295
+ $pdf->MultiCell($w[7],7,$shippingAddr,0,'L',$fill);
296
+ $pdf->Ln();
297
+ $fill = !$fill;
298
+ }
299
+ $pdf->Ln();
300
+ $pdf->Cell($w[0],28,'','LR',0,'L',$fill);
301
+ $pdf->Cell($w[1],28,'','LR',0,'L',$fill);
302
+ $pdf->Cell($w[2],28,'Total' ,'LR',0,'L',$fill);
303
+ $pdf->Cell($w[3],28,'','LR',0,'L',$fill);
304
+ $pdf->Cell($w[4],28,number_format($totalPrice, 2, '.', ''),'LR',0,'L',$fill);
305
+
306
+ $pdf->Cell($w[5],28,number_format($totalQty, 2, '.', ''),'LR',0,'L',$fill);
307
+ // array_push($values,'','Total','',number_format($totalPrice, 2, '.', ''),number_format($totalQty, 2, '.', ''));
308
+
309
+ $pdf->Cell(array_sum($w),0,'','T');
310
+ $pdf->Output();
311
+
312
+
313
+ die;
314
+
315
+ }
316
+
317
+ else {
318
+
319
+ echo "no result";
320
+
321
+ }
322
+
323
+ }
324
+ }
app/code/community/Vtrio/CustomReports/controllers/Report/IndexController.php CHANGED
@@ -1,95 +1,112 @@
1
- <?php
2
-
3
- class Vtrio_CustomReports_Report_IndexController extends Mage_Adminhtml_Controller_Action
4
- {
5
-
6
- protected function _isAllowed()
7
- {
8
- $act = $this->getRequest()->getActionName();
9
- if (!$act)
10
- $act = 'default';
11
- switch ($act) {
12
- case 'default':
13
- break;
14
- default:
15
- return Mage::getSingleton('admin/session')->isAllowed('report/customreport');
16
- break;
17
- }
18
- }
19
-
20
- public function _initAction()
21
- {
22
- $act = $this->getRequest()->getActionName();
23
- if (!$act)
24
- $act = 'default';
25
- if ($act == 'default')
26
- {
27
- $this->loadLayout()
28
- ->_addBreadcrumb(Mage::helper('customreports')->__('Reports'), Mage::helper('customreports')->__('Reports'));
29
- }else{
30
- $this->loadLayout()
31
- ->_addBreadcrumb(Mage::helper('customreports')->__('Reports'), Mage::helper('customreports')->__('Reports'));
32
- }
33
- return $this;
34
- }
35
-
36
-
37
- public function customReportAction()
38
- {
39
- $this->_title($this->__('Custom Reports'));
40
- $this->_initAction()
41
- ->_setActiveMenu('report/customreport')
42
- ->_addBreadcrumb(Mage::helper('customreports')->__('Custom Report'), Mage::helper('customreports')->__('Custom Report'))
43
- ->_addContent($this->getLayout()->createBlock('customreports/report_custom'))
44
- ->renderLayout();
45
- }
46
-
47
- public function gridAction()
48
- {
49
- $this->loadLayout();
50
- $this->renderLayout();
51
- $this->getResponse()->setBody(
52
- $this->getLayout()->createBlock('customreports/report_custom_grid')->toHtml()
53
- );
54
- }
55
-
56
- public function getsubcategoryAction()
57
- {
58
- $catId = $this->getRequest()->getParam('catId');
59
- $helper = Mage::helper('customreports');
60
- $children = Mage::getModel('catalog/category')->getCategories($catId);
61
- ?>
62
- <select class=" select" title="Period" name="subcategory" id="subcategory">
63
- <option value="">----------------------Please Select----------------------</option>
64
- <?php
65
- foreach ($children as $subCategory) {
66
- $selectedSubCategory = ($subCatId == $subCategory->getId())?'selected = true':'';
67
- $id = $subCategory->getId();
68
- $name = $subCategory->getName();
69
- $option .="<option value='$id' $selectedSubCategory >$name</option>";
70
- $option .= $helper->nestedSubCategory($id,3);
71
- }
72
- echo $option;
73
- ?>
74
- </select>
75
- <?php
76
- }
77
-
78
- public function csv_exportAction(){
79
-
80
- $catId = $this->getRequest()->getParam('catId');
81
- $subCatId = $this->getRequest()->getParam('subCatId');
82
- $from = $this->getRequest()->getParam('from');
83
- $to = $this->getRequest()->getParam('to');
84
- $report_period = $this->getRequest()->getParam('period');
85
- $store_ids = $this->getRequest()->getParam('store_id');
86
- $order_statuses= $this->getRequest()->getParam('order_statuses');
87
-
88
- $model = Mage::getModel('customreports/collection');
89
- $reportArr = $model->getReportCSV($catId,$subCatId,$from,$to,$report_period,$store_ids,$order_statuses);
90
-
91
- $helper = Mage::helper('customreports');
92
- $returnResult = $helper->exportReportToCSV($reportArr,$report_period);
93
- }
94
-
95
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Vtrio_CustomReports_Report_IndexController extends Mage_Adminhtml_Controller_Action
4
+ {
5
+
6
+ protected function _isAllowed()
7
+ {
8
+ $act = $this->getRequest()->getActionName();
9
+ if (!$act)
10
+ $act = 'default';
11
+ switch ($act) {
12
+ case 'default':
13
+ break;
14
+ default:
15
+ return Mage::getSingleton('admin/session')->isAllowed('report/customreport');
16
+ break;
17
+ }
18
+ }
19
+
20
+ public function _initAction()
21
+ {
22
+ $act = $this->getRequest()->getActionName();
23
+ if (!$act)
24
+ $act = 'default';
25
+ if ($act == 'default')
26
+ {
27
+ $this->loadLayout()
28
+ ->_addBreadcrumb(Mage::helper('customreports')->__('Reports'), Mage::helper('customreports')->__('Reports'));
29
+ }else{
30
+ $this->loadLayout()
31
+ ->_addBreadcrumb(Mage::helper('customreports')->__('Reports'), Mage::helper('customreports')->__('Reports'));
32
+ }
33
+ return $this;
34
+ }
35
+
36
+
37
+ public function customReportAction()
38
+ {
39
+ $this->_title($this->__('Custom Reports'));
40
+ $this->_initAction()
41
+ ->_setActiveMenu('report/customreport')
42
+ ->_addBreadcrumb(Mage::helper('customreports')->__('Custom Report'), Mage::helper('customreports')->__('Custom Report'))
43
+ ->_addContent($this->getLayout()->createBlock('customreports/report_custom'))
44
+ ->renderLayout();
45
+ }
46
+
47
+ public function gridAction()
48
+ {
49
+ $this->loadLayout();
50
+ $this->renderLayout();
51
+ $this->getResponse()->setBody(
52
+ $this->getLayout()->createBlock('customreports/report_custom_grid')->toHtml()
53
+ );
54
+ }
55
+
56
+ public function getsubcategoryAction()
57
+ {
58
+ $catId = $this->getRequest()->getParam('catId');
59
+ $helper = Mage::helper('customreports');
60
+ $children = Mage::getModel('catalog/category')->getCategories($catId);
61
+ ?>
62
+ <select class=" select" title="Period" name="subcategory" id="subcategory">
63
+ <option value="">----------------------Please Select----------------------</option>
64
+ <?php
65
+ foreach ($children as $subCategory) {
66
+ $selectedSubCategory = ($subCatId == $subCategory->getId())?'selected = true':'';
67
+ $id = $subCategory->getId();
68
+ $name = $subCategory->getName();
69
+ $option .="<option value='$id' $selectedSubCategory >$name</option>";
70
+ $option .= $helper->nestedSubCategory($id,3);
71
+ }
72
+ echo $option;
73
+ ?>
74
+ </select>
75
+ <?php
76
+ }
77
+
78
+ public function csv_exportAction(){
79
+
80
+ $catId = $this->getRequest()->getParam('catId');
81
+ $subCatId = $this->getRequest()->getParam('subCatId');
82
+ $from = $this->getRequest()->getParam('from');
83
+ $to = $this->getRequest()->getParam('to');
84
+ $report_period = $this->getRequest()->getParam('period');
85
+ $store_ids = $this->getRequest()->getParam('store_id');
86
+ $order_statuses= $this->getRequest()->getParam('order_statuses');
87
+
88
+ $model = Mage::getModel('customreports/collection');
89
+ $reportArr = $model->getReportCSV($catId,$subCatId,$from,$to,$report_period,$store_ids,$order_statuses);
90
+
91
+ $helper = Mage::helper('customreports');
92
+ $returnResult = $helper->exportReportToCSV($reportArr,$report_period);
93
+ }
94
+
95
+ public function pdf_exportAction(){
96
+
97
+ $catId = $this->getRequest()->getParam('catId');
98
+ $subCatId = $this->getRequest()->getParam('subCatId');
99
+ $from = $this->getRequest()->getParam('from');
100
+ $to = $this->getRequest()->getParam('to');
101
+ $report_period = $this->getRequest()->getParam('period');
102
+ $store_ids = $this->getRequest()->getParam('store_id');
103
+ $order_statuses= $this->getRequest()->getParam('order_statuses');
104
+
105
+ $model = Mage::getModel('customreports/collection');
106
+ $reportArr = $model->getReportCSV($catId,$subCatId,$from,$to,$report_period,$store_ids,$order_statuses);
107
+
108
+ $helper = Mage::helper('customreports');
109
+ $returnResult = $helper->exportReportToPDF($reportArr,$report_period);
110
+ }
111
+
112
+ }
app/code/community/Vtrio/CustomReports/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <Vtrio_CustomReports>
5
- <version>1.0.1</version>
6
  </Vtrio_CustomReports>
7
  </modules>
8
  <global>
2
  <config>
3
  <modules>
4
  <Vtrio_CustomReports>
5
+ <version>2.0.0</version>
6
  </Vtrio_CustomReports>
7
  </modules>
8
  <global>
app/design/adminhtml/default/default/template/vtrio/customreports/gridproduct.phtml CHANGED
@@ -201,6 +201,7 @@ $orderStatus = $model->getOrderStatus();
201
  <img src="<?php echo $this->getSkinUrl('images/icon_export.gif') ?>" alt="" class="v-middle"/>&nbsp; <?php echo $this->__('Export to:') ?>
202
  <select name="<?php echo $this->getId() ?>_export" id="<?php echo $this->getId() ?>_export" style="width:8em;">
203
  <option value="csv">CSV</option>
 
204
  </select>
205
  <button style="" onclick="doExport()" class="scalable task" type="button" title="Export" id="export">Export</button>
206
  </td>
@@ -327,8 +328,17 @@ $orderStatus = $model->getOrderStatus();
327
  function doExport(){
328
  var exportType = document.getElementById("customReport_export").value;
329
  $parm = '?period=<?php echo $report_period;?>&catId=<?php echo $catId;?>&subCatId=<?php echo $subCatId;?>&from=<?php echo $from;?>&to=<?php echo $to;?>&store_id=<?php echo $store_id;?>&order_statuses=<?php echo $order_statuses;?>';
330
- $url = '<?php echo $this->getUrl("customreports/report_index/csv_export");?>'+$parm;
331
- document.location.href= $url;
 
 
 
 
 
 
 
 
 
332
  }
333
 
334
  function getStatus(){
201
  <img src="<?php echo $this->getSkinUrl('images/icon_export.gif') ?>" alt="" class="v-middle"/>&nbsp; <?php echo $this->__('Export to:') ?>
202
  <select name="<?php echo $this->getId() ?>_export" id="<?php echo $this->getId() ?>_export" style="width:8em;">
203
  <option value="csv">CSV</option>
204
+ <option value="pdf">PDF</option>
205
  </select>
206
  <button style="" onclick="doExport()" class="scalable task" type="button" title="Export" id="export">Export</button>
207
  </td>
328
  function doExport(){
329
  var exportType = document.getElementById("customReport_export").value;
330
  $parm = '?period=<?php echo $report_period;?>&catId=<?php echo $catId;?>&subCatId=<?php echo $subCatId;?>&from=<?php echo $from;?>&to=<?php echo $to;?>&store_id=<?php echo $store_id;?>&order_statuses=<?php echo $order_statuses;?>';
331
+ if(exportType=="pdf")
332
+ {
333
+ $url = '<?php echo $this->getUrl("customreports/report_index/pdf_export");?>'+$parm;
334
+ var win = window.open($url, '_blank');
335
+ win.focus();
336
+ }
337
+ else
338
+ {
339
+ $url = '<?php echo $this->getUrl("customreports/report_index/csv_export");?>'+$parm;
340
+ document.location.href= $url;
341
+ }
342
  }
343
 
344
  function getStatus(){
app/etc/modules/Vtrio_CustomReports.xml CHANGED
@@ -4,7 +4,7 @@
4
  <Vtrio_CustomReports>
5
  <active>true</active>
6
  <codePool>community</codePool>
7
- <version>1.0.1</version>
8
  </Vtrio_CustomReports>
9
  </modules>
10
  </config>
4
  <Vtrio_CustomReports>
5
  <active>true</active>
6
  <codePool>community</codePool>
7
+ <version>2.0.0</version>
8
  </Vtrio_CustomReports>
9
  </modules>
10
  </config>
package.xml CHANGED
@@ -1,18 +1,18 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>VReport</name>
4
- <version>1.0.1</version>
5
- <stability>beta</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">MITL</license>
7
  <channel>community</channel>
8
  <extends/>
9
- <summary>VReport module helps users to generate reports in more user friendly and business prospective way. </summary>
10
- <description>VReport module helps users to generate reports in more user friendly and business prospective way. The report can be generated Category and Sub Categories wise. Additionaly the module provides time based and Order Status based filters and export options.Export file contains details like Product Name,SKU,total Price,Quantity Ordered, shipping and billing addres. The report will help store owners in setting business plans based on order status and category</description>
11
- <notes>Second Beta version</notes>
12
  <authors><author><name>Developer</name><user>Developer</user><email>dev@vtrio.com</email></author></authors>
13
- <date>2016-03-11</date>
14
- <time>09:10:41</time>
15
- <contents><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="vtrio"><dir name="customreports"><file name="gridproduct.phtml" hash="07dedcdaff3a17bc8510bb1f38e257e0"/></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="vtriocustomreport"><file name="pagination.css" hash="3e61bea82df74a73e3b00c1952aa9770"/></dir></dir></dir></dir></target><target name="mage"><dir name="app"><dir name="code"><dir name="community"><dir name="Vtrio"><dir name="CustomReports"><dir name="Block"><dir name="Report"><dir name="Custom"><file name="Grid.php" hash="97be1eeaff2eabf3ed16dd4214a3abf9"/></dir><file name="Custom.php" hash="53ca9fae5564ba0c877c1a8e6e89e5e1"/></dir></dir><dir name="Helper"><file name="Data.php" hash="4fe236db0b3efb39c7283593a14dbbfe"/></dir><dir name="Model"><file name="Collection.php" hash="09d1aac7c6074a69a6a7fe793578afc3"/></dir><dir name="controllers"><dir name="Report"><file name="IndexController.php" hash="1afc4f670300dfe40466ebe75c182420"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="08112c6bf1a058fce42ee7a8f87b34c5"/><file name="config.xml" hash="0ba9d8d2e0743f57f37071eeeeee10b4"/></dir></dir></dir></dir></dir><dir name="etc"><dir name="modules"><file name="Vtrio_CustomReports.xml" hash="353cfc772c346784ad1b75de523e4077"/></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.3.0</min><max>7.0.0</max></php></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>VReport</name>
4
+ <version>2.0.0</version>
5
+ <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">MITL</license>
7
  <channel>community</channel>
8
  <extends/>
9
+ <summary>VReport 2.0 is version that is an enhanced version of Vreport 1. </summary>
10
+ <description>VReport 2.0 is version that is an enhanced version of Vreport 1. In this version we have included PDF exporting option and some minor alignment fixes.</description>
11
+ <notes>VReport 2.0 is version that is an enhanced version of Vreport 1. In this version we have included PDF exporting option and some minor alignment fixes.</notes>
12
  <authors><author><name>Developer</name><user>Developer</user><email>dev@vtrio.com</email></author></authors>
13
+ <date>2016-04-06</date>
14
+ <time>12:46:37</time>
15
+ <contents><target name="mage"><dir name="."><dir name="app"><dir name="etc"><dir name="modules"><file name="Vtrio_CustomReports.xml" hash="3a61a6cf7e6fdb94c7129a26aa6efbe3"/></dir></dir><dir name="code"><dir name="community"><dir name="Vtrio"><dir name="CustomReports"><dir name="Block"><dir name="Report"><dir name="Custom"><file name="Grid.php" hash="6f16b2223f706541837247cafe75646f"/></dir><file name="Custom.php" hash="53ca9fae5564ba0c877c1a8e6e89e5e1"/></dir></dir><dir name="Helper"><file name="Data.php" hash="5c3e24f2edb16d8b65192c13217e0e1b"/></dir><dir name="Model"><file name="Collection.php" hash="09d1aac7c6074a69a6a7fe793578afc3"/></dir><dir name="controllers"><dir name="Report"><file name="IndexController.php" hash="e00867c6167241ab684d1a923585c173"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="08112c6bf1a058fce42ee7a8f87b34c5"/><file name="config.xml" hash="2fd6cc28b978af00371df3519e407f6e"/></dir></dir></dir></dir></dir></dir><dir name="skin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="vtriocustomreport"><dir name="fpdf"><dir name="font"><file name="courier.php" hash="e3a400edf2823f5423a09d71bd4486a9"/><file name="courierb.php" hash="2d564d4f9999663f48ef24147d470fb1"/><file name="courierbi.php" hash="2fcddf6e2c5149d7467d5584e0c76c98"/><file name="courieri.php" hash="ca447582faaa6db180bafa2827a030d4"/><file name="helvetica.php" hash="fedda30dc11649f4ee7b7938bd39018e"/><file name="helveticab.php" hash="a0b9565fe962b534ce1088abde8510c0"/><file name="helveticabi.php" hash="dd29b08bdb147a287aa7dbc0a8c12f07"/><file name="helveticai.php" hash="34a17a707789bb94d9da3042fca26969"/><file name="symbol.php" hash="5af7a3aa37a425427e42d56164f94269"/><file name="times.php" hash="05a3e5045e9355af620d3363712a4bf3"/><file name="timesb.php" hash="b07e9f901ff3a4ccbba22cd55e367e93"/><file name="timesbi.php" hash="10effb29e797882e3d0d6f7b23c0b643"/><file name="timesi.php" hash="6b734bfc501e1956c8b8adb6afa3d351"/><file name="zapfdingbats.php" hash="2e89c742b93fda1036de2f563a050dd6"/></dir><file name="fpdf.php" hash="8b9aa109f8a6d01d8341d52cc72be658"/><dir name="makefont"><file name="cp1250.map" hash="8a021bf2c9796273f4b2c3824efefc1d"/><file name="cp1251.map" hash="ee2f10b8198819a33d4aa566a7df4ec6"/><file name="cp1252.map" hash="8d7358daa8b750747694e822111898f9"/><file name="cp1253.map" hash="907301f283e7457d037fee0adb5ce187"/><file name="cp1254.map" hash="46e48666d54b3bc0d7eba59e1fc768f3"/><file name="cp1255.map" hash="c469cfdac7010e50b7fbcabaaf1393b1"/><file name="cp1257.map" hash="fe87c493f46ddfd8b57212cbc52e25ac"/><file name="cp1258.map" hash="86a4dee852783cc5b85ac83a82729d47"/><file name="cp874.map" hash="4fbafebd9ea29f4e10889749ec414113"/><file name="iso-8859-1.map" hash="53bffea6677269f073516bb10d28de02"/><file name="iso-8859-11.map" hash="83ecaf01ee009dc60c74e4fdaff0aa26"/><file name="iso-8859-15.map" hash="3d09f07dd446c6a2fc13a609c084e854"/><file name="iso-8859-16.map" hash="b56b0749d1ac137491e3714039009960"/><file name="iso-8859-2.map" hash="47507c221cb986421905861794102889"/><file name="iso-8859-4.map" hash="0355d40c58aa1db273ced4e7697b15b0"/><file name="iso-8859-5.map" hash="82a2003dbd3b5e359ea6b19898d4bc89"/><file name="iso-8859-7.map" hash="d0712d80739797b3495f67490d328d08"/><file name="iso-8859-9.map" hash="8647a52d390b37e26ed05e5ed6793b76"/><file name="koi8-r.map" hash="04f520a75d940d47dec77f1cc0539fbb"/><file name="koi8-u.map" hash="9046b7222af56cb6bbc349cac9dbabdf"/><file name="makefont.php" hash="18cc76bdd1940f6645f62049d4844d60"/><file name="ttfparser.php" hash="6fbd546bca43a5df0ee13008c79fd552"/></dir><file name="mc_table.php" hash="5910cd19480de31a831cad1e0d22d073"/></dir><dir name="images"><file name="vreport_logo.png" hash="42596ba89fb56c5373fb590ef4bb33da"/></dir></dir></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="vtrio"><dir name="customreports"><file name="gridproduct.phtml" hash="7c56aabba08431de7f0ae46ca941645d"/></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="vtriocustomreport"><file name="pagination.css" hash="3e61bea82df74a73e3b00c1952aa9770"/></dir></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.3.0</min><max>7.0.0</max></php></required></dependencies>
18
  </package>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courier.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Courier';
4
+ $up = -100;
5
+ $ut = 50;
6
+ for($i=0;$i<=255;$i++)
7
+ $cw[chr($i)] = 600;
8
+ $enc = 'cp1252';
9
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
10
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courierb.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Courier-Bold';
4
+ $up = -100;
5
+ $ut = 50;
6
+ for($i=0;$i<=255;$i++)
7
+ $cw[chr($i)] = 600;
8
+ $enc = 'cp1252';
9
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
10
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courierbi.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Courier-BoldOblique';
4
+ $up = -100;
5
+ $ut = 50;
6
+ for($i=0;$i<=255;$i++)
7
+ $cw[chr($i)] = 600;
8
+ $enc = 'cp1252';
9
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
10
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/courieri.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Courier-Oblique';
4
+ $up = -100;
5
+ $ut = 50;
6
+ for($i=0;$i<=255;$i++)
7
+ $cw[chr($i)] = 600;
8
+ $enc = 'cp1252';
9
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
10
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helvetica.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Helvetica';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
8
+ chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>278,'"'=>355,'#'=>556,'$'=>556,'%'=>889,'&'=>667,'\''=>191,'('=>333,')'=>333,'*'=>389,'+'=>584,
9
+ ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>278,';'=>278,'<'=>584,'='=>584,'>'=>584,'?'=>556,'@'=>1015,'A'=>667,
10
+ 'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>500,'K'=>667,'L'=>556,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
11
+ 'X'=>667,'Y'=>667,'Z'=>611,'['=>278,'\\'=>278,']'=>278,'^'=>469,'_'=>556,'`'=>333,'a'=>556,'b'=>556,'c'=>500,'d'=>556,'e'=>556,'f'=>278,'g'=>556,'h'=>556,'i'=>222,'j'=>222,'k'=>500,'l'=>222,'m'=>833,
12
+ 'n'=>556,'o'=>556,'p'=>556,'q'=>556,'r'=>333,'s'=>500,'t'=>278,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>500,'{'=>334,'|'=>260,'}'=>334,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>222,chr(131)=>556,
13
+ chr(132)=>333,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>222,chr(146)=>222,chr(147)=>333,chr(148)=>333,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
14
+ chr(154)=>500,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>260,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>556,chr(182)=>537,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
16
+ chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>500,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>556,chr(241)=>556,
18
+ chr(242)=>556,chr(243)=>556,chr(244)=>556,chr(245)=>556,chr(246)=>556,chr(247)=>584,chr(248)=>611,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helveticab.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Helvetica-Bold';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
8
+ chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>333,'"'=>474,'#'=>556,'$'=>556,'%'=>889,'&'=>722,'\''=>238,'('=>333,')'=>333,'*'=>389,'+'=>584,
9
+ ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>333,';'=>333,'<'=>584,'='=>584,'>'=>584,'?'=>611,'@'=>975,'A'=>722,
10
+ 'B'=>722,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>556,'K'=>722,'L'=>611,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
11
+ 'X'=>667,'Y'=>667,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>584,'_'=>556,'`'=>333,'a'=>556,'b'=>611,'c'=>556,'d'=>611,'e'=>556,'f'=>333,'g'=>611,'h'=>611,'i'=>278,'j'=>278,'k'=>556,'l'=>278,'m'=>889,
12
+ 'n'=>611,'o'=>611,'p'=>611,'q'=>611,'r'=>389,'s'=>556,'t'=>333,'u'=>611,'v'=>556,'w'=>778,'x'=>556,'y'=>556,'z'=>500,'{'=>389,'|'=>280,'}'=>389,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>278,chr(131)=>556,
13
+ chr(132)=>500,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>278,chr(146)=>278,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
14
+ chr(154)=>556,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>280,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>611,chr(182)=>556,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
16
+ chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>556,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>611,chr(241)=>611,
18
+ chr(242)=>611,chr(243)=>611,chr(244)=>611,chr(245)=>611,chr(246)=>611,chr(247)=>584,chr(248)=>611,chr(249)=>611,chr(250)=>611,chr(251)=>611,chr(252)=>611,chr(253)=>556,chr(254)=>611,chr(255)=>556);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helveticabi.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Helvetica-BoldOblique';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
8
+ chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>333,'"'=>474,'#'=>556,'$'=>556,'%'=>889,'&'=>722,'\''=>238,'('=>333,')'=>333,'*'=>389,'+'=>584,
9
+ ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>333,';'=>333,'<'=>584,'='=>584,'>'=>584,'?'=>611,'@'=>975,'A'=>722,
10
+ 'B'=>722,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>556,'K'=>722,'L'=>611,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
11
+ 'X'=>667,'Y'=>667,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>584,'_'=>556,'`'=>333,'a'=>556,'b'=>611,'c'=>556,'d'=>611,'e'=>556,'f'=>333,'g'=>611,'h'=>611,'i'=>278,'j'=>278,'k'=>556,'l'=>278,'m'=>889,
12
+ 'n'=>611,'o'=>611,'p'=>611,'q'=>611,'r'=>389,'s'=>556,'t'=>333,'u'=>611,'v'=>556,'w'=>778,'x'=>556,'y'=>556,'z'=>500,'{'=>389,'|'=>280,'}'=>389,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>278,chr(131)=>556,
13
+ chr(132)=>500,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>278,chr(146)=>278,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
14
+ chr(154)=>556,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>280,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>611,chr(182)=>556,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
16
+ chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>556,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>611,chr(241)=>611,
18
+ chr(242)=>611,chr(243)=>611,chr(244)=>611,chr(245)=>611,chr(246)=>611,chr(247)=>584,chr(248)=>611,chr(249)=>611,chr(250)=>611,chr(251)=>611,chr(252)=>611,chr(253)=>556,chr(254)=>611,chr(255)=>556);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/helveticai.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Helvetica-Oblique';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
8
+ chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>278,'"'=>355,'#'=>556,'$'=>556,'%'=>889,'&'=>667,'\''=>191,'('=>333,')'=>333,'*'=>389,'+'=>584,
9
+ ','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>278,';'=>278,'<'=>584,'='=>584,'>'=>584,'?'=>556,'@'=>1015,'A'=>667,
10
+ 'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>500,'K'=>667,'L'=>556,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
11
+ 'X'=>667,'Y'=>667,'Z'=>611,'['=>278,'\\'=>278,']'=>278,'^'=>469,'_'=>556,'`'=>333,'a'=>556,'b'=>556,'c'=>500,'d'=>556,'e'=>556,'f'=>278,'g'=>556,'h'=>556,'i'=>222,'j'=>222,'k'=>500,'l'=>222,'m'=>833,
12
+ 'n'=>556,'o'=>556,'p'=>556,'q'=>556,'r'=>333,'s'=>500,'t'=>278,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>500,'{'=>334,'|'=>260,'}'=>334,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>222,chr(131)=>556,
13
+ chr(132)=>333,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>222,chr(146)=>222,chr(147)=>333,chr(148)=>333,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
14
+ chr(154)=>500,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>260,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>556,chr(182)=>537,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
16
+ chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>500,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>556,chr(241)=>556,
18
+ chr(242)=>556,chr(243)=>556,chr(244)=>556,chr(245)=>556,chr(246)=>556,chr(247)=>584,chr(248)=>611,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/symbol.php ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Symbol';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
8
+ chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>713,'#'=>500,'$'=>549,'%'=>833,'&'=>778,'\''=>439,'('=>333,')'=>333,'*'=>500,'+'=>549,
9
+ ','=>250,'-'=>549,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>278,';'=>278,'<'=>549,'='=>549,'>'=>549,'?'=>444,'@'=>549,'A'=>722,
10
+ 'B'=>667,'C'=>722,'D'=>612,'E'=>611,'F'=>763,'G'=>603,'H'=>722,'I'=>333,'J'=>631,'K'=>722,'L'=>686,'M'=>889,'N'=>722,'O'=>722,'P'=>768,'Q'=>741,'R'=>556,'S'=>592,'T'=>611,'U'=>690,'V'=>439,'W'=>768,
11
+ 'X'=>645,'Y'=>795,'Z'=>611,'['=>333,'\\'=>863,']'=>333,'^'=>658,'_'=>500,'`'=>500,'a'=>631,'b'=>549,'c'=>549,'d'=>494,'e'=>439,'f'=>521,'g'=>411,'h'=>603,'i'=>329,'j'=>603,'k'=>549,'l'=>549,'m'=>576,
12
+ 'n'=>521,'o'=>549,'p'=>549,'q'=>521,'r'=>549,'s'=>603,'t'=>439,'u'=>576,'v'=>713,'w'=>686,'x'=>493,'y'=>686,'z'=>494,'{'=>480,'|'=>200,'}'=>480,'~'=>549,chr(127)=>0,chr(128)=>0,chr(129)=>0,chr(130)=>0,chr(131)=>0,
13
+ chr(132)=>0,chr(133)=>0,chr(134)=>0,chr(135)=>0,chr(136)=>0,chr(137)=>0,chr(138)=>0,chr(139)=>0,chr(140)=>0,chr(141)=>0,chr(142)=>0,chr(143)=>0,chr(144)=>0,chr(145)=>0,chr(146)=>0,chr(147)=>0,chr(148)=>0,chr(149)=>0,chr(150)=>0,chr(151)=>0,chr(152)=>0,chr(153)=>0,
14
+ chr(154)=>0,chr(155)=>0,chr(156)=>0,chr(157)=>0,chr(158)=>0,chr(159)=>0,chr(160)=>750,chr(161)=>620,chr(162)=>247,chr(163)=>549,chr(164)=>167,chr(165)=>713,chr(166)=>500,chr(167)=>753,chr(168)=>753,chr(169)=>753,chr(170)=>753,chr(171)=>1042,chr(172)=>987,chr(173)=>603,chr(174)=>987,chr(175)=>603,
15
+ chr(176)=>400,chr(177)=>549,chr(178)=>411,chr(179)=>549,chr(180)=>549,chr(181)=>713,chr(182)=>494,chr(183)=>460,chr(184)=>549,chr(185)=>549,chr(186)=>549,chr(187)=>549,chr(188)=>1000,chr(189)=>603,chr(190)=>1000,chr(191)=>658,chr(192)=>823,chr(193)=>686,chr(194)=>795,chr(195)=>987,chr(196)=>768,chr(197)=>768,
16
+ chr(198)=>823,chr(199)=>768,chr(200)=>768,chr(201)=>713,chr(202)=>713,chr(203)=>713,chr(204)=>713,chr(205)=>713,chr(206)=>713,chr(207)=>713,chr(208)=>768,chr(209)=>713,chr(210)=>790,chr(211)=>790,chr(212)=>890,chr(213)=>823,chr(214)=>549,chr(215)=>250,chr(216)=>713,chr(217)=>603,chr(218)=>603,chr(219)=>1042,
17
+ chr(220)=>987,chr(221)=>603,chr(222)=>987,chr(223)=>603,chr(224)=>494,chr(225)=>329,chr(226)=>790,chr(227)=>790,chr(228)=>786,chr(229)=>713,chr(230)=>384,chr(231)=>384,chr(232)=>384,chr(233)=>384,chr(234)=>384,chr(235)=>384,chr(236)=>494,chr(237)=>494,chr(238)=>494,chr(239)=>494,chr(240)=>0,chr(241)=>329,
18
+ chr(242)=>274,chr(243)=>686,chr(244)=>686,chr(245)=>686,chr(246)=>384,chr(247)=>384,chr(248)=>384,chr(249)=>384,chr(250)=>384,chr(251)=>384,chr(252)=>494,chr(253)=>494,chr(254)=>494,chr(255)=>0);
19
+ $uv = array(32=>160,33=>33,34=>8704,35=>35,36=>8707,37=>array(37,2),39=>8715,40=>array(40,2),42=>8727,43=>array(43,2),45=>8722,46=>array(46,18),64=>8773,65=>array(913,2),67=>935,68=>array(916,2),70=>934,71=>915,72=>919,73=>921,74=>977,75=>array(922,4),79=>array(927,2),81=>920,82=>929,83=>array(931,3),86=>962,87=>937,88=>926,89=>936,90=>918,91=>91,92=>8756,93=>93,94=>8869,95=>95,96=>63717,97=>array(945,2),99=>967,100=>array(948,2),102=>966,103=>947,104=>951,105=>953,106=>981,107=>array(954,4),111=>array(959,2),113=>952,114=>961,115=>array(963,3),118=>982,119=>969,120=>958,121=>968,122=>950,123=>array(123,3),126=>8764,160=>8364,161=>978,162=>8242,163=>8804,164=>8725,165=>8734,166=>402,167=>9827,168=>9830,169=>9829,170=>9824,171=>8596,172=>array(8592,4),176=>array(176,2),178=>8243,179=>8805,180=>215,181=>8733,182=>8706,183=>8226,184=>247,185=>array(8800,2),187=>8776,188=>8230,189=>array(63718,2),191=>8629,192=>8501,193=>8465,194=>8476,195=>8472,196=>8855,197=>8853,198=>8709,199=>array(8745,2),201=>8835,202=>8839,203=>8836,204=>8834,205=>8838,206=>array(8712,2),208=>8736,209=>8711,210=>63194,211=>63193,212=>63195,213=>8719,214=>8730,215=>8901,216=>172,217=>array(8743,2),219=>8660,220=>array(8656,4),224=>9674,225=>9001,226=>array(63720,3),229=>8721,230=>array(63723,10),241=>9002,242=>8747,243=>8992,244=>63733,245=>8993,246=>array(63734,9));
20
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/times.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Times-Roman';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
8
+ chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>408,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>180,'('=>333,')'=>333,'*'=>500,'+'=>564,
9
+ ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>278,';'=>278,'<'=>564,'='=>564,'>'=>564,'?'=>444,'@'=>921,'A'=>722,
10
+ 'B'=>667,'C'=>667,'D'=>722,'E'=>611,'F'=>556,'G'=>722,'H'=>722,'I'=>333,'J'=>389,'K'=>722,'L'=>611,'M'=>889,'N'=>722,'O'=>722,'P'=>556,'Q'=>722,'R'=>667,'S'=>556,'T'=>611,'U'=>722,'V'=>722,'W'=>944,
11
+ 'X'=>722,'Y'=>722,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>469,'_'=>500,'`'=>333,'a'=>444,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>333,'g'=>500,'h'=>500,'i'=>278,'j'=>278,'k'=>500,'l'=>278,'m'=>778,
12
+ 'n'=>500,'o'=>500,'p'=>500,'q'=>500,'r'=>333,'s'=>389,'t'=>278,'u'=>500,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>444,'{'=>480,'|'=>200,'}'=>480,'~'=>541,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
13
+ chr(132)=>444,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>889,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>444,chr(148)=>444,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>980,
14
+ chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>444,chr(159)=>722,chr(160)=>250,chr(161)=>333,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>200,chr(167)=>500,chr(168)=>333,chr(169)=>760,chr(170)=>276,chr(171)=>500,chr(172)=>564,chr(173)=>333,chr(174)=>760,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>564,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>500,chr(182)=>453,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>310,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>444,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
16
+ chr(198)=>889,chr(199)=>667,chr(200)=>611,chr(201)=>611,chr(202)=>611,chr(203)=>611,chr(204)=>333,chr(205)=>333,chr(206)=>333,chr(207)=>333,chr(208)=>722,chr(209)=>722,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>564,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>722,chr(222)=>556,chr(223)=>500,chr(224)=>444,chr(225)=>444,chr(226)=>444,chr(227)=>444,chr(228)=>444,chr(229)=>444,chr(230)=>667,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>500,
18
+ chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>564,chr(248)=>500,chr(249)=>500,chr(250)=>500,chr(251)=>500,chr(252)=>500,chr(253)=>500,chr(254)=>500,chr(255)=>500);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/timesb.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Times-Bold';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
8
+ chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>555,'#'=>500,'$'=>500,'%'=>1000,'&'=>833,'\''=>278,'('=>333,')'=>333,'*'=>500,'+'=>570,
9
+ ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>570,'='=>570,'>'=>570,'?'=>500,'@'=>930,'A'=>722,
10
+ 'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>778,'I'=>389,'J'=>500,'K'=>778,'L'=>667,'M'=>944,'N'=>722,'O'=>778,'P'=>611,'Q'=>778,'R'=>722,'S'=>556,'T'=>667,'U'=>722,'V'=>722,'W'=>1000,
11
+ 'X'=>722,'Y'=>722,'Z'=>667,'['=>333,'\\'=>278,']'=>333,'^'=>581,'_'=>500,'`'=>333,'a'=>500,'b'=>556,'c'=>444,'d'=>556,'e'=>444,'f'=>333,'g'=>500,'h'=>556,'i'=>278,'j'=>333,'k'=>556,'l'=>278,'m'=>833,
12
+ 'n'=>556,'o'=>500,'p'=>556,'q'=>556,'r'=>444,'s'=>389,'t'=>333,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>444,'{'=>394,'|'=>220,'}'=>394,'~'=>520,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
13
+ chr(132)=>500,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>667,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
14
+ chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>444,chr(159)=>722,chr(160)=>250,chr(161)=>333,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>220,chr(167)=>500,chr(168)=>333,chr(169)=>747,chr(170)=>300,chr(171)=>500,chr(172)=>570,chr(173)=>333,chr(174)=>747,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>570,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>556,chr(182)=>540,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>330,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
16
+ chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>389,chr(205)=>389,chr(206)=>389,chr(207)=>389,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>570,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>722,chr(222)=>611,chr(223)=>556,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>722,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>556,
18
+ chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>570,chr(248)=>500,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/timesbi.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Times-BoldItalic';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
8
+ chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>389,'"'=>555,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>278,'('=>333,')'=>333,'*'=>500,'+'=>570,
9
+ ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>570,'='=>570,'>'=>570,'?'=>500,'@'=>832,'A'=>667,
10
+ 'B'=>667,'C'=>667,'D'=>722,'E'=>667,'F'=>667,'G'=>722,'H'=>778,'I'=>389,'J'=>500,'K'=>667,'L'=>611,'M'=>889,'N'=>722,'O'=>722,'P'=>611,'Q'=>722,'R'=>667,'S'=>556,'T'=>611,'U'=>722,'V'=>667,'W'=>889,
11
+ 'X'=>667,'Y'=>611,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>570,'_'=>500,'`'=>333,'a'=>500,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>333,'g'=>500,'h'=>556,'i'=>278,'j'=>278,'k'=>500,'l'=>278,'m'=>778,
12
+ 'n'=>556,'o'=>500,'p'=>500,'q'=>500,'r'=>389,'s'=>389,'t'=>278,'u'=>556,'v'=>444,'w'=>667,'x'=>500,'y'=>444,'z'=>389,'{'=>348,'|'=>220,'}'=>348,'~'=>570,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
13
+ chr(132)=>500,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>944,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
14
+ chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>389,chr(159)=>611,chr(160)=>250,chr(161)=>389,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>220,chr(167)=>500,chr(168)=>333,chr(169)=>747,chr(170)=>266,chr(171)=>500,chr(172)=>606,chr(173)=>333,chr(174)=>747,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>570,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>576,chr(182)=>500,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>300,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
16
+ chr(198)=>944,chr(199)=>667,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>389,chr(205)=>389,chr(206)=>389,chr(207)=>389,chr(208)=>722,chr(209)=>722,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>570,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>611,chr(222)=>611,chr(223)=>500,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>722,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>556,
18
+ chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>570,chr(248)=>500,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>444,chr(254)=>500,chr(255)=>444);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/timesi.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'Times-Italic';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
8
+ chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>420,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>214,'('=>333,')'=>333,'*'=>500,'+'=>675,
9
+ ','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>675,'='=>675,'>'=>675,'?'=>500,'@'=>920,'A'=>611,
10
+ 'B'=>611,'C'=>667,'D'=>722,'E'=>611,'F'=>611,'G'=>722,'H'=>722,'I'=>333,'J'=>444,'K'=>667,'L'=>556,'M'=>833,'N'=>667,'O'=>722,'P'=>611,'Q'=>722,'R'=>611,'S'=>500,'T'=>556,'U'=>722,'V'=>611,'W'=>833,
11
+ 'X'=>611,'Y'=>556,'Z'=>556,'['=>389,'\\'=>278,']'=>389,'^'=>422,'_'=>500,'`'=>333,'a'=>500,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>278,'g'=>500,'h'=>500,'i'=>278,'j'=>278,'k'=>444,'l'=>278,'m'=>722,
12
+ 'n'=>500,'o'=>500,'p'=>500,'q'=>500,'r'=>389,'s'=>389,'t'=>278,'u'=>500,'v'=>444,'w'=>667,'x'=>444,'y'=>444,'z'=>389,'{'=>400,'|'=>275,'}'=>400,'~'=>541,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
13
+ chr(132)=>556,chr(133)=>889,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>500,chr(139)=>333,chr(140)=>944,chr(141)=>350,chr(142)=>556,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>556,chr(148)=>556,chr(149)=>350,chr(150)=>500,chr(151)=>889,chr(152)=>333,chr(153)=>980,
14
+ chr(154)=>389,chr(155)=>333,chr(156)=>667,chr(157)=>350,chr(158)=>389,chr(159)=>556,chr(160)=>250,chr(161)=>389,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>275,chr(167)=>500,chr(168)=>333,chr(169)=>760,chr(170)=>276,chr(171)=>500,chr(172)=>675,chr(173)=>333,chr(174)=>760,chr(175)=>333,
15
+ chr(176)=>400,chr(177)=>675,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>500,chr(182)=>523,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>310,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>611,chr(193)=>611,chr(194)=>611,chr(195)=>611,chr(196)=>611,chr(197)=>611,
16
+ chr(198)=>889,chr(199)=>667,chr(200)=>611,chr(201)=>611,chr(202)=>611,chr(203)=>611,chr(204)=>333,chr(205)=>333,chr(206)=>333,chr(207)=>333,chr(208)=>722,chr(209)=>667,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>675,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
17
+ chr(220)=>722,chr(221)=>556,chr(222)=>611,chr(223)=>500,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>667,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>500,
18
+ chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>675,chr(248)=>500,chr(249)=>500,chr(250)=>500,chr(251)=>500,chr(252)=>500,chr(253)=>444,chr(254)=>500,chr(255)=>444);
19
+ $enc = 'cp1252';
20
+ $uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
21
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/font/zapfdingbats.php ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $type = 'Core';
3
+ $name = 'ZapfDingbats';
4
+ $up = -100;
5
+ $ut = 50;
6
+ $cw = array(
7
+ chr(0)=>0,chr(1)=>0,chr(2)=>0,chr(3)=>0,chr(4)=>0,chr(5)=>0,chr(6)=>0,chr(7)=>0,chr(8)=>0,chr(9)=>0,chr(10)=>0,chr(11)=>0,chr(12)=>0,chr(13)=>0,chr(14)=>0,chr(15)=>0,chr(16)=>0,chr(17)=>0,chr(18)=>0,chr(19)=>0,chr(20)=>0,chr(21)=>0,
8
+ chr(22)=>0,chr(23)=>0,chr(24)=>0,chr(25)=>0,chr(26)=>0,chr(27)=>0,chr(28)=>0,chr(29)=>0,chr(30)=>0,chr(31)=>0,' '=>278,'!'=>974,'"'=>961,'#'=>974,'$'=>980,'%'=>719,'&'=>789,'\''=>790,'('=>791,')'=>690,'*'=>960,'+'=>939,
9
+ ','=>549,'-'=>855,'.'=>911,'/'=>933,'0'=>911,'1'=>945,'2'=>974,'3'=>755,'4'=>846,'5'=>762,'6'=>761,'7'=>571,'8'=>677,'9'=>763,':'=>760,';'=>759,'<'=>754,'='=>494,'>'=>552,'?'=>537,'@'=>577,'A'=>692,
10
+ 'B'=>786,'C'=>788,'D'=>788,'E'=>790,'F'=>793,'G'=>794,'H'=>816,'I'=>823,'J'=>789,'K'=>841,'L'=>823,'M'=>833,'N'=>816,'O'=>831,'P'=>923,'Q'=>744,'R'=>723,'S'=>749,'T'=>790,'U'=>792,'V'=>695,'W'=>776,
11
+ 'X'=>768,'Y'=>792,'Z'=>759,'['=>707,'\\'=>708,']'=>682,'^'=>701,'_'=>826,'`'=>815,'a'=>789,'b'=>789,'c'=>707,'d'=>687,'e'=>696,'f'=>689,'g'=>786,'h'=>787,'i'=>713,'j'=>791,'k'=>785,'l'=>791,'m'=>873,
12
+ 'n'=>761,'o'=>762,'p'=>762,'q'=>759,'r'=>759,'s'=>892,'t'=>892,'u'=>788,'v'=>784,'w'=>438,'x'=>138,'y'=>277,'z'=>415,'{'=>392,'|'=>392,'}'=>668,'~'=>668,chr(127)=>0,chr(128)=>390,chr(129)=>390,chr(130)=>317,chr(131)=>317,
13
+ chr(132)=>276,chr(133)=>276,chr(134)=>509,chr(135)=>509,chr(136)=>410,chr(137)=>410,chr(138)=>234,chr(139)=>234,chr(140)=>334,chr(141)=>334,chr(142)=>0,chr(143)=>0,chr(144)=>0,chr(145)=>0,chr(146)=>0,chr(147)=>0,chr(148)=>0,chr(149)=>0,chr(150)=>0,chr(151)=>0,chr(152)=>0,chr(153)=>0,
14
+ chr(154)=>0,chr(155)=>0,chr(156)=>0,chr(157)=>0,chr(158)=>0,chr(159)=>0,chr(160)=>0,chr(161)=>732,chr(162)=>544,chr(163)=>544,chr(164)=>910,chr(165)=>667,chr(166)=>760,chr(167)=>760,chr(168)=>776,chr(169)=>595,chr(170)=>694,chr(171)=>626,chr(172)=>788,chr(173)=>788,chr(174)=>788,chr(175)=>788,
15
+ chr(176)=>788,chr(177)=>788,chr(178)=>788,chr(179)=>788,chr(180)=>788,chr(181)=>788,chr(182)=>788,chr(183)=>788,chr(184)=>788,chr(185)=>788,chr(186)=>788,chr(187)=>788,chr(188)=>788,chr(189)=>788,chr(190)=>788,chr(191)=>788,chr(192)=>788,chr(193)=>788,chr(194)=>788,chr(195)=>788,chr(196)=>788,chr(197)=>788,
16
+ chr(198)=>788,chr(199)=>788,chr(200)=>788,chr(201)=>788,chr(202)=>788,chr(203)=>788,chr(204)=>788,chr(205)=>788,chr(206)=>788,chr(207)=>788,chr(208)=>788,chr(209)=>788,chr(210)=>788,chr(211)=>788,chr(212)=>894,chr(213)=>838,chr(214)=>1016,chr(215)=>458,chr(216)=>748,chr(217)=>924,chr(218)=>748,chr(219)=>918,
17
+ chr(220)=>927,chr(221)=>928,chr(222)=>928,chr(223)=>834,chr(224)=>873,chr(225)=>828,chr(226)=>924,chr(227)=>924,chr(228)=>917,chr(229)=>930,chr(230)=>931,chr(231)=>463,chr(232)=>883,chr(233)=>836,chr(234)=>836,chr(235)=>867,chr(236)=>867,chr(237)=>696,chr(238)=>696,chr(239)=>874,chr(240)=>0,chr(241)=>874,
18
+ chr(242)=>760,chr(243)=>946,chr(244)=>771,chr(245)=>865,chr(246)=>771,chr(247)=>888,chr(248)=>967,chr(249)=>888,chr(250)=>831,chr(251)=>873,chr(252)=>927,chr(253)=>970,chr(254)=>918,chr(255)=>0);
19
+ $uv = array(32=>32,33=>array(9985,4),37=>9742,38=>array(9990,4),42=>9755,43=>9758,44=>array(9996,28),72=>9733,73=>array(10025,35),108=>9679,109=>10061,110=>9632,111=>array(10063,4),115=>9650,116=>9660,117=>9670,118=>10070,119=>9687,120=>array(10072,7),128=>array(10088,14),161=>array(10081,7),168=>9827,169=>9830,170=>9829,171=>9824,172=>array(9312,10),182=>array(10102,31),213=>8594,214=>array(8596,2),216=>array(10136,24),241=>array(10161,14));
20
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/fpdf.php ADDED
@@ -0,0 +1,1898 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*******************************************************************************
3
+ * FPDF *
4
+ * *
5
+ * Version: 1.81 *
6
+ * Date: 2015-12-20 *
7
+ * Author: Olivier PLATHEY *
8
+ *******************************************************************************/
9
+
10
+ define('FPDF_VERSION','1.81');
11
+
12
+ class FPDF
13
+ {
14
+ protected $page; // current page number
15
+ protected $n; // current object number
16
+ protected $offsets; // array of object offsets
17
+ protected $buffer; // buffer holding in-memory PDF
18
+ protected $pages; // array containing pages
19
+ protected $state; // current document state
20
+ protected $compress; // compression flag
21
+ protected $k; // scale factor (number of points in user unit)
22
+ protected $DefOrientation; // default orientation
23
+ protected $CurOrientation; // current orientation
24
+ protected $StdPageSizes; // standard page sizes
25
+ protected $DefPageSize; // default page size
26
+ protected $CurPageSize; // current page size
27
+ protected $CurRotation; // current page rotation
28
+ protected $PageInfo; // page-related data
29
+ protected $wPt, $hPt; // dimensions of current page in points
30
+ protected $w, $h; // dimensions of current page in user unit
31
+ protected $lMargin; // left margin
32
+ protected $tMargin; // top margin
33
+ protected $rMargin; // right margin
34
+ protected $bMargin; // page break margin
35
+ protected $cMargin; // cell margin
36
+ protected $x, $y; // current position in user unit
37
+ protected $lasth; // height of last printed cell
38
+ protected $LineWidth; // line width in user unit
39
+ protected $fontpath; // path containing fonts
40
+ protected $CoreFonts; // array of core font names
41
+ protected $fonts; // array of used fonts
42
+ protected $FontFiles; // array of font files
43
+ protected $encodings; // array of encodings
44
+ protected $cmaps; // array of ToUnicode CMaps
45
+ protected $FontFamily; // current font family
46
+ protected $FontStyle; // current font style
47
+ protected $underline; // underlining flag
48
+ protected $CurrentFont; // current font info
49
+ protected $FontSizePt; // current font size in points
50
+ protected $FontSize; // current font size in user unit
51
+ protected $DrawColor; // commands for drawing color
52
+ protected $FillColor; // commands for filling color
53
+ protected $TextColor; // commands for text color
54
+ protected $ColorFlag; // indicates whether fill and text colors are different
55
+ protected $WithAlpha; // indicates whether alpha channel is used
56
+ protected $ws; // word spacing
57
+ protected $images; // array of used images
58
+ protected $PageLinks; // array of links in pages
59
+ protected $links; // array of internal links
60
+ protected $AutoPageBreak; // automatic page breaking
61
+ protected $PageBreakTrigger; // threshold used to trigger page breaks
62
+ protected $InHeader; // flag set when processing header
63
+ protected $InFooter; // flag set when processing footer
64
+ protected $AliasNbPages; // alias for total number of pages
65
+ protected $ZoomMode; // zoom display mode
66
+ protected $LayoutMode; // layout display mode
67
+ protected $metadata; // document properties
68
+ protected $PDFVersion; // PDF version number
69
+
70
+ /*******************************************************************************
71
+ * Public methods *
72
+ *******************************************************************************/
73
+
74
+ function __construct($orientation='P', $unit='mm', $size='A4')
75
+ {
76
+ // Some checks
77
+ $this->_dochecks();
78
+ // Initialization of properties
79
+ $this->state = 0;
80
+ $this->page = 0;
81
+ $this->n = 2;
82
+ $this->buffer = '';
83
+ $this->pages = array();
84
+ $this->PageInfo = array();
85
+ $this->fonts = array();
86
+ $this->FontFiles = array();
87
+ $this->encodings = array();
88
+ $this->cmaps = array();
89
+ $this->images = array();
90
+ $this->links = array();
91
+ $this->InHeader = false;
92
+ $this->InFooter = false;
93
+ $this->lasth = 0;
94
+ $this->FontFamily = '';
95
+ $this->FontStyle = '';
96
+ $this->FontSizePt = 12;
97
+ $this->underline = false;
98
+ $this->DrawColor = '0 G';
99
+ $this->FillColor = '0 g';
100
+ $this->TextColor = '0 g';
101
+ $this->ColorFlag = false;
102
+ $this->WithAlpha = false;
103
+ $this->ws = 0;
104
+ // Font path
105
+ if(defined('FPDF_FONTPATH'))
106
+ {
107
+ $this->fontpath = FPDF_FONTPATH;
108
+ if(substr($this->fontpath,-1)!='/' && substr($this->fontpath,-1)!='\\')
109
+ $this->fontpath .= '/';
110
+ }
111
+ elseif(is_dir(dirname(__FILE__).'/font'))
112
+ $this->fontpath = dirname(__FILE__).'/font/';
113
+ else
114
+ $this->fontpath = '';
115
+ // Core fonts
116
+ $this->CoreFonts = array('courier', 'helvetica', 'times', 'symbol', 'zapfdingbats');
117
+ // Scale factor
118
+ if($unit=='pt')
119
+ $this->k = 1;
120
+ elseif($unit=='mm')
121
+ $this->k = 72/25.4;
122
+ elseif($unit=='cm')
123
+ $this->k = 72/2.54;
124
+ elseif($unit=='in')
125
+ $this->k = 72;
126
+ else
127
+ $this->Error('Incorrect unit: '.$unit);
128
+ // Page sizes
129
+ $this->StdPageSizes = array('a3'=>array(841.89,1190.55), 'a4'=>array(595.28,841.89), 'a5'=>array(420.94,595.28),
130
+ 'letter'=>array(612,792), 'legal'=>array(612,1008));
131
+ $size = $this->_getpagesize($size);
132
+ $this->DefPageSize = $size;
133
+ $this->CurPageSize = $size;
134
+ // Page orientation
135
+ $orientation = strtolower($orientation);
136
+ if($orientation=='p' || $orientation=='portrait')
137
+ {
138
+ $this->DefOrientation = 'P';
139
+ $this->w = $size[0];
140
+ $this->h = $size[1];
141
+ }
142
+ elseif($orientation=='l' || $orientation=='landscape')
143
+ {
144
+ $this->DefOrientation = 'L';
145
+ $this->w = $size[1];
146
+ $this->h = $size[0];
147
+ }
148
+ else
149
+ $this->Error('Incorrect orientation: '.$orientation);
150
+ $this->CurOrientation = $this->DefOrientation;
151
+ $this->wPt = $this->w*$this->k;
152
+ $this->hPt = $this->h*$this->k;
153
+ // Page rotation
154
+ $this->CurRotation = 0;
155
+ // Page margins (1 cm)
156
+ $margin = 28.35/$this->k;
157
+ $this->SetMargins($margin,$margin);
158
+ // Interior cell margin (1 mm)
159
+ $this->cMargin = $margin/10;
160
+ // Line width (0.2 mm)
161
+ $this->LineWidth = .567/$this->k;
162
+ // Automatic page break
163
+ $this->SetAutoPageBreak(true,2*$margin);
164
+ // Default display mode
165
+ $this->SetDisplayMode('default');
166
+ // Enable compression
167
+ $this->SetCompression(true);
168
+ // Set default PDF version number
169
+ $this->PDFVersion = '1.3';
170
+ }
171
+
172
+ function SetMargins($left, $top, $right=null)
173
+ {
174
+ // Set left, top and right margins
175
+ $this->lMargin = $left;
176
+ $this->tMargin = $top;
177
+ if($right===null)
178
+ $right = $left;
179
+ $this->rMargin = $right;
180
+ }
181
+
182
+ function SetLeftMargin($margin)
183
+ {
184
+ // Set left margin
185
+ $this->lMargin = $margin;
186
+ if($this->page>0 && $this->x<$margin)
187
+ $this->x = $margin;
188
+ }
189
+
190
+ function SetTopMargin($margin)
191
+ {
192
+ // Set top margin
193
+ $this->tMargin = $margin;
194
+ }
195
+
196
+ function SetRightMargin($margin)
197
+ {
198
+ // Set right margin
199
+ $this->rMargin = $margin;
200
+ }
201
+
202
+ function SetAutoPageBreak($auto, $margin=0)
203
+ {
204
+ // Set auto page break mode and triggering margin
205
+ $this->AutoPageBreak = $auto;
206
+ $this->bMargin = $margin;
207
+ $this->PageBreakTrigger = $this->h-$margin;
208
+ }
209
+
210
+ function SetDisplayMode($zoom, $layout='default')
211
+ {
212
+ // Set display mode in viewer
213
+ if($zoom=='fullpage' || $zoom=='fullwidth' || $zoom=='real' || $zoom=='default' || !is_string($zoom))
214
+ $this->ZoomMode = $zoom;
215
+ else
216
+ $this->Error('Incorrect zoom display mode: '.$zoom);
217
+ if($layout=='single' || $layout=='continuous' || $layout=='two' || $layout=='default')
218
+ $this->LayoutMode = $layout;
219
+ else
220
+ $this->Error('Incorrect layout display mode: '.$layout);
221
+ }
222
+
223
+ function SetCompression($compress)
224
+ {
225
+ // Set page compression
226
+ if(function_exists('gzcompress'))
227
+ $this->compress = $compress;
228
+ else
229
+ $this->compress = false;
230
+ }
231
+
232
+ function SetTitle($title, $isUTF8=false)
233
+ {
234
+ // Title of document
235
+ $this->metadata['Title'] = $isUTF8 ? $title : utf8_encode($title);
236
+ }
237
+
238
+ function SetAuthor($author, $isUTF8=false)
239
+ {
240
+ // Author of document
241
+ $this->metadata['Author'] = $isUTF8 ? $author : utf8_encode($author);
242
+ }
243
+
244
+ function SetSubject($subject, $isUTF8=false)
245
+ {
246
+ // Subject of document
247
+ $this->metadata['Subject'] = $isUTF8 ? $subject : utf8_encode($subject);
248
+ }
249
+
250
+ function SetKeywords($keywords, $isUTF8=false)
251
+ {
252
+ // Keywords of document
253
+ $this->metadata['Keywords'] = $isUTF8 ? $keywords : utf8_encode($keywords);
254
+ }
255
+
256
+ function SetCreator($creator, $isUTF8=false)
257
+ {
258
+ // Creator of document
259
+ $this->metadata['Creator'] = $isUTF8 ? $creator : utf8_encode($creator);
260
+ }
261
+
262
+ function AliasNbPages($alias='{nb}')
263
+ {
264
+ // Define an alias for total number of pages
265
+ $this->AliasNbPages = $alias;
266
+ }
267
+
268
+ function Error($msg)
269
+ {
270
+ // Fatal error
271
+ throw new Exception('FPDF error: '.$msg);
272
+ }
273
+
274
+ function Close()
275
+ {
276
+ // Terminate document
277
+ if($this->state==3)
278
+ return;
279
+ if($this->page==0)
280
+ $this->AddPage();
281
+ // Page footer
282
+ $this->InFooter = true;
283
+ $this->Footer();
284
+ $this->InFooter = false;
285
+ // Close page
286
+ $this->_endpage();
287
+ // Close document
288
+ $this->_enddoc();
289
+ }
290
+
291
+ function AddPage($orientation='', $size='', $rotation=0)
292
+ {
293
+ // Start a new page
294
+ if($this->state==3)
295
+ $this->Error('The document is closed');
296
+ $family = $this->FontFamily;
297
+ $style = $this->FontStyle.($this->underline ? 'U' : '');
298
+ $fontsize = $this->FontSizePt;
299
+ $lw = $this->LineWidth;
300
+ $dc = $this->DrawColor;
301
+ $fc = $this->FillColor;
302
+ $tc = $this->TextColor;
303
+ $cf = $this->ColorFlag;
304
+ if($this->page>0)
305
+ {
306
+ // Page footer
307
+ $this->InFooter = true;
308
+ $this->Footer();
309
+ $this->InFooter = false;
310
+ // Close page
311
+ $this->_endpage();
312
+ }
313
+ // Start new page
314
+ $this->_beginpage($orientation,$size,$rotation);
315
+ // Set line cap style to square
316
+ $this->_out('2 J');
317
+ // Set line width
318
+ $this->LineWidth = $lw;
319
+ $this->_out(sprintf('%.2F w',$lw*$this->k));
320
+ // Set font
321
+ if($family)
322
+ $this->SetFont($family,$style,$fontsize);
323
+ // Set colors
324
+ $this->DrawColor = $dc;
325
+ if($dc!='0 G')
326
+ $this->_out($dc);
327
+ $this->FillColor = $fc;
328
+ if($fc!='0 g')
329
+ $this->_out($fc);
330
+ $this->TextColor = $tc;
331
+ $this->ColorFlag = $cf;
332
+ // Page header
333
+ $this->InHeader = true;
334
+ $this->Header();
335
+ $this->InHeader = false;
336
+ // Restore line width
337
+ if($this->LineWidth!=$lw)
338
+ {
339
+ $this->LineWidth = $lw;
340
+ $this->_out(sprintf('%.2F w',$lw*$this->k));
341
+ }
342
+ // Restore font
343
+ if($family)
344
+ $this->SetFont($family,$style,$fontsize);
345
+ // Restore colors
346
+ if($this->DrawColor!=$dc)
347
+ {
348
+ $this->DrawColor = $dc;
349
+ $this->_out($dc);
350
+ }
351
+ if($this->FillColor!=$fc)
352
+ {
353
+ $this->FillColor = $fc;
354
+ $this->_out($fc);
355
+ }
356
+ $this->TextColor = $tc;
357
+ $this->ColorFlag = $cf;
358
+ }
359
+
360
+ function Header()
361
+ {
362
+ // To be implemented in your own inherited class
363
+ }
364
+
365
+ function Footer()
366
+ {
367
+ // To be implemented in your own inherited class
368
+ }
369
+
370
+ function PageNo()
371
+ {
372
+ // Get current page number
373
+ return $this->page;
374
+ }
375
+
376
+ function SetDrawColor($r, $g=null, $b=null)
377
+ {
378
+ // Set color for all stroking operations
379
+ if(($r==0 && $g==0 && $b==0) || $g===null)
380
+ $this->DrawColor = sprintf('%.3F G',$r/255);
381
+ else
382
+ $this->DrawColor = sprintf('%.3F %.3F %.3F RG',$r/255,$g/255,$b/255);
383
+ if($this->page>0)
384
+ $this->_out($this->DrawColor);
385
+ }
386
+
387
+ function SetFillColor($r, $g=null, $b=null)
388
+ {
389
+ // Set color for all filling operations
390
+ if(($r==0 && $g==0 && $b==0) || $g===null)
391
+ $this->FillColor = sprintf('%.3F g',$r/255);
392
+ else
393
+ $this->FillColor = sprintf('%.3F %.3F %.3F rg',$r/255,$g/255,$b/255);
394
+ $this->ColorFlag = ($this->FillColor!=$this->TextColor);
395
+ if($this->page>0)
396
+ $this->_out($this->FillColor);
397
+ }
398
+
399
+ function SetTextColor($r, $g=null, $b=null)
400
+ {
401
+ // Set color for text
402
+ if(($r==0 && $g==0 && $b==0) || $g===null)
403
+ $this->TextColor = sprintf('%.3F g',$r/255);
404
+ else
405
+ $this->TextColor = sprintf('%.3F %.3F %.3F rg',$r/255,$g/255,$b/255);
406
+ $this->ColorFlag = ($this->FillColor!=$this->TextColor);
407
+ }
408
+
409
+ function GetStringWidth($s)
410
+ {
411
+ // Get width of a string in the current font
412
+ $s = (string)$s;
413
+ $cw = &$this->CurrentFont['cw'];
414
+ $w = 0;
415
+ $l = strlen($s);
416
+ for($i=0;$i<$l;$i++)
417
+ $w += $cw[$s[$i]];
418
+ return $w*$this->FontSize/1000;
419
+ }
420
+
421
+ function SetLineWidth($width)
422
+ {
423
+ // Set line width
424
+ $this->LineWidth = $width;
425
+ if($this->page>0)
426
+ $this->_out(sprintf('%.2F w',$width*$this->k));
427
+ }
428
+
429
+ function Line($x1, $y1, $x2, $y2)
430
+ {
431
+ // Draw a line
432
+ $this->_out(sprintf('%.2F %.2F m %.2F %.2F l S',$x1*$this->k,($this->h-$y1)*$this->k,$x2*$this->k,($this->h-$y2)*$this->k));
433
+ }
434
+
435
+ function Rect($x, $y, $w, $h, $style='')
436
+ {
437
+ // Draw a rectangle
438
+ if($style=='F')
439
+ $op = 'f';
440
+ elseif($style=='FD' || $style=='DF')
441
+ $op = 'B';
442
+ else
443
+ $op = 'S';
444
+ $this->_out(sprintf('%.2F %.2F %.2F %.2F re %s',$x*$this->k,($this->h-$y)*$this->k,$w*$this->k,-$h*$this->k,$op));
445
+ }
446
+
447
+ function AddFont($family, $style='', $file='')
448
+ {
449
+ // Add a TrueType, OpenType or Type1 font
450
+ $family = strtolower($family);
451
+ if($file=='')
452
+ $file = str_replace(' ','',$family).strtolower($style).'.php';
453
+ $style = strtoupper($style);
454
+ if($style=='IB')
455
+ $style = 'BI';
456
+ $fontkey = $family.$style;
457
+ if(isset($this->fonts[$fontkey]))
458
+ return;
459
+ $info = $this->_loadfont($file);
460
+ $info['i'] = count($this->fonts)+1;
461
+ if(!empty($info['file']))
462
+ {
463
+ // Embedded font
464
+ if($info['type']=='TrueType')
465
+ $this->FontFiles[$info['file']] = array('length1'=>$info['originalsize']);
466
+ else
467
+ $this->FontFiles[$info['file']] = array('length1'=>$info['size1'], 'length2'=>$info['size2']);
468
+ }
469
+ $this->fonts[$fontkey] = $info;
470
+ }
471
+
472
+ function SetFont($family, $style='', $size=0)
473
+ {
474
+ // Select a font; size given in points
475
+ if($family=='')
476
+ $family = $this->FontFamily;
477
+ else
478
+ $family = strtolower($family);
479
+ $style = strtoupper($style);
480
+ if(strpos($style,'U')!==false)
481
+ {
482
+ $this->underline = true;
483
+ $style = str_replace('U','',$style);
484
+ }
485
+ else
486
+ $this->underline = false;
487
+ if($style=='IB')
488
+ $style = 'BI';
489
+ if($size==0)
490
+ $size = $this->FontSizePt;
491
+ // Test if font is already selected
492
+ if($this->FontFamily==$family && $this->FontStyle==$style && $this->FontSizePt==$size)
493
+ return;
494
+ // Test if font is already loaded
495
+ $fontkey = $family.$style;
496
+ if(!isset($this->fonts[$fontkey]))
497
+ {
498
+ // Test if one of the core fonts
499
+ if($family=='arial')
500
+ $family = 'helvetica';
501
+ if(in_array($family,$this->CoreFonts))
502
+ {
503
+ if($family=='symbol' || $family=='zapfdingbats')
504
+ $style = '';
505
+ $fontkey = $family.$style;
506
+ if(!isset($this->fonts[$fontkey]))
507
+ $this->AddFont($family,$style);
508
+ }
509
+ else
510
+ $this->Error('Undefined font: '.$family.' '.$style);
511
+ }
512
+ // Select it
513
+ $this->FontFamily = $family;
514
+ $this->FontStyle = $style;
515
+ $this->FontSizePt = $size;
516
+ $this->FontSize = $size/$this->k;
517
+ $this->CurrentFont = &$this->fonts[$fontkey];
518
+ if($this->page>0)
519
+ $this->_out(sprintf('BT /F%d %.2F Tf ET',$this->CurrentFont['i'],$this->FontSizePt));
520
+ }
521
+
522
+ function SetFontSize($size)
523
+ {
524
+ // Set font size in points
525
+ if($this->FontSizePt==$size)
526
+ return;
527
+ $this->FontSizePt = $size;
528
+ $this->FontSize = $size/$this->k;
529
+ if($this->page>0)
530
+ $this->_out(sprintf('BT /F%d %.2F Tf ET',$this->CurrentFont['i'],$this->FontSizePt));
531
+ }
532
+
533
+ function AddLink()
534
+ {
535
+ // Create a new internal link
536
+ $n = count($this->links)+1;
537
+ $this->links[$n] = array(0, 0);
538
+ return $n;
539
+ }
540
+
541
+ function SetLink($link, $y=0, $page=-1)
542
+ {
543
+ // Set destination of internal link
544
+ if($y==-1)
545
+ $y = $this->y;
546
+ if($page==-1)
547
+ $page = $this->page;
548
+ $this->links[$link] = array($page, $y);
549
+ }
550
+
551
+ function Link($x, $y, $w, $h, $link)
552
+ {
553
+ // Put a link on the page
554
+ $this->PageLinks[$this->page][] = array($x*$this->k, $this->hPt-$y*$this->k, $w*$this->k, $h*$this->k, $link);
555
+ }
556
+
557
+ function Text($x, $y, $txt)
558
+ {
559
+ // Output a string
560
+ if(!isset($this->CurrentFont))
561
+ $this->Error('No font has been set');
562
+ $s = sprintf('BT %.2F %.2F Td (%s) Tj ET',$x*$this->k,($this->h-$y)*$this->k,$this->_escape($txt));
563
+ if($this->underline && $txt!='')
564
+ $s .= ' '.$this->_dounderline($x,$y,$txt);
565
+ if($this->ColorFlag)
566
+ $s = 'q '.$this->TextColor.' '.$s.' Q';
567
+ $this->_out($s);
568
+ }
569
+
570
+ function AcceptPageBreak()
571
+ {
572
+ // Accept automatic page break or not
573
+ return $this->AutoPageBreak;
574
+ }
575
+
576
+ function Cell($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=false, $link='')
577
+ {
578
+ // Output a cell
579
+ $k = $this->k;
580
+ if($this->y+$h>$this->PageBreakTrigger && !$this->InHeader && !$this->InFooter && $this->AcceptPageBreak())
581
+ {
582
+ // Automatic page break
583
+ $x = $this->x;
584
+ $ws = $this->ws;
585
+ if($ws>0)
586
+ {
587
+ $this->ws = 0;
588
+ $this->_out('0 Tw');
589
+ }
590
+ $this->AddPage($this->CurOrientation,$this->CurPageSize,$this->CurRotation);
591
+ $this->x = $x;
592
+ if($ws>0)
593
+ {
594
+ $this->ws = $ws;
595
+ $this->_out(sprintf('%.3F Tw',$ws*$k));
596
+ }
597
+ }
598
+ if($w==0)
599
+ $w = $this->w-$this->rMargin-$this->x;
600
+ $s = '';
601
+ if($fill || $border==1)
602
+ {
603
+ if($fill)
604
+ $op = ($border==1) ? 'B' : 'f';
605
+ else
606
+ $op = 'S';
607
+ $s = sprintf('%.2F %.2F %.2F %.2F re %s ',$this->x*$k,($this->h-$this->y)*$k,$w*$k,-$h*$k,$op);
608
+ }
609
+ if(is_string($border))
610
+ {
611
+ $x = $this->x;
612
+ $y = $this->y;
613
+ if(strpos($border,'L')!==false)
614
+ $s .= sprintf('%.2F %.2F m %.2F %.2F l S ',$x*$k,($this->h-$y)*$k,$x*$k,($this->h-($y+$h))*$k);
615
+ if(strpos($border,'T')!==false)
616
+ $s .= sprintf('%.2F %.2F m %.2F %.2F l S ',$x*$k,($this->h-$y)*$k,($x+$w)*$k,($this->h-$y)*$k);
617
+ if(strpos($border,'R')!==false)
618
+ $s .= sprintf('%.2F %.2F m %.2F %.2F l S ',($x+$w)*$k,($this->h-$y)*$k,($x+$w)*$k,($this->h-($y+$h))*$k);
619
+ if(strpos($border,'B')!==false)
620
+ $s .= sprintf('%.2F %.2F m %.2F %.2F l S ',$x*$k,($this->h-($y+$h))*$k,($x+$w)*$k,($this->h-($y+$h))*$k);
621
+ }
622
+ if($txt!=='')
623
+ {
624
+ if(!isset($this->CurrentFont))
625
+ $this->Error('No font has been set');
626
+ if($align=='R')
627
+ $dx = $w-$this->cMargin-$this->GetStringWidth($txt);
628
+ elseif($align=='C')
629
+ $dx = ($w-$this->GetStringWidth($txt))/2;
630
+ else
631
+ $dx = $this->cMargin;
632
+ if($this->ColorFlag)
633
+ $s .= 'q '.$this->TextColor.' ';
634
+ $s .= sprintf('BT %.2F %.2F Td (%s) Tj ET',($this->x+$dx)*$k,($this->h-($this->y+.5*$h+.3*$this->FontSize))*$k,$this->_escape($txt));
635
+ if($this->underline)
636
+ $s .= ' '.$this->_dounderline($this->x+$dx,$this->y+.5*$h+.3*$this->FontSize,$txt);
637
+ if($this->ColorFlag)
638
+ $s .= ' Q';
639
+ if($link)
640
+ $this->Link($this->x+$dx,$this->y+.5*$h-.5*$this->FontSize,$this->GetStringWidth($txt),$this->FontSize,$link);
641
+ }
642
+ if($s)
643
+ $this->_out($s);
644
+ $this->lasth = $h;
645
+ if($ln>0)
646
+ {
647
+ // Go to next line
648
+ $this->y += $h;
649
+ if($ln==1)
650
+ $this->x = $this->lMargin;
651
+ }
652
+ else
653
+ $this->x += $w;
654
+ }
655
+
656
+ function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=false)
657
+ {
658
+ // Output text with automatic or explicit line breaks
659
+ if(!isset($this->CurrentFont))
660
+ $this->Error('No font has been set');
661
+ $cw = &$this->CurrentFont['cw'];
662
+ if($w==0)
663
+ $w = $this->w-$this->rMargin-$this->x;
664
+ $wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
665
+ $s = str_replace("\r",'',$txt);
666
+ $nb = strlen($s);
667
+ if($nb>0 && $s[$nb-1]=="\n")
668
+ $nb--;
669
+ $b = 0;
670
+ if($border)
671
+ {
672
+ if($border==1)
673
+ {
674
+ $border = 'LTRB';
675
+ $b = 'LRT';
676
+ $b2 = 'LR';
677
+ }
678
+ else
679
+ {
680
+ $b2 = '';
681
+ if(strpos($border,'L')!==false)
682
+ $b2 .= 'L';
683
+ if(strpos($border,'R')!==false)
684
+ $b2 .= 'R';
685
+ $b = (strpos($border,'T')!==false) ? $b2.'T' : $b2;
686
+ }
687
+ }
688
+ $sep = -1;
689
+ $i = 0;
690
+ $j = 0;
691
+ $l = 0;
692
+ $ns = 0;
693
+ $nl = 1;
694
+ while($i<$nb)
695
+ {
696
+ // Get next character
697
+ $c = $s[$i];
698
+ if($c=="\n")
699
+ {
700
+ // Explicit line break
701
+ if($this->ws>0)
702
+ {
703
+ $this->ws = 0;
704
+ $this->_out('0 Tw');
705
+ }
706
+ $this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
707
+ $i++;
708
+ $sep = -1;
709
+ $j = $i;
710
+ $l = 0;
711
+ $ns = 0;
712
+ $nl++;
713
+ if($border && $nl==2)
714
+ $b = $b2;
715
+ continue;
716
+ }
717
+ if($c==' ')
718
+ {
719
+ $sep = $i;
720
+ $ls = $l;
721
+ $ns++;
722
+ }
723
+ $l += $cw[$c];
724
+ if($l>$wmax)
725
+ {
726
+ // Automatic line break
727
+ if($sep==-1)
728
+ {
729
+ if($i==$j)
730
+ $i++;
731
+ if($this->ws>0)
732
+ {
733
+ $this->ws = 0;
734
+ $this->_out('0 Tw');
735
+ }
736
+ $this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
737
+ }
738
+ else
739
+ {
740
+ if($align=='J')
741
+ {
742
+ $this->ws = ($ns>1) ? ($wmax-$ls)/1000*$this->FontSize/($ns-1) : 0;
743
+ $this->_out(sprintf('%.3F Tw',$this->ws*$this->k));
744
+ }
745
+ $this->Cell($w,$h,substr($s,$j,$sep-$j),$b,2,$align,$fill);
746
+ $i = $sep+1;
747
+ }
748
+ $sep = -1;
749
+ $j = $i;
750
+ $l = 0;
751
+ $ns = 0;
752
+ $nl++;
753
+ if($border && $nl==2)
754
+ $b = $b2;
755
+ }
756
+ else
757
+ $i++;
758
+ }
759
+ // Last chunk
760
+ if($this->ws>0)
761
+ {
762
+ $this->ws = 0;
763
+ $this->_out('0 Tw');
764
+ }
765
+ if($border && strpos($border,'B')!==false)
766
+ $b .= 'B';
767
+ $this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
768
+ $this->x = $this->lMargin;
769
+ }
770
+
771
+ function Write($h, $txt, $link='')
772
+ {
773
+ // Output text in flowing mode
774
+ if(!isset($this->CurrentFont))
775
+ $this->Error('No font has been set');
776
+ $cw = &$this->CurrentFont['cw'];
777
+ $w = $this->w-$this->rMargin-$this->x;
778
+ $wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
779
+ $s = str_replace("\r",'',$txt);
780
+ $nb = strlen($s);
781
+ $sep = -1;
782
+ $i = 0;
783
+ $j = 0;
784
+ $l = 0;
785
+ $nl = 1;
786
+ while($i<$nb)
787
+ {
788
+ // Get next character
789
+ $c = $s[$i];
790
+ if($c=="\n")
791
+ {
792
+ // Explicit line break
793
+ $this->Cell($w,$h,substr($s,$j,$i-$j),0,2,'',false,$link);
794
+ $i++;
795
+ $sep = -1;
796
+ $j = $i;
797
+ $l = 0;
798
+ if($nl==1)
799
+ {
800
+ $this->x = $this->lMargin;
801
+ $w = $this->w-$this->rMargin-$this->x;
802
+ $wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
803
+ }
804
+ $nl++;
805
+ continue;
806
+ }
807
+ if($c==' ')
808
+ $sep = $i;
809
+ $l += $cw[$c];
810
+ if($l>$wmax)
811
+ {
812
+ // Automatic line break
813
+ if($sep==-1)
814
+ {
815
+ if($this->x>$this->lMargin)
816
+ {
817
+ // Move to next line
818
+ $this->x = $this->lMargin;
819
+ $this->y += $h;
820
+ $w = $this->w-$this->rMargin-$this->x;
821
+ $wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
822
+ $i++;
823
+ $nl++;
824
+ continue;
825
+ }
826
+ if($i==$j)
827
+ $i++;
828
+ $this->Cell($w,$h,substr($s,$j,$i-$j),0,2,'',false,$link);
829
+ }
830
+ else
831
+ {
832
+ $this->Cell($w,$h,substr($s,$j,$sep-$j),0,2,'',false,$link);
833
+ $i = $sep+1;
834
+ }
835
+ $sep = -1;
836
+ $j = $i;
837
+ $l = 0;
838
+ if($nl==1)
839
+ {
840
+ $this->x = $this->lMargin;
841
+ $w = $this->w-$this->rMargin-$this->x;
842
+ $wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
843
+ }
844
+ $nl++;
845
+ }
846
+ else
847
+ $i++;
848
+ }
849
+ // Last chunk
850
+ if($i!=$j)
851
+ $this->Cell($l/1000*$this->FontSize,$h,substr($s,$j),0,0,'',false,$link);
852
+ }
853
+
854
+ function Ln($h=null)
855
+ {
856
+ // Line feed; default value is the last cell height
857
+ $this->x = $this->lMargin;
858
+ if($h===null)
859
+ $this->y += $this->lasth;
860
+ else
861
+ $this->y += $h;
862
+ }
863
+
864
+ function Image($file, $x=null, $y=null, $w=0, $h=0, $type='', $link='')
865
+ {
866
+ // Put an image on the page
867
+ if($file=='')
868
+ $this->Error('Image file name is empty');
869
+ if(!isset($this->images[$file]))
870
+ {
871
+ // First use of this image, get info
872
+ if($type=='')
873
+ {
874
+ $pos = strrpos($file,'.');
875
+ if(!$pos)
876
+ $this->Error('Image file has no extension and no type was specified: '.$file);
877
+ $type = substr($file,$pos+1);
878
+ }
879
+ $type = strtolower($type);
880
+ if($type=='jpeg')
881
+ $type = 'jpg';
882
+ $mtd = '_parse'.$type;
883
+ if(!method_exists($this,$mtd))
884
+ $this->Error('Unsupported image type: '.$type);
885
+ $info = $this->$mtd($file);
886
+ $info['i'] = count($this->images)+1;
887
+ $this->images[$file] = $info;
888
+ }
889
+ else
890
+ $info = $this->images[$file];
891
+
892
+ // Automatic width and height calculation if needed
893
+ if($w==0 && $h==0)
894
+ {
895
+ // Put image at 96 dpi
896
+ $w = -96;
897
+ $h = -96;
898
+ }
899
+ if($w<0)
900
+ $w = -$info['w']*72/$w/$this->k;
901
+ if($h<0)
902
+ $h = -$info['h']*72/$h/$this->k;
903
+ if($w==0)
904
+ $w = $h*$info['w']/$info['h'];
905
+ if($h==0)
906
+ $h = $w*$info['h']/$info['w'];
907
+
908
+ // Flowing mode
909
+ if($y===null)
910
+ {
911
+ if($this->y+$h>$this->PageBreakTrigger && !$this->InHeader && !$this->InFooter && $this->AcceptPageBreak())
912
+ {
913
+ // Automatic page break
914
+ $x2 = $this->x;
915
+ $this->AddPage($this->CurOrientation,$this->CurPageSize,$this->CurRotation);
916
+ $this->x = $x2;
917
+ }
918
+ $y = $this->y;
919
+ $this->y += $h;
920
+ }
921
+
922
+ if($x===null)
923
+ $x = $this->x;
924
+ $this->_out(sprintf('q %.2F 0 0 %.2F %.2F %.2F cm /I%d Do Q',$w*$this->k,$h*$this->k,$x*$this->k,($this->h-($y+$h))*$this->k,$info['i']));
925
+ if($link)
926
+ $this->Link($x,$y,$w,$h,$link);
927
+ }
928
+
929
+ function GetPageWidth()
930
+ {
931
+ // Get current page width
932
+ return $this->w;
933
+ }
934
+
935
+ function GetPageHeight()
936
+ {
937
+ // Get current page height
938
+ return $this->h;
939
+ }
940
+
941
+ function GetX()
942
+ {
943
+ // Get x position
944
+ return $this->x;
945
+ }
946
+
947
+ function SetX($x)
948
+ {
949
+ // Set x position
950
+ if($x>=0)
951
+ $this->x = $x;
952
+ else
953
+ $this->x = $this->w+$x;
954
+ }
955
+
956
+ function GetY()
957
+ {
958
+ // Get y position
959
+ return $this->y;
960
+ }
961
+
962
+ function SetY($y, $resetX=true)
963
+ {
964
+ // Set y position and optionally reset x
965
+ if($y>=0)
966
+ $this->y = $y;
967
+ else
968
+ $this->y = $this->h+$y;
969
+ if($resetX)
970
+ $this->x = $this->lMargin;
971
+ }
972
+
973
+ function SetXY($x, $y)
974
+ {
975
+ // Set x and y positions
976
+ $this->SetX($x);
977
+ $this->SetY($y,false);
978
+ }
979
+
980
+ function Output($dest='', $name='', $isUTF8=false)
981
+ {
982
+ // Output PDF to some destination
983
+ $this->Close();
984
+ if(strlen($name)==1 && strlen($dest)!=1)
985
+ {
986
+ // Fix parameter order
987
+ $tmp = $dest;
988
+ $dest = $name;
989
+ $name = $tmp;
990
+ }
991
+ if($dest=='')
992
+ $dest = 'I';
993
+ if($name=='')
994
+ $name = 'doc.pdf';
995
+ switch(strtoupper($dest))
996
+ {
997
+ case 'I':
998
+ // Send to standard output
999
+ $this->_checkoutput();
1000
+ if(PHP_SAPI!='cli')
1001
+ {
1002
+ // We send to a browser
1003
+ header('Content-Type: application/pdf');
1004
+ header('Content-Disposition: inline; '.$this->_httpencode('filename',$name,$isUTF8));
1005
+ header('Cache-Control: private, max-age=0, must-revalidate');
1006
+ header('Pragma: public');
1007
+ }
1008
+ echo $this->buffer;
1009
+ break;
1010
+ case 'D':
1011
+ // Download file
1012
+ $this->_checkoutput();
1013
+ header('Content-Type: application/x-download');
1014
+ header('Content-Disposition: attachment; '.$this->_httpencode('filename',$name,$isUTF8));
1015
+ header('Cache-Control: private, max-age=0, must-revalidate');
1016
+ header('Pragma: public');
1017
+ echo $this->buffer;
1018
+ break;
1019
+ case 'F':
1020
+ // Save to local file
1021
+ if(!file_put_contents($name,$this->buffer))
1022
+ $this->Error('Unable to create output file: '.$name);
1023
+ break;
1024
+ case 'S':
1025
+ // Return as a string
1026
+ return $this->buffer;
1027
+ default:
1028
+ $this->Error('Incorrect output destination: '.$dest);
1029
+ }
1030
+ return '';
1031
+ }
1032
+
1033
+ /*******************************************************************************
1034
+ * Protected methods *
1035
+ *******************************************************************************/
1036
+
1037
+ protected function _dochecks()
1038
+ {
1039
+ // Check mbstring overloading
1040
+ if(ini_get('mbstring.func_overload') & 2)
1041
+ $this->Error('mbstring overloading must be disabled');
1042
+ // Ensure runtime magic quotes are disabled
1043
+ if(get_magic_quotes_runtime())
1044
+ @set_magic_quotes_runtime(0);
1045
+ }
1046
+
1047
+ protected function _checkoutput()
1048
+ {
1049
+ if(PHP_SAPI!='cli')
1050
+ {
1051
+ if(headers_sent($file,$line))
1052
+ $this->Error("Some data has already been output, can't send PDF file (output started at $file:$line)");
1053
+ }
1054
+ if(ob_get_length())
1055
+ {
1056
+ // The output buffer is not empty
1057
+ if(preg_match('/^(\xEF\xBB\xBF)?\s*$/',ob_get_contents()))
1058
+ {
1059
+ // It contains only a UTF-8 BOM and/or whitespace, let's clean it
1060
+ ob_clean();
1061
+ }
1062
+ else
1063
+ $this->Error("Some data has already been output, can't send PDF file");
1064
+ }
1065
+ }
1066
+
1067
+ protected function _getpagesize($size)
1068
+ {
1069
+ if(is_string($size))
1070
+ {
1071
+ $size = strtolower($size);
1072
+ if(!isset($this->StdPageSizes[$size]))
1073
+ $this->Error('Unknown page size: '.$size);
1074
+ $a = $this->StdPageSizes[$size];
1075
+ return array($a[0]/$this->k, $a[1]/$this->k);
1076
+ }
1077
+ else
1078
+ {
1079
+ if($size[0]>$size[1])
1080
+ return array($size[1], $size[0]);
1081
+ else
1082
+ return $size;
1083
+ }
1084
+ }
1085
+
1086
+ protected function _beginpage($orientation, $size, $rotation)
1087
+ {
1088
+ $this->page++;
1089
+ $this->pages[$this->page] = '';
1090
+ $this->state = 2;
1091
+ $this->x = $this->lMargin;
1092
+ $this->y = $this->tMargin;
1093
+ $this->FontFamily = '';
1094
+ // Check page size and orientation
1095
+ if($orientation=='')
1096
+ $orientation = $this->DefOrientation;
1097
+ else
1098
+ $orientation = strtoupper($orientation[0]);
1099
+ if($size=='')
1100
+ $size = $this->DefPageSize;
1101
+ else
1102
+ $size = $this->_getpagesize($size);
1103
+ if($orientation!=$this->CurOrientation || $size[0]!=$this->CurPageSize[0] || $size[1]!=$this->CurPageSize[1])
1104
+ {
1105
+ // New size or orientation
1106
+ if($orientation=='P')
1107
+ {
1108
+ $this->w = $size[0];
1109
+ $this->h = $size[1];
1110
+ }
1111
+ else
1112
+ {
1113
+ $this->w = $size[1];
1114
+ $this->h = $size[0];
1115
+ }
1116
+ $this->wPt = $this->w*$this->k;
1117
+ $this->hPt = $this->h*$this->k;
1118
+ $this->PageBreakTrigger = $this->h-$this->bMargin;
1119
+ $this->CurOrientation = $orientation;
1120
+ $this->CurPageSize = $size;
1121
+ }
1122
+ if($orientation!=$this->DefOrientation || $size[0]!=$this->DefPageSize[0] || $size[1]!=$this->DefPageSize[1])
1123
+ $this->PageInfo[$this->page]['size'] = array($this->wPt, $this->hPt);
1124
+ if($rotation!=0)
1125
+ {
1126
+ if($rotation%90!=0)
1127
+ $this->Error('Incorrect rotation value: '.$rotation);
1128
+ $this->CurRotation = $rotation;
1129
+ $this->PageInfo[$this->page]['rotation'] = $rotation;
1130
+ }
1131
+ }
1132
+
1133
+ protected function _endpage()
1134
+ {
1135
+ $this->state = 1;
1136
+ }
1137
+
1138
+ protected function _loadfont($font)
1139
+ {
1140
+ // Load a font definition file from the font directory
1141
+ if(strpos($font,'/')!==false || strpos($font,"\\")!==false)
1142
+ $this->Error('Incorrect font definition file name: '.$font);
1143
+ include($this->fontpath.$font);
1144
+ if(!isset($name))
1145
+ $this->Error('Could not include font definition file');
1146
+ if(isset($enc))
1147
+ $enc = strtolower($enc);
1148
+ if(!isset($subsetted))
1149
+ $subsetted = false;
1150
+ return get_defined_vars();
1151
+ }
1152
+
1153
+ protected function _isascii($s)
1154
+ {
1155
+ // Test if string is ASCII
1156
+ $nb = strlen($s);
1157
+ for($i=0;$i<$nb;$i++)
1158
+ {
1159
+ if(ord($s[$i])>127)
1160
+ return false;
1161
+ }
1162
+ return true;
1163
+ }
1164
+
1165
+ protected function _httpencode($param, $value, $isUTF8)
1166
+ {
1167
+ // Encode HTTP header field parameter
1168
+ if($this->_isascii($value))
1169
+ return $param.'="'.$value.'"';
1170
+ if(!$isUTF8)
1171
+ $value = utf8_encode($value);
1172
+ if(strpos($_SERVER['HTTP_USER_AGENT'],'MSIE')!==false)
1173
+ return $param.'="'.rawurlencode($value).'"';
1174
+ else
1175
+ return $param."*=UTF-8''".rawurlencode($value);
1176
+ }
1177
+
1178
+ protected function _UTF8toUTF16($s)
1179
+ {
1180
+ // Convert UTF-8 to UTF-16BE with BOM
1181
+ $res = "\xFE\xFF";
1182
+ $nb = strlen($s);
1183
+ $i = 0;
1184
+ while($i<$nb)
1185
+ {
1186
+ $c1 = ord($s[$i++]);
1187
+ if($c1>=224)
1188
+ {
1189
+ // 3-byte character
1190
+ $c2 = ord($s[$i++]);
1191
+ $c3 = ord($s[$i++]);
1192
+ $res .= chr((($c1 & 0x0F)<<4) + (($c2 & 0x3C)>>2));
1193
+ $res .= chr((($c2 & 0x03)<<6) + ($c3 & 0x3F));
1194
+ }
1195
+ elseif($c1>=192)
1196
+ {
1197
+ // 2-byte character
1198
+ $c2 = ord($s[$i++]);
1199
+ $res .= chr(($c1 & 0x1C)>>2);
1200
+ $res .= chr((($c1 & 0x03)<<6) + ($c2 & 0x3F));
1201
+ }
1202
+ else
1203
+ {
1204
+ // Single-byte character
1205
+ $res .= "\0".chr($c1);
1206
+ }
1207
+ }
1208
+ return $res;
1209
+ }
1210
+
1211
+ protected function _escape($s)
1212
+ {
1213
+ // Escape special characters
1214
+ if(strpos($s,'(')!==false || strpos($s,')')!==false || strpos($s,'\\')!==false || strpos($s,"\r")!==false)
1215
+ return str_replace(array('\\','(',')',"\r"), array('\\\\','\\(','\\)','\\r'), $s);
1216
+ else
1217
+ return $s;
1218
+ }
1219
+
1220
+ protected function _textstring($s)
1221
+ {
1222
+ // Format a text string
1223
+ if(!$this->_isascii($s))
1224
+ $s = $this->_UTF8toUTF16($s);
1225
+ return '('.$this->_escape($s).')';
1226
+ }
1227
+
1228
+ protected function _dounderline($x, $y, $txt)
1229
+ {
1230
+ // Underline text
1231
+ $up = $this->CurrentFont['up'];
1232
+ $ut = $this->CurrentFont['ut'];
1233
+ $w = $this->GetStringWidth($txt)+$this->ws*substr_count($txt,' ');
1234
+ return sprintf('%.2F %.2F %.2F %.2F re f',$x*$this->k,($this->h-($y-$up/1000*$this->FontSize))*$this->k,$w*$this->k,-$ut/1000*$this->FontSizePt);
1235
+ }
1236
+
1237
+ protected function _parsejpg($file)
1238
+ {
1239
+ // Extract info from a JPEG file
1240
+ $a = getimagesize($file);
1241
+ if(!$a)
1242
+ $this->Error('Missing or incorrect image file: '.$file);
1243
+ if($a[2]!=2)
1244
+ $this->Error('Not a JPEG file: '.$file);
1245
+ if(!isset($a['channels']) || $a['channels']==3)
1246
+ $colspace = 'DeviceRGB';
1247
+ elseif($a['channels']==4)
1248
+ $colspace = 'DeviceCMYK';
1249
+ else
1250
+ $colspace = 'DeviceGray';
1251
+ $bpc = isset($a['bits']) ? $a['bits'] : 8;
1252
+ $data = file_get_contents($file);
1253
+ return array('w'=>$a[0], 'h'=>$a[1], 'cs'=>$colspace, 'bpc'=>$bpc, 'f'=>'DCTDecode', 'data'=>$data);
1254
+ }
1255
+
1256
+ protected function _parsepng($file)
1257
+ {
1258
+ // Extract info from a PNG file
1259
+ $f = fopen($file,'rb');
1260
+ if(!$f)
1261
+ $this->Error('Can\'t open image file: '.$file);
1262
+ $info = $this->_parsepngstream($f,$file);
1263
+ fclose($f);
1264
+ return $info;
1265
+ }
1266
+
1267
+ protected function _parsepngstream($f, $file)
1268
+ {
1269
+ // Check signature
1270
+ if($this->_readstream($f,8)!=chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10))
1271
+ $this->Error('Not a PNG file: '.$file);
1272
+
1273
+ // Read header chunk
1274
+ $this->_readstream($f,4);
1275
+ if($this->_readstream($f,4)!='IHDR')
1276
+ $this->Error('Incorrect PNG file: '.$file);
1277
+ $w = $this->_readint($f);
1278
+ $h = $this->_readint($f);
1279
+ $bpc = ord($this->_readstream($f,1));
1280
+ if($bpc>8)
1281
+ $this->Error('16-bit depth not supported: '.$file);
1282
+ $ct = ord($this->_readstream($f,1));
1283
+ if($ct==0 || $ct==4)
1284
+ $colspace = 'DeviceGray';
1285
+ elseif($ct==2 || $ct==6)
1286
+ $colspace = 'DeviceRGB';
1287
+ elseif($ct==3)
1288
+ $colspace = 'Indexed';
1289
+ else
1290
+ $this->Error('Unknown color type: '.$file);
1291
+ if(ord($this->_readstream($f,1))!=0)
1292
+ $this->Error('Unknown compression method: '.$file);
1293
+ if(ord($this->_readstream($f,1))!=0)
1294
+ $this->Error('Unknown filter method: '.$file);
1295
+ if(ord($this->_readstream($f,1))!=0)
1296
+ $this->Error('Interlacing not supported: '.$file);
1297
+ $this->_readstream($f,4);
1298
+ $dp = '/Predictor 15 /Colors '.($colspace=='DeviceRGB' ? 3 : 1).' /BitsPerComponent '.$bpc.' /Columns '.$w;
1299
+
1300
+ // Scan chunks looking for palette, transparency and image data
1301
+ $pal = '';
1302
+ $trns = '';
1303
+ $data = '';
1304
+ do
1305
+ {
1306
+ $n = $this->_readint($f);
1307
+ $type = $this->_readstream($f,4);
1308
+ if($type=='PLTE')
1309
+ {
1310
+ // Read palette
1311
+ $pal = $this->_readstream($f,$n);
1312
+ $this->_readstream($f,4);
1313
+ }
1314
+ elseif($type=='tRNS')
1315
+ {
1316
+ // Read transparency info
1317
+ $t = $this->_readstream($f,$n);
1318
+ if($ct==0)
1319
+ $trns = array(ord(substr($t,1,1)));
1320
+ elseif($ct==2)
1321
+ $trns = array(ord(substr($t,1,1)), ord(substr($t,3,1)), ord(substr($t,5,1)));
1322
+ else
1323
+ {
1324
+ $pos = strpos($t,chr(0));
1325
+ if($pos!==false)
1326
+ $trns = array($pos);
1327
+ }
1328
+ $this->_readstream($f,4);
1329
+ }
1330
+ elseif($type=='IDAT')
1331
+ {
1332
+ // Read image data block
1333
+ $data .= $this->_readstream($f,$n);
1334
+ $this->_readstream($f,4);
1335
+ }
1336
+ elseif($type=='IEND')
1337
+ break;
1338
+ else
1339
+ $this->_readstream($f,$n+4);
1340
+ }
1341
+ while($n);
1342
+
1343
+ if($colspace=='Indexed' && empty($pal))
1344
+ $this->Error('Missing palette in '.$file);
1345
+ $info = array('w'=>$w, 'h'=>$h, 'cs'=>$colspace, 'bpc'=>$bpc, 'f'=>'FlateDecode', 'dp'=>$dp, 'pal'=>$pal, 'trns'=>$trns);
1346
+ if($ct>=4)
1347
+ {
1348
+ // Extract alpha channel
1349
+ if(!function_exists('gzuncompress'))
1350
+ $this->Error('Zlib not available, can\'t handle alpha channel: '.$file);
1351
+ $data = gzuncompress($data);
1352
+ $color = '';
1353
+ $alpha = '';
1354
+ if($ct==4)
1355
+ {
1356
+ // Gray image
1357
+ $len = 2*$w;
1358
+ for($i=0;$i<$h;$i++)
1359
+ {
1360
+ $pos = (1+$len)*$i;
1361
+ $color .= $data[$pos];
1362
+ $alpha .= $data[$pos];
1363
+ $line = substr($data,$pos+1,$len);
1364
+ $color .= preg_replace('/(.)./s','$1',$line);
1365
+ $alpha .= preg_replace('/.(.)/s','$1',$line);
1366
+ }
1367
+ }
1368
+ else
1369
+ {
1370
+ // RGB image
1371
+ $len = 4*$w;
1372
+ for($i=0;$i<$h;$i++)
1373
+ {
1374
+ $pos = (1+$len)*$i;
1375
+ $color .= $data[$pos];
1376
+ $alpha .= $data[$pos];
1377
+ $line = substr($data,$pos+1,$len);
1378
+ $color .= preg_replace('/(.{3})./s','$1',$line);
1379
+ $alpha .= preg_replace('/.{3}(.)/s','$1',$line);
1380
+ }
1381
+ }
1382
+ unset($data);
1383
+ $data = gzcompress($color);
1384
+ $info['smask'] = gzcompress($alpha);
1385
+ $this->WithAlpha = true;
1386
+ if($this->PDFVersion<'1.4')
1387
+ $this->PDFVersion = '1.4';
1388
+ }
1389
+ $info['data'] = $data;
1390
+ return $info;
1391
+ }
1392
+
1393
+ protected function _readstream($f, $n)
1394
+ {
1395
+ // Read n bytes from stream
1396
+ $res = '';
1397
+ while($n>0 && !feof($f))
1398
+ {
1399
+ $s = fread($f,$n);
1400
+ if($s===false)
1401
+ $this->Error('Error while reading stream');
1402
+ $n -= strlen($s);
1403
+ $res .= $s;
1404
+ }
1405
+ if($n>0)
1406
+ $this->Error('Unexpected end of stream');
1407
+ return $res;
1408
+ }
1409
+
1410
+ protected function _readint($f)
1411
+ {
1412
+ // Read a 4-byte integer from stream
1413
+ $a = unpack('Ni',$this->_readstream($f,4));
1414
+ return $a['i'];
1415
+ }
1416
+
1417
+ protected function _parsegif($file)
1418
+ {
1419
+ // Extract info from a GIF file (via PNG conversion)
1420
+ if(!function_exists('imagepng'))
1421
+ $this->Error('GD extension is required for GIF support');
1422
+ if(!function_exists('imagecreatefromgif'))
1423
+ $this->Error('GD has no GIF read support');
1424
+ $im = imagecreatefromgif($file);
1425
+ if(!$im)
1426
+ $this->Error('Missing or incorrect image file: '.$file);
1427
+ imageinterlace($im,0);
1428
+ ob_start();
1429
+ imagepng($im);
1430
+ $data = ob_get_clean();
1431
+ imagedestroy($im);
1432
+ $f = fopen('php://temp','rb+');
1433
+ if(!$f)
1434
+ $this->Error('Unable to create memory stream');
1435
+ fwrite($f,$data);
1436
+ rewind($f);
1437
+ $info = $this->_parsepngstream($f,$file);
1438
+ fclose($f);
1439
+ return $info;
1440
+ }
1441
+
1442
+ protected function _out($s)
1443
+ {
1444
+ // Add a line to the document
1445
+ if($this->state==2)
1446
+ $this->pages[$this->page] .= $s."\n";
1447
+ elseif($this->state==1)
1448
+ $this->_put($s);
1449
+ elseif($this->state==0)
1450
+ $this->Error('No page has been added yet');
1451
+ elseif($this->state==3)
1452
+ $this->Error('The document is closed');
1453
+ }
1454
+
1455
+ protected function _put($s)
1456
+ {
1457
+ $this->buffer .= $s."\n";
1458
+ }
1459
+
1460
+ protected function _getoffset()
1461
+ {
1462
+ return strlen($this->buffer);
1463
+ }
1464
+
1465
+ protected function _newobj($n=null)
1466
+ {
1467
+ // Begin a new object
1468
+ if($n===null)
1469
+ $n = ++$this->n;
1470
+ $this->offsets[$n] = $this->_getoffset();
1471
+ $this->_put($n.' 0 obj');
1472
+ }
1473
+
1474
+ protected function _putstream($data)
1475
+ {
1476
+ $this->_put('stream');
1477
+ $this->_put($data);
1478
+ $this->_put('endstream');
1479
+ }
1480
+
1481
+ protected function _putstreamobject($data)
1482
+ {
1483
+ if($this->compress)
1484
+ {
1485
+ $entries = '/Filter /FlateDecode ';
1486
+ $data = gzcompress($data);
1487
+ }
1488
+ else
1489
+ $entries = '';
1490
+ $entries .= '/Length '.strlen($data);
1491
+ $this->_newobj();
1492
+ $this->_put('<<'.$entries.'>>');
1493
+ $this->_putstream($data);
1494
+ $this->_put('endobj');
1495
+ }
1496
+
1497
+ protected function _putpage($n)
1498
+ {
1499
+ $this->_newobj();
1500
+ $this->_put('<</Type /Page');
1501
+ $this->_put('/Parent 1 0 R');
1502
+ if(isset($this->PageInfo[$n]['size']))
1503
+ $this->_put(sprintf('/MediaBox [0 0 %.2F %.2F]',$this->PageInfo[$n]['size'][0],$this->PageInfo[$n]['size'][1]));
1504
+ if(isset($this->PageInfo[$n]['rotation']))
1505
+ $this->_put('/Rotate '.$this->PageInfo[$n]['rotation']);
1506
+ $this->_put('/Resources 2 0 R');
1507
+ if(isset($this->PageLinks[$n]))
1508
+ {
1509
+ // Links
1510
+ $annots = '/Annots [';
1511
+ foreach($this->PageLinks[$n] as $pl)
1512
+ {
1513
+ $rect = sprintf('%.2F %.2F %.2F %.2F',$pl[0],$pl[1],$pl[0]+$pl[2],$pl[1]-$pl[3]);
1514
+ $annots .= '<</Type /Annot /Subtype /Link /Rect ['.$rect.'] /Border [0 0 0] ';
1515
+ if(is_string($pl[4]))
1516
+ $annots .= '/A <</S /URI /URI '.$this->_textstring($pl[4]).'>>>>';
1517
+ else
1518
+ {
1519
+ $l = $this->links[$pl[4]];
1520
+ if(isset($this->PageInfo[$l[0]]['size']))
1521
+ $h = $this->PageInfo[$l[0]]['size'][1];
1522
+ else
1523
+ $h = ($this->DefOrientation=='P') ? $this->DefPageSize[1]*$this->k : $this->DefPageSize[0]*$this->k;
1524
+ $annots .= sprintf('/Dest [%d 0 R /XYZ 0 %.2F null]>>',$this->PageInfo[$l[0]]['n'],$h-$l[1]*$this->k);
1525
+ }
1526
+ }
1527
+ $this->_put($annots.']');
1528
+ }
1529
+ if($this->WithAlpha)
1530
+ $this->_put('/Group <</Type /Group /S /Transparency /CS /DeviceRGB>>');
1531
+ $this->_put('/Contents '.($this->n+1).' 0 R>>');
1532
+ $this->_put('endobj');
1533
+ // Page content
1534
+ if(!empty($this->AliasNbPages))
1535
+ $this->pages[$n] = str_replace($this->AliasNbPages,$this->page,$this->pages[$n]);
1536
+ $this->_putstreamobject($this->pages[$n]);
1537
+ }
1538
+
1539
+ protected function _putpages()
1540
+ {
1541
+ $nb = $this->page;
1542
+ for($n=1;$n<=$nb;$n++)
1543
+ $this->PageInfo[$n]['n'] = $this->n+1+2*($n-1);
1544
+ for($n=1;$n<=$nb;$n++)
1545
+ $this->_putpage($n);
1546
+ // Pages root
1547
+ $this->_newobj(1);
1548
+ $this->_put('<</Type /Pages');
1549
+ $kids = '/Kids [';
1550
+ for($n=1;$n<=$nb;$n++)
1551
+ $kids .= $this->PageInfo[$n]['n'].' 0 R ';
1552
+ $this->_put($kids.']');
1553
+ $this->_put('/Count '.$nb);
1554
+ if($this->DefOrientation=='P')
1555
+ {
1556
+ $w = $this->DefPageSize[0];
1557
+ $h = $this->DefPageSize[1];
1558
+ }
1559
+ else
1560
+ {
1561
+ $w = $this->DefPageSize[1];
1562
+ $h = $this->DefPageSize[0];
1563
+ }
1564
+ $this->_put(sprintf('/MediaBox [0 0 %.2F %.2F]',$w*$this->k,$h*$this->k));
1565
+ $this->_put('>>');
1566
+ $this->_put('endobj');
1567
+ }
1568
+
1569
+ protected function _putfonts()
1570
+ {
1571
+ foreach($this->FontFiles as $file=>$info)
1572
+ {
1573
+ // Font file embedding
1574
+ $this->_newobj();
1575
+ $this->FontFiles[$file]['n'] = $this->n;
1576
+ $font = file_get_contents($this->fontpath.$file,true);
1577
+ if(!$font)
1578
+ $this->Error('Font file not found: '.$file);
1579
+ $compressed = (substr($file,-2)=='.z');
1580
+ if(!$compressed && isset($info['length2']))
1581
+ $font = substr($font,6,$info['length1']).substr($font,6+$info['length1']+6,$info['length2']);
1582
+ $this->_put('<</Length '.strlen($font));
1583
+ if($compressed)
1584
+ $this->_put('/Filter /FlateDecode');
1585
+ $this->_put('/Length1 '.$info['length1']);
1586
+ if(isset($info['length2']))
1587
+ $this->_put('/Length2 '.$info['length2'].' /Length3 0');
1588
+ $this->_put('>>');
1589
+ $this->_putstream($font);
1590
+ $this->_put('endobj');
1591
+ }
1592
+ foreach($this->fonts as $k=>$font)
1593
+ {
1594
+ // Encoding
1595
+ if(isset($font['diff']))
1596
+ {
1597
+ if(!isset($this->encodings[$font['enc']]))
1598
+ {
1599
+ $this->_newobj();
1600
+ $this->_put('<</Type /Encoding /BaseEncoding /WinAnsiEncoding /Differences ['.$font['diff'].']>>');
1601
+ $this->_put('endobj');
1602
+ $this->encodings[$font['enc']] = $this->n;
1603
+ }
1604
+ }
1605
+ // ToUnicode CMap
1606
+ if(isset($font['uv']))
1607
+ {
1608
+ if(isset($font['enc']))
1609
+ $cmapkey = $font['enc'];
1610
+ else
1611
+ $cmapkey = $font['name'];
1612
+ if(!isset($this->cmaps[$cmapkey]))
1613
+ {
1614
+ $cmap = $this->_tounicodecmap($font['uv']);
1615
+ $this->_putstreamobject($cmap);
1616
+ $this->cmaps[$cmapkey] = $this->n;
1617
+ }
1618
+ }
1619
+ // Font object
1620
+ $this->fonts[$k]['n'] = $this->n+1;
1621
+ $type = $font['type'];
1622
+ $name = $font['name'];
1623
+ if($font['subsetted'])
1624
+ $name = 'AAAAAA+'.$name;
1625
+ if($type=='Core')
1626
+ {
1627
+ // Core font
1628
+ $this->_newobj();
1629
+ $this->_put('<</Type /Font');
1630
+ $this->_put('/BaseFont /'.$name);
1631
+ $this->_put('/Subtype /Type1');
1632
+ if($name!='Symbol' && $name!='ZapfDingbats')
1633
+ $this->_put('/Encoding /WinAnsiEncoding');
1634
+ if(isset($font['uv']))
1635
+ $this->_put('/ToUnicode '.$this->cmaps[$cmapkey].' 0 R');
1636
+ $this->_put('>>');
1637
+ $this->_put('endobj');
1638
+ }
1639
+ elseif($type=='Type1' || $type=='TrueType')
1640
+ {
1641
+ // Additional Type1 or TrueType/OpenType font
1642
+ $this->_newobj();
1643
+ $this->_put('<</Type /Font');
1644
+ $this->_put('/BaseFont /'.$name);
1645
+ $this->_put('/Subtype /'.$type);
1646
+ $this->_put('/FirstChar 32 /LastChar 255');
1647
+ $this->_put('/Widths '.($this->n+1).' 0 R');
1648
+ $this->_put('/FontDescriptor '.($this->n+2).' 0 R');
1649
+ if(isset($font['diff']))
1650
+ $this->_put('/Encoding '.$this->encodings[$font['enc']].' 0 R');
1651
+ else
1652
+ $this->_put('/Encoding /WinAnsiEncoding');
1653
+ if(isset($font['uv']))
1654
+ $this->_put('/ToUnicode '.$this->cmaps[$cmapkey].' 0 R');
1655
+ $this->_put('>>');
1656
+ $this->_put('endobj');
1657
+ // Widths
1658
+ $this->_newobj();
1659
+ $cw = &$font['cw'];
1660
+ $s = '[';
1661
+ for($i=32;$i<=255;$i++)
1662
+ $s .= $cw[chr($i)].' ';
1663
+ $this->_put($s.']');
1664
+ $this->_put('endobj');
1665
+ // Descriptor
1666
+ $this->_newobj();
1667
+ $s = '<</Type /FontDescriptor /FontName /'.$name;
1668
+ foreach($font['desc'] as $k=>$v)
1669
+ $s .= ' /'.$k.' '.$v;
1670
+ if(!empty($font['file']))
1671
+ $s .= ' /FontFile'.($type=='Type1' ? '' : '2').' '.$this->FontFiles[$font['file']]['n'].' 0 R';
1672
+ $this->_put($s.'>>');
1673
+ $this->_put('endobj');
1674
+ }
1675
+ else
1676
+ {
1677
+ // Allow for additional types
1678
+ $mtd = '_put'.strtolower($type);
1679
+ if(!method_exists($this,$mtd))
1680
+ $this->Error('Unsupported font type: '.$type);
1681
+ $this->$mtd($font);
1682
+ }
1683
+ }
1684
+ }
1685
+
1686
+ protected function _tounicodecmap($uv)
1687
+ {
1688
+ $ranges = '';
1689
+ $nbr = 0;
1690
+ $chars = '';
1691
+ $nbc = 0;
1692
+ foreach($uv as $c=>$v)
1693
+ {
1694
+ if(is_array($v))
1695
+ {
1696
+ $ranges .= sprintf("<%02X> <%02X> <%04X>\n",$c,$c+$v[1]-1,$v[0]);
1697
+ $nbr++;
1698
+ }
1699
+ else
1700
+ {
1701
+ $chars .= sprintf("<%02X> <%04X>\n",$c,$v);
1702
+ $nbc++;
1703
+ }
1704
+ }
1705
+ $s = "/CIDInit /ProcSet findresource begin\n";
1706
+ $s .= "12 dict begin\n";
1707
+ $s .= "begincmap\n";
1708
+ $s .= "/CIDSystemInfo\n";
1709
+ $s .= "<</Registry (Adobe)\n";
1710
+ $s .= "/Ordering (UCS)\n";
1711
+ $s .= "/Supplement 0\n";
1712
+ $s .= ">> def\n";
1713
+ $s .= "/CMapName /Adobe-Identity-UCS def\n";
1714
+ $s .= "/CMapType 2 def\n";
1715
+ $s .= "1 begincodespacerange\n";
1716
+ $s .= "<00> <FF>\n";
1717
+ $s .= "endcodespacerange\n";
1718
+ if($nbr>0)
1719
+ {
1720
+ $s .= "$nbr beginbfrange\n";
1721
+ $s .= $ranges;
1722
+ $s .= "endbfrange\n";
1723
+ }
1724
+ if($nbc>0)
1725
+ {
1726
+ $s .= "$nbc beginbfchar\n";
1727
+ $s .= $chars;
1728
+ $s .= "endbfchar\n";
1729
+ }
1730
+ $s .= "endcmap\n";
1731
+ $s .= "CMapName currentdict /CMap defineresource pop\n";
1732
+ $s .= "end\n";
1733
+ $s .= "end";
1734
+ return $s;
1735
+ }
1736
+
1737
+ protected function _putimages()
1738
+ {
1739
+ foreach(array_keys($this->images) as $file)
1740
+ {
1741
+ $this->_putimage($this->images[$file]);
1742
+ unset($this->images[$file]['data']);
1743
+ unset($this->images[$file]['smask']);
1744
+ }
1745
+ }
1746
+
1747
+ protected function _putimage(&$info)
1748
+ {
1749
+ $this->_newobj();
1750
+ $info['n'] = $this->n;
1751
+ $this->_put('<</Type /XObject');
1752
+ $this->_put('/Subtype /Image');
1753
+ $this->_put('/Width '.$info['w']);
1754
+ $this->_put('/Height '.$info['h']);
1755
+ if($info['cs']=='Indexed')
1756
+ $this->_put('/ColorSpace [/Indexed /DeviceRGB '.(strlen($info['pal'])/3-1).' '.($this->n+1).' 0 R]');
1757
+ else
1758
+ {
1759
+ $this->_put('/ColorSpace /'.$info['cs']);
1760
+ if($info['cs']=='DeviceCMYK')
1761
+ $this->_put('/Decode [1 0 1 0 1 0 1 0]');
1762
+ }
1763
+ $this->_put('/BitsPerComponent '.$info['bpc']);
1764
+ if(isset($info['f']))
1765
+ $this->_put('/Filter /'.$info['f']);
1766
+ if(isset($info['dp']))
1767
+ $this->_put('/DecodeParms <<'.$info['dp'].'>>');
1768
+ if(isset($info['trns']) && is_array($info['trns']))
1769
+ {
1770
+ $trns = '';
1771
+ for($i=0;$i<count($info['trns']);$i++)
1772
+ $trns .= $info['trns'][$i].' '.$info['trns'][$i].' ';
1773
+ $this->_put('/Mask ['.$trns.']');
1774
+ }
1775
+ if(isset($info['smask']))
1776
+ $this->_put('/SMask '.($this->n+1).' 0 R');
1777
+ $this->_put('/Length '.strlen($info['data']).'>>');
1778
+ $this->_putstream($info['data']);
1779
+ $this->_put('endobj');
1780
+ // Soft mask
1781
+ if(isset($info['smask']))
1782
+ {
1783
+ $dp = '/Predictor 15 /Colors 1 /BitsPerComponent 8 /Columns '.$info['w'];
1784
+ $smask = array('w'=>$info['w'], 'h'=>$info['h'], 'cs'=>'DeviceGray', 'bpc'=>8, 'f'=>$info['f'], 'dp'=>$dp, 'data'=>$info['smask']);
1785
+ $this->_putimage($smask);
1786
+ }
1787
+ // Palette
1788
+ if($info['cs']=='Indexed')
1789
+ $this->_putstreamobject($info['pal']);
1790
+ }
1791
+
1792
+ protected function _putxobjectdict()
1793
+ {
1794
+ foreach($this->images as $image)
1795
+ $this->_put('/I'.$image['i'].' '.$image['n'].' 0 R');
1796
+ }
1797
+
1798
+ protected function _putresourcedict()
1799
+ {
1800
+ $this->_put('/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]');
1801
+ $this->_put('/Font <<');
1802
+ foreach($this->fonts as $font)
1803
+ $this->_put('/F'.$font['i'].' '.$font['n'].' 0 R');
1804
+ $this->_put('>>');
1805
+ $this->_put('/XObject <<');
1806
+ $this->_putxobjectdict();
1807
+ $this->_put('>>');
1808
+ }
1809
+
1810
+ protected function _putresources()
1811
+ {
1812
+ $this->_putfonts();
1813
+ $this->_putimages();
1814
+ // Resource dictionary
1815
+ $this->_newobj(2);
1816
+ $this->_put('<<');
1817
+ $this->_putresourcedict();
1818
+ $this->_put('>>');
1819
+ $this->_put('endobj');
1820
+ }
1821
+
1822
+ protected function _putinfo()
1823
+ {
1824
+ $this->metadata['Producer'] = 'FPDF '.FPDF_VERSION;
1825
+ $this->metadata['CreationDate'] = 'D:'.@date('YmdHis');
1826
+ foreach($this->metadata as $key=>$value)
1827
+ $this->_put('/'.$key.' '.$this->_textstring($value));
1828
+ }
1829
+
1830
+ protected function _putcatalog()
1831
+ {
1832
+ $n = $this->PageInfo[1]['n'];
1833
+ $this->_put('/Type /Catalog');
1834
+ $this->_put('/Pages 1 0 R');
1835
+ if($this->ZoomMode=='fullpage')
1836
+ $this->_put('/OpenAction ['.$n.' 0 R /Fit]');
1837
+ elseif($this->ZoomMode=='fullwidth')
1838
+ $this->_put('/OpenAction ['.$n.' 0 R /FitH null]');
1839
+ elseif($this->ZoomMode=='real')
1840
+ $this->_put('/OpenAction ['.$n.' 0 R /XYZ null null 1]');
1841
+ elseif(!is_string($this->ZoomMode))
1842
+ $this->_put('/OpenAction ['.$n.' 0 R /XYZ null null '.sprintf('%.2F',$this->ZoomMode/100).']');
1843
+ if($this->LayoutMode=='single')
1844
+ $this->_put('/PageLayout /SinglePage');
1845
+ elseif($this->LayoutMode=='continuous')
1846
+ $this->_put('/PageLayout /OneColumn');
1847
+ elseif($this->LayoutMode=='two')
1848
+ $this->_put('/PageLayout /TwoColumnLeft');
1849
+ }
1850
+
1851
+ protected function _putheader()
1852
+ {
1853
+ $this->_put('%PDF-'.$this->PDFVersion);
1854
+ }
1855
+
1856
+ protected function _puttrailer()
1857
+ {
1858
+ $this->_put('/Size '.($this->n+1));
1859
+ $this->_put('/Root '.$this->n.' 0 R');
1860
+ $this->_put('/Info '.($this->n-1).' 0 R');
1861
+ }
1862
+
1863
+ protected function _enddoc()
1864
+ {
1865
+ $this->_putheader();
1866
+ $this->_putpages();
1867
+ $this->_putresources();
1868
+ // Info
1869
+ $this->_newobj();
1870
+ $this->_put('<<');
1871
+ $this->_putinfo();
1872
+ $this->_put('>>');
1873
+ $this->_put('endobj');
1874
+ // Catalog
1875
+ $this->_newobj();
1876
+ $this->_put('<<');
1877
+ $this->_putcatalog();
1878
+ $this->_put('>>');
1879
+ $this->_put('endobj');
1880
+ // Cross-ref
1881
+ $offset = $this->_getoffset();
1882
+ $this->_put('xref');
1883
+ $this->_put('0 '.($this->n+1));
1884
+ $this->_put('0000000000 65535 f ');
1885
+ for($i=1;$i<=$this->n;$i++)
1886
+ $this->_put(sprintf('%010d 00000 n ',$this->offsets[$i]));
1887
+ // Trailer
1888
+ $this->_put('trailer');
1889
+ $this->_put('<<');
1890
+ $this->_puttrailer();
1891
+ $this->_put('>>');
1892
+ $this->_put('startxref');
1893
+ $this->_put($offset);
1894
+ $this->_put('%%EOF');
1895
+ $this->state = 3;
1896
+ }
1897
+ }
1898
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1250.map ADDED
@@ -0,0 +1,251 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !82 U+201A quotesinglbase
131
+ !84 U+201E quotedblbase
132
+ !85 U+2026 ellipsis
133
+ !86 U+2020 dagger
134
+ !87 U+2021 daggerdbl
135
+ !89 U+2030 perthousand
136
+ !8A U+0160 Scaron
137
+ !8B U+2039 guilsinglleft
138
+ !8C U+015A Sacute
139
+ !8D U+0164 Tcaron
140
+ !8E U+017D Zcaron
141
+ !8F U+0179 Zacute
142
+ !91 U+2018 quoteleft
143
+ !92 U+2019 quoteright
144
+ !93 U+201C quotedblleft
145
+ !94 U+201D quotedblright
146
+ !95 U+2022 bullet
147
+ !96 U+2013 endash
148
+ !97 U+2014 emdash
149
+ !99 U+2122 trademark
150
+ !9A U+0161 scaron
151
+ !9B U+203A guilsinglright
152
+ !9C U+015B sacute
153
+ !9D U+0165 tcaron
154
+ !9E U+017E zcaron
155
+ !9F U+017A zacute
156
+ !A0 U+00A0 space
157
+ !A1 U+02C7 caron
158
+ !A2 U+02D8 breve
159
+ !A3 U+0141 Lslash
160
+ !A4 U+00A4 currency
161
+ !A5 U+0104 Aogonek
162
+ !A6 U+00A6 brokenbar
163
+ !A7 U+00A7 section
164
+ !A8 U+00A8 dieresis
165
+ !A9 U+00A9 copyright
166
+ !AA U+015E Scedilla
167
+ !AB U+00AB guillemotleft
168
+ !AC U+00AC logicalnot
169
+ !AD U+00AD hyphen
170
+ !AE U+00AE registered
171
+ !AF U+017B Zdotaccent
172
+ !B0 U+00B0 degree
173
+ !B1 U+00B1 plusminus
174
+ !B2 U+02DB ogonek
175
+ !B3 U+0142 lslash
176
+ !B4 U+00B4 acute
177
+ !B5 U+00B5 mu
178
+ !B6 U+00B6 paragraph
179
+ !B7 U+00B7 periodcentered
180
+ !B8 U+00B8 cedilla
181
+ !B9 U+0105 aogonek
182
+ !BA U+015F scedilla
183
+ !BB U+00BB guillemotright
184
+ !BC U+013D Lcaron
185
+ !BD U+02DD hungarumlaut
186
+ !BE U+013E lcaron
187
+ !BF U+017C zdotaccent
188
+ !C0 U+0154 Racute
189
+ !C1 U+00C1 Aacute
190
+ !C2 U+00C2 Acircumflex
191
+ !C3 U+0102 Abreve
192
+ !C4 U+00C4 Adieresis
193
+ !C5 U+0139 Lacute
194
+ !C6 U+0106 Cacute
195
+ !C7 U+00C7 Ccedilla
196
+ !C8 U+010C Ccaron
197
+ !C9 U+00C9 Eacute
198
+ !CA U+0118 Eogonek
199
+ !CB U+00CB Edieresis
200
+ !CC U+011A Ecaron
201
+ !CD U+00CD Iacute
202
+ !CE U+00CE Icircumflex
203
+ !CF U+010E Dcaron
204
+ !D0 U+0110 Dcroat
205
+ !D1 U+0143 Nacute
206
+ !D2 U+0147 Ncaron
207
+ !D3 U+00D3 Oacute
208
+ !D4 U+00D4 Ocircumflex
209
+ !D5 U+0150 Ohungarumlaut
210
+ !D6 U+00D6 Odieresis
211
+ !D7 U+00D7 multiply
212
+ !D8 U+0158 Rcaron
213
+ !D9 U+016E Uring
214
+ !DA U+00DA Uacute
215
+ !DB U+0170 Uhungarumlaut
216
+ !DC U+00DC Udieresis
217
+ !DD U+00DD Yacute
218
+ !DE U+0162 Tcommaaccent
219
+ !DF U+00DF germandbls
220
+ !E0 U+0155 racute
221
+ !E1 U+00E1 aacute
222
+ !E2 U+00E2 acircumflex
223
+ !E3 U+0103 abreve
224
+ !E4 U+00E4 adieresis
225
+ !E5 U+013A lacute
226
+ !E6 U+0107 cacute
227
+ !E7 U+00E7 ccedilla
228
+ !E8 U+010D ccaron
229
+ !E9 U+00E9 eacute
230
+ !EA U+0119 eogonek
231
+ !EB U+00EB edieresis
232
+ !EC U+011B ecaron
233
+ !ED U+00ED iacute
234
+ !EE U+00EE icircumflex
235
+ !EF U+010F dcaron
236
+ !F0 U+0111 dcroat
237
+ !F1 U+0144 nacute
238
+ !F2 U+0148 ncaron
239
+ !F3 U+00F3 oacute
240
+ !F4 U+00F4 ocircumflex
241
+ !F5 U+0151 ohungarumlaut
242
+ !F6 U+00F6 odieresis
243
+ !F7 U+00F7 divide
244
+ !F8 U+0159 rcaron
245
+ !F9 U+016F uring
246
+ !FA U+00FA uacute
247
+ !FB U+0171 uhungarumlaut
248
+ !FC U+00FC udieresis
249
+ !FD U+00FD yacute
250
+ !FE U+0163 tcommaaccent
251
+ !FF U+02D9 dotaccent
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1251.map ADDED
@@ -0,0 +1,255 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0402 afii10051
130
+ !81 U+0403 afii10052
131
+ !82 U+201A quotesinglbase
132
+ !83 U+0453 afii10100
133
+ !84 U+201E quotedblbase
134
+ !85 U+2026 ellipsis
135
+ !86 U+2020 dagger
136
+ !87 U+2021 daggerdbl
137
+ !88 U+20AC Euro
138
+ !89 U+2030 perthousand
139
+ !8A U+0409 afii10058
140
+ !8B U+2039 guilsinglleft
141
+ !8C U+040A afii10059
142
+ !8D U+040C afii10061
143
+ !8E U+040B afii10060
144
+ !8F U+040F afii10145
145
+ !90 U+0452 afii10099
146
+ !91 U+2018 quoteleft
147
+ !92 U+2019 quoteright
148
+ !93 U+201C quotedblleft
149
+ !94 U+201D quotedblright
150
+ !95 U+2022 bullet
151
+ !96 U+2013 endash
152
+ !97 U+2014 emdash
153
+ !99 U+2122 trademark
154
+ !9A U+0459 afii10106
155
+ !9B U+203A guilsinglright
156
+ !9C U+045A afii10107
157
+ !9D U+045C afii10109
158
+ !9E U+045B afii10108
159
+ !9F U+045F afii10193
160
+ !A0 U+00A0 space
161
+ !A1 U+040E afii10062
162
+ !A2 U+045E afii10110
163
+ !A3 U+0408 afii10057
164
+ !A4 U+00A4 currency
165
+ !A5 U+0490 afii10050
166
+ !A6 U+00A6 brokenbar
167
+ !A7 U+00A7 section
168
+ !A8 U+0401 afii10023
169
+ !A9 U+00A9 copyright
170
+ !AA U+0404 afii10053
171
+ !AB U+00AB guillemotleft
172
+ !AC U+00AC logicalnot
173
+ !AD U+00AD hyphen
174
+ !AE U+00AE registered
175
+ !AF U+0407 afii10056
176
+ !B0 U+00B0 degree
177
+ !B1 U+00B1 plusminus
178
+ !B2 U+0406 afii10055
179
+ !B3 U+0456 afii10103
180
+ !B4 U+0491 afii10098
181
+ !B5 U+00B5 mu
182
+ !B6 U+00B6 paragraph
183
+ !B7 U+00B7 periodcentered
184
+ !B8 U+0451 afii10071
185
+ !B9 U+2116 afii61352
186
+ !BA U+0454 afii10101
187
+ !BB U+00BB guillemotright
188
+ !BC U+0458 afii10105
189
+ !BD U+0405 afii10054
190
+ !BE U+0455 afii10102
191
+ !BF U+0457 afii10104
192
+ !C0 U+0410 afii10017
193
+ !C1 U+0411 afii10018
194
+ !C2 U+0412 afii10019
195
+ !C3 U+0413 afii10020
196
+ !C4 U+0414 afii10021
197
+ !C5 U+0415 afii10022
198
+ !C6 U+0416 afii10024
199
+ !C7 U+0417 afii10025
200
+ !C8 U+0418 afii10026
201
+ !C9 U+0419 afii10027
202
+ !CA U+041A afii10028
203
+ !CB U+041B afii10029
204
+ !CC U+041C afii10030
205
+ !CD U+041D afii10031
206
+ !CE U+041E afii10032
207
+ !CF U+041F afii10033
208
+ !D0 U+0420 afii10034
209
+ !D1 U+0421 afii10035
210
+ !D2 U+0422 afii10036
211
+ !D3 U+0423 afii10037
212
+ !D4 U+0424 afii10038
213
+ !D5 U+0425 afii10039
214
+ !D6 U+0426 afii10040
215
+ !D7 U+0427 afii10041
216
+ !D8 U+0428 afii10042
217
+ !D9 U+0429 afii10043
218
+ !DA U+042A afii10044
219
+ !DB U+042B afii10045
220
+ !DC U+042C afii10046
221
+ !DD U+042D afii10047
222
+ !DE U+042E afii10048
223
+ !DF U+042F afii10049
224
+ !E0 U+0430 afii10065
225
+ !E1 U+0431 afii10066
226
+ !E2 U+0432 afii10067
227
+ !E3 U+0433 afii10068
228
+ !E4 U+0434 afii10069
229
+ !E5 U+0435 afii10070
230
+ !E6 U+0436 afii10072
231
+ !E7 U+0437 afii10073
232
+ !E8 U+0438 afii10074
233
+ !E9 U+0439 afii10075
234
+ !EA U+043A afii10076
235
+ !EB U+043B afii10077
236
+ !EC U+043C afii10078
237
+ !ED U+043D afii10079
238
+ !EE U+043E afii10080
239
+ !EF U+043F afii10081
240
+ !F0 U+0440 afii10082
241
+ !F1 U+0441 afii10083
242
+ !F2 U+0442 afii10084
243
+ !F3 U+0443 afii10085
244
+ !F4 U+0444 afii10086
245
+ !F5 U+0445 afii10087
246
+ !F6 U+0446 afii10088
247
+ !F7 U+0447 afii10089
248
+ !F8 U+0448 afii10090
249
+ !F9 U+0449 afii10091
250
+ !FA U+044A afii10092
251
+ !FB U+044B afii10093
252
+ !FC U+044C afii10094
253
+ !FD U+044D afii10095
254
+ !FE U+044E afii10096
255
+ !FF U+044F afii10097
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1252.map ADDED
@@ -0,0 +1,251 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !82 U+201A quotesinglbase
131
+ !83 U+0192 florin
132
+ !84 U+201E quotedblbase
133
+ !85 U+2026 ellipsis
134
+ !86 U+2020 dagger
135
+ !87 U+2021 daggerdbl
136
+ !88 U+02C6 circumflex
137
+ !89 U+2030 perthousand
138
+ !8A U+0160 Scaron
139
+ !8B U+2039 guilsinglleft
140
+ !8C U+0152 OE
141
+ !8E U+017D Zcaron
142
+ !91 U+2018 quoteleft
143
+ !92 U+2019 quoteright
144
+ !93 U+201C quotedblleft
145
+ !94 U+201D quotedblright
146
+ !95 U+2022 bullet
147
+ !96 U+2013 endash
148
+ !97 U+2014 emdash
149
+ !98 U+02DC tilde
150
+ !99 U+2122 trademark
151
+ !9A U+0161 scaron
152
+ !9B U+203A guilsinglright
153
+ !9C U+0153 oe
154
+ !9E U+017E zcaron
155
+ !9F U+0178 Ydieresis
156
+ !A0 U+00A0 space
157
+ !A1 U+00A1 exclamdown
158
+ !A2 U+00A2 cent
159
+ !A3 U+00A3 sterling
160
+ !A4 U+00A4 currency
161
+ !A5 U+00A5 yen
162
+ !A6 U+00A6 brokenbar
163
+ !A7 U+00A7 section
164
+ !A8 U+00A8 dieresis
165
+ !A9 U+00A9 copyright
166
+ !AA U+00AA ordfeminine
167
+ !AB U+00AB guillemotleft
168
+ !AC U+00AC logicalnot
169
+ !AD U+00AD hyphen
170
+ !AE U+00AE registered
171
+ !AF U+00AF macron
172
+ !B0 U+00B0 degree
173
+ !B1 U+00B1 plusminus
174
+ !B2 U+00B2 twosuperior
175
+ !B3 U+00B3 threesuperior
176
+ !B4 U+00B4 acute
177
+ !B5 U+00B5 mu
178
+ !B6 U+00B6 paragraph
179
+ !B7 U+00B7 periodcentered
180
+ !B8 U+00B8 cedilla
181
+ !B9 U+00B9 onesuperior
182
+ !BA U+00BA ordmasculine
183
+ !BB U+00BB guillemotright
184
+ !BC U+00BC onequarter
185
+ !BD U+00BD onehalf
186
+ !BE U+00BE threequarters
187
+ !BF U+00BF questiondown
188
+ !C0 U+00C0 Agrave
189
+ !C1 U+00C1 Aacute
190
+ !C2 U+00C2 Acircumflex
191
+ !C3 U+00C3 Atilde
192
+ !C4 U+00C4 Adieresis
193
+ !C5 U+00C5 Aring
194
+ !C6 U+00C6 AE
195
+ !C7 U+00C7 Ccedilla
196
+ !C8 U+00C8 Egrave
197
+ !C9 U+00C9 Eacute
198
+ !CA U+00CA Ecircumflex
199
+ !CB U+00CB Edieresis
200
+ !CC U+00CC Igrave
201
+ !CD U+00CD Iacute
202
+ !CE U+00CE Icircumflex
203
+ !CF U+00CF Idieresis
204
+ !D0 U+00D0 Eth
205
+ !D1 U+00D1 Ntilde
206
+ !D2 U+00D2 Ograve
207
+ !D3 U+00D3 Oacute
208
+ !D4 U+00D4 Ocircumflex
209
+ !D5 U+00D5 Otilde
210
+ !D6 U+00D6 Odieresis
211
+ !D7 U+00D7 multiply
212
+ !D8 U+00D8 Oslash
213
+ !D9 U+00D9 Ugrave
214
+ !DA U+00DA Uacute
215
+ !DB U+00DB Ucircumflex
216
+ !DC U+00DC Udieresis
217
+ !DD U+00DD Yacute
218
+ !DE U+00DE Thorn
219
+ !DF U+00DF germandbls
220
+ !E0 U+00E0 agrave
221
+ !E1 U+00E1 aacute
222
+ !E2 U+00E2 acircumflex
223
+ !E3 U+00E3 atilde
224
+ !E4 U+00E4 adieresis
225
+ !E5 U+00E5 aring
226
+ !E6 U+00E6 ae
227
+ !E7 U+00E7 ccedilla
228
+ !E8 U+00E8 egrave
229
+ !E9 U+00E9 eacute
230
+ !EA U+00EA ecircumflex
231
+ !EB U+00EB edieresis
232
+ !EC U+00EC igrave
233
+ !ED U+00ED iacute
234
+ !EE U+00EE icircumflex
235
+ !EF U+00EF idieresis
236
+ !F0 U+00F0 eth
237
+ !F1 U+00F1 ntilde
238
+ !F2 U+00F2 ograve
239
+ !F3 U+00F3 oacute
240
+ !F4 U+00F4 ocircumflex
241
+ !F5 U+00F5 otilde
242
+ !F6 U+00F6 odieresis
243
+ !F7 U+00F7 divide
244
+ !F8 U+00F8 oslash
245
+ !F9 U+00F9 ugrave
246
+ !FA U+00FA uacute
247
+ !FB U+00FB ucircumflex
248
+ !FC U+00FC udieresis
249
+ !FD U+00FD yacute
250
+ !FE U+00FE thorn
251
+ !FF U+00FF ydieresis
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1253.map ADDED
@@ -0,0 +1,239 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !82 U+201A quotesinglbase
131
+ !83 U+0192 florin
132
+ !84 U+201E quotedblbase
133
+ !85 U+2026 ellipsis
134
+ !86 U+2020 dagger
135
+ !87 U+2021 daggerdbl
136
+ !89 U+2030 perthousand
137
+ !8B U+2039 guilsinglleft
138
+ !91 U+2018 quoteleft
139
+ !92 U+2019 quoteright
140
+ !93 U+201C quotedblleft
141
+ !94 U+201D quotedblright
142
+ !95 U+2022 bullet
143
+ !96 U+2013 endash
144
+ !97 U+2014 emdash
145
+ !99 U+2122 trademark
146
+ !9B U+203A guilsinglright
147
+ !A0 U+00A0 space
148
+ !A1 U+0385 dieresistonos
149
+ !A2 U+0386 Alphatonos
150
+ !A3 U+00A3 sterling
151
+ !A4 U+00A4 currency
152
+ !A5 U+00A5 yen
153
+ !A6 U+00A6 brokenbar
154
+ !A7 U+00A7 section
155
+ !A8 U+00A8 dieresis
156
+ !A9 U+00A9 copyright
157
+ !AB U+00AB guillemotleft
158
+ !AC U+00AC logicalnot
159
+ !AD U+00AD hyphen
160
+ !AE U+00AE registered
161
+ !AF U+2015 afii00208
162
+ !B0 U+00B0 degree
163
+ !B1 U+00B1 plusminus
164
+ !B2 U+00B2 twosuperior
165
+ !B3 U+00B3 threesuperior
166
+ !B4 U+0384 tonos
167
+ !B5 U+00B5 mu
168
+ !B6 U+00B6 paragraph
169
+ !B7 U+00B7 periodcentered
170
+ !B8 U+0388 Epsilontonos
171
+ !B9 U+0389 Etatonos
172
+ !BA U+038A Iotatonos
173
+ !BB U+00BB guillemotright
174
+ !BC U+038C Omicrontonos
175
+ !BD U+00BD onehalf
176
+ !BE U+038E Upsilontonos
177
+ !BF U+038F Omegatonos
178
+ !C0 U+0390 iotadieresistonos
179
+ !C1 U+0391 Alpha
180
+ !C2 U+0392 Beta
181
+ !C3 U+0393 Gamma
182
+ !C4 U+0394 Delta
183
+ !C5 U+0395 Epsilon
184
+ !C6 U+0396 Zeta
185
+ !C7 U+0397 Eta
186
+ !C8 U+0398 Theta
187
+ !C9 U+0399 Iota
188
+ !CA U+039A Kappa
189
+ !CB U+039B Lambda
190
+ !CC U+039C Mu
191
+ !CD U+039D Nu
192
+ !CE U+039E Xi
193
+ !CF U+039F Omicron
194
+ !D0 U+03A0 Pi
195
+ !D1 U+03A1 Rho
196
+ !D3 U+03A3 Sigma
197
+ !D4 U+03A4 Tau
198
+ !D5 U+03A5 Upsilon
199
+ !D6 U+03A6 Phi
200
+ !D7 U+03A7 Chi
201
+ !D8 U+03A8 Psi
202
+ !D9 U+03A9 Omega
203
+ !DA U+03AA Iotadieresis
204
+ !DB U+03AB Upsilondieresis
205
+ !DC U+03AC alphatonos
206
+ !DD U+03AD epsilontonos
207
+ !DE U+03AE etatonos
208
+ !DF U+03AF iotatonos
209
+ !E0 U+03B0 upsilondieresistonos
210
+ !E1 U+03B1 alpha
211
+ !E2 U+03B2 beta
212
+ !E3 U+03B3 gamma
213
+ !E4 U+03B4 delta
214
+ !E5 U+03B5 epsilon
215
+ !E6 U+03B6 zeta
216
+ !E7 U+03B7 eta
217
+ !E8 U+03B8 theta
218
+ !E9 U+03B9 iota
219
+ !EA U+03BA kappa
220
+ !EB U+03BB lambda
221
+ !EC U+03BC mu
222
+ !ED U+03BD nu
223
+ !EE U+03BE xi
224
+ !EF U+03BF omicron
225
+ !F0 U+03C0 pi
226
+ !F1 U+03C1 rho
227
+ !F2 U+03C2 sigma1
228
+ !F3 U+03C3 sigma
229
+ !F4 U+03C4 tau
230
+ !F5 U+03C5 upsilon
231
+ !F6 U+03C6 phi
232
+ !F7 U+03C7 chi
233
+ !F8 U+03C8 psi
234
+ !F9 U+03C9 omega
235
+ !FA U+03CA iotadieresis
236
+ !FB U+03CB upsilondieresis
237
+ !FC U+03CC omicrontonos
238
+ !FD U+03CD upsilontonos
239
+ !FE U+03CE omegatonos
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1254.map ADDED
@@ -0,0 +1,249 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !82 U+201A quotesinglbase
131
+ !83 U+0192 florin
132
+ !84 U+201E quotedblbase
133
+ !85 U+2026 ellipsis
134
+ !86 U+2020 dagger
135
+ !87 U+2021 daggerdbl
136
+ !88 U+02C6 circumflex
137
+ !89 U+2030 perthousand
138
+ !8A U+0160 Scaron
139
+ !8B U+2039 guilsinglleft
140
+ !8C U+0152 OE
141
+ !91 U+2018 quoteleft
142
+ !92 U+2019 quoteright
143
+ !93 U+201C quotedblleft
144
+ !94 U+201D quotedblright
145
+ !95 U+2022 bullet
146
+ !96 U+2013 endash
147
+ !97 U+2014 emdash
148
+ !98 U+02DC tilde
149
+ !99 U+2122 trademark
150
+ !9A U+0161 scaron
151
+ !9B U+203A guilsinglright
152
+ !9C U+0153 oe
153
+ !9F U+0178 Ydieresis
154
+ !A0 U+00A0 space
155
+ !A1 U+00A1 exclamdown
156
+ !A2 U+00A2 cent
157
+ !A3 U+00A3 sterling
158
+ !A4 U+00A4 currency
159
+ !A5 U+00A5 yen
160
+ !A6 U+00A6 brokenbar
161
+ !A7 U+00A7 section
162
+ !A8 U+00A8 dieresis
163
+ !A9 U+00A9 copyright
164
+ !AA U+00AA ordfeminine
165
+ !AB U+00AB guillemotleft
166
+ !AC U+00AC logicalnot
167
+ !AD U+00AD hyphen
168
+ !AE U+00AE registered
169
+ !AF U+00AF macron
170
+ !B0 U+00B0 degree
171
+ !B1 U+00B1 plusminus
172
+ !B2 U+00B2 twosuperior
173
+ !B3 U+00B3 threesuperior
174
+ !B4 U+00B4 acute
175
+ !B5 U+00B5 mu
176
+ !B6 U+00B6 paragraph
177
+ !B7 U+00B7 periodcentered
178
+ !B8 U+00B8 cedilla
179
+ !B9 U+00B9 onesuperior
180
+ !BA U+00BA ordmasculine
181
+ !BB U+00BB guillemotright
182
+ !BC U+00BC onequarter
183
+ !BD U+00BD onehalf
184
+ !BE U+00BE threequarters
185
+ !BF U+00BF questiondown
186
+ !C0 U+00C0 Agrave
187
+ !C1 U+00C1 Aacute
188
+ !C2 U+00C2 Acircumflex
189
+ !C3 U+00C3 Atilde
190
+ !C4 U+00C4 Adieresis
191
+ !C5 U+00C5 Aring
192
+ !C6 U+00C6 AE
193
+ !C7 U+00C7 Ccedilla
194
+ !C8 U+00C8 Egrave
195
+ !C9 U+00C9 Eacute
196
+ !CA U+00CA Ecircumflex
197
+ !CB U+00CB Edieresis
198
+ !CC U+00CC Igrave
199
+ !CD U+00CD Iacute
200
+ !CE U+00CE Icircumflex
201
+ !CF U+00CF Idieresis
202
+ !D0 U+011E Gbreve
203
+ !D1 U+00D1 Ntilde
204
+ !D2 U+00D2 Ograve
205
+ !D3 U+00D3 Oacute
206
+ !D4 U+00D4 Ocircumflex
207
+ !D5 U+00D5 Otilde
208
+ !D6 U+00D6 Odieresis
209
+ !D7 U+00D7 multiply
210
+ !D8 U+00D8 Oslash
211
+ !D9 U+00D9 Ugrave
212
+ !DA U+00DA Uacute
213
+ !DB U+00DB Ucircumflex
214
+ !DC U+00DC Udieresis
215
+ !DD U+0130 Idotaccent
216
+ !DE U+015E Scedilla
217
+ !DF U+00DF germandbls
218
+ !E0 U+00E0 agrave
219
+ !E1 U+00E1 aacute
220
+ !E2 U+00E2 acircumflex
221
+ !E3 U+00E3 atilde
222
+ !E4 U+00E4 adieresis
223
+ !E5 U+00E5 aring
224
+ !E6 U+00E6 ae
225
+ !E7 U+00E7 ccedilla
226
+ !E8 U+00E8 egrave
227
+ !E9 U+00E9 eacute
228
+ !EA U+00EA ecircumflex
229
+ !EB U+00EB edieresis
230
+ !EC U+00EC igrave
231
+ !ED U+00ED iacute
232
+ !EE U+00EE icircumflex
233
+ !EF U+00EF idieresis
234
+ !F0 U+011F gbreve
235
+ !F1 U+00F1 ntilde
236
+ !F2 U+00F2 ograve
237
+ !F3 U+00F3 oacute
238
+ !F4 U+00F4 ocircumflex
239
+ !F5 U+00F5 otilde
240
+ !F6 U+00F6 odieresis
241
+ !F7 U+00F7 divide
242
+ !F8 U+00F8 oslash
243
+ !F9 U+00F9 ugrave
244
+ !FA U+00FA uacute
245
+ !FB U+00FB ucircumflex
246
+ !FC U+00FC udieresis
247
+ !FD U+0131 dotlessi
248
+ !FE U+015F scedilla
249
+ !FF U+00FF ydieresis
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1255.map ADDED
@@ -0,0 +1,233 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !82 U+201A quotesinglbase
131
+ !83 U+0192 florin
132
+ !84 U+201E quotedblbase
133
+ !85 U+2026 ellipsis
134
+ !86 U+2020 dagger
135
+ !87 U+2021 daggerdbl
136
+ !88 U+02C6 circumflex
137
+ !89 U+2030 perthousand
138
+ !8B U+2039 guilsinglleft
139
+ !91 U+2018 quoteleft
140
+ !92 U+2019 quoteright
141
+ !93 U+201C quotedblleft
142
+ !94 U+201D quotedblright
143
+ !95 U+2022 bullet
144
+ !96 U+2013 endash
145
+ !97 U+2014 emdash
146
+ !98 U+02DC tilde
147
+ !99 U+2122 trademark
148
+ !9B U+203A guilsinglright
149
+ !A0 U+00A0 space
150
+ !A1 U+00A1 exclamdown
151
+ !A2 U+00A2 cent
152
+ !A3 U+00A3 sterling
153
+ !A4 U+20AA afii57636
154
+ !A5 U+00A5 yen
155
+ !A6 U+00A6 brokenbar
156
+ !A7 U+00A7 section
157
+ !A8 U+00A8 dieresis
158
+ !A9 U+00A9 copyright
159
+ !AA U+00D7 multiply
160
+ !AB U+00AB guillemotleft
161
+ !AC U+00AC logicalnot
162
+ !AD U+00AD sfthyphen
163
+ !AE U+00AE registered
164
+ !AF U+00AF macron
165
+ !B0 U+00B0 degree
166
+ !B1 U+00B1 plusminus
167
+ !B2 U+00B2 twosuperior
168
+ !B3 U+00B3 threesuperior
169
+ !B4 U+00B4 acute
170
+ !B5 U+00B5 mu
171
+ !B6 U+00B6 paragraph
172
+ !B7 U+00B7 middot
173
+ !B8 U+00B8 cedilla
174
+ !B9 U+00B9 onesuperior
175
+ !BA U+00F7 divide
176
+ !BB U+00BB guillemotright
177
+ !BC U+00BC onequarter
178
+ !BD U+00BD onehalf
179
+ !BE U+00BE threequarters
180
+ !BF U+00BF questiondown
181
+ !C0 U+05B0 afii57799
182
+ !C1 U+05B1 afii57801
183
+ !C2 U+05B2 afii57800
184
+ !C3 U+05B3 afii57802
185
+ !C4 U+05B4 afii57793
186
+ !C5 U+05B5 afii57794
187
+ !C6 U+05B6 afii57795
188
+ !C7 U+05B7 afii57798
189
+ !C8 U+05B8 afii57797
190
+ !C9 U+05B9 afii57806
191
+ !CB U+05BB afii57796
192
+ !CC U+05BC afii57807
193
+ !CD U+05BD afii57839
194
+ !CE U+05BE afii57645
195
+ !CF U+05BF afii57841
196
+ !D0 U+05C0 afii57842
197
+ !D1 U+05C1 afii57804
198
+ !D2 U+05C2 afii57803
199
+ !D3 U+05C3 afii57658
200
+ !D4 U+05F0 afii57716
201
+ !D5 U+05F1 afii57717
202
+ !D6 U+05F2 afii57718
203
+ !D7 U+05F3 gereshhebrew
204
+ !D8 U+05F4 gershayimhebrew
205
+ !E0 U+05D0 afii57664
206
+ !E1 U+05D1 afii57665
207
+ !E2 U+05D2 afii57666
208
+ !E3 U+05D3 afii57667
209
+ !E4 U+05D4 afii57668
210
+ !E5 U+05D5 afii57669
211
+ !E6 U+05D6 afii57670
212
+ !E7 U+05D7 afii57671
213
+ !E8 U+05D8 afii57672
214
+ !E9 U+05D9 afii57673
215
+ !EA U+05DA afii57674
216
+ !EB U+05DB afii57675
217
+ !EC U+05DC afii57676
218
+ !ED U+05DD afii57677
219
+ !EE U+05DE afii57678
220
+ !EF U+05DF afii57679
221
+ !F0 U+05E0 afii57680
222
+ !F1 U+05E1 afii57681
223
+ !F2 U+05E2 afii57682
224
+ !F3 U+05E3 afii57683
225
+ !F4 U+05E4 afii57684
226
+ !F5 U+05E5 afii57685
227
+ !F6 U+05E6 afii57686
228
+ !F7 U+05E7 afii57687
229
+ !F8 U+05E8 afii57688
230
+ !F9 U+05E9 afii57689
231
+ !FA U+05EA afii57690
232
+ !FD U+200E afii299
233
+ !FE U+200F afii300
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1257.map ADDED
@@ -0,0 +1,244 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !82 U+201A quotesinglbase
131
+ !84 U+201E quotedblbase
132
+ !85 U+2026 ellipsis
133
+ !86 U+2020 dagger
134
+ !87 U+2021 daggerdbl
135
+ !89 U+2030 perthousand
136
+ !8B U+2039 guilsinglleft
137
+ !8D U+00A8 dieresis
138
+ !8E U+02C7 caron
139
+ !8F U+00B8 cedilla
140
+ !91 U+2018 quoteleft
141
+ !92 U+2019 quoteright
142
+ !93 U+201C quotedblleft
143
+ !94 U+201D quotedblright
144
+ !95 U+2022 bullet
145
+ !96 U+2013 endash
146
+ !97 U+2014 emdash
147
+ !99 U+2122 trademark
148
+ !9B U+203A guilsinglright
149
+ !9D U+00AF macron
150
+ !9E U+02DB ogonek
151
+ !A0 U+00A0 space
152
+ !A2 U+00A2 cent
153
+ !A3 U+00A3 sterling
154
+ !A4 U+00A4 currency
155
+ !A6 U+00A6 brokenbar
156
+ !A7 U+00A7 section
157
+ !A8 U+00D8 Oslash
158
+ !A9 U+00A9 copyright
159
+ !AA U+0156 Rcommaaccent
160
+ !AB U+00AB guillemotleft
161
+ !AC U+00AC logicalnot
162
+ !AD U+00AD hyphen
163
+ !AE U+00AE registered
164
+ !AF U+00C6 AE
165
+ !B0 U+00B0 degree
166
+ !B1 U+00B1 plusminus
167
+ !B2 U+00B2 twosuperior
168
+ !B3 U+00B3 threesuperior
169
+ !B4 U+00B4 acute
170
+ !B5 U+00B5 mu
171
+ !B6 U+00B6 paragraph
172
+ !B7 U+00B7 periodcentered
173
+ !B8 U+00F8 oslash
174
+ !B9 U+00B9 onesuperior
175
+ !BA U+0157 rcommaaccent
176
+ !BB U+00BB guillemotright
177
+ !BC U+00BC onequarter
178
+ !BD U+00BD onehalf
179
+ !BE U+00BE threequarters
180
+ !BF U+00E6 ae
181
+ !C0 U+0104 Aogonek
182
+ !C1 U+012E Iogonek
183
+ !C2 U+0100 Amacron
184
+ !C3 U+0106 Cacute
185
+ !C4 U+00C4 Adieresis
186
+ !C5 U+00C5 Aring
187
+ !C6 U+0118 Eogonek
188
+ !C7 U+0112 Emacron
189
+ !C8 U+010C Ccaron
190
+ !C9 U+00C9 Eacute
191
+ !CA U+0179 Zacute
192
+ !CB U+0116 Edotaccent
193
+ !CC U+0122 Gcommaaccent
194
+ !CD U+0136 Kcommaaccent
195
+ !CE U+012A Imacron
196
+ !CF U+013B Lcommaaccent
197
+ !D0 U+0160 Scaron
198
+ !D1 U+0143 Nacute
199
+ !D2 U+0145 Ncommaaccent
200
+ !D3 U+00D3 Oacute
201
+ !D4 U+014C Omacron
202
+ !D5 U+00D5 Otilde
203
+ !D6 U+00D6 Odieresis
204
+ !D7 U+00D7 multiply
205
+ !D8 U+0172 Uogonek
206
+ !D9 U+0141 Lslash
207
+ !DA U+015A Sacute
208
+ !DB U+016A Umacron
209
+ !DC U+00DC Udieresis
210
+ !DD U+017B Zdotaccent
211
+ !DE U+017D Zcaron
212
+ !DF U+00DF germandbls
213
+ !E0 U+0105 aogonek
214
+ !E1 U+012F iogonek
215
+ !E2 U+0101 amacron
216
+ !E3 U+0107 cacute
217
+ !E4 U+00E4 adieresis
218
+ !E5 U+00E5 aring
219
+ !E6 U+0119 eogonek
220
+ !E7 U+0113 emacron
221
+ !E8 U+010D ccaron
222
+ !E9 U+00E9 eacute
223
+ !EA U+017A zacute
224
+ !EB U+0117 edotaccent
225
+ !EC U+0123 gcommaaccent
226
+ !ED U+0137 kcommaaccent
227
+ !EE U+012B imacron
228
+ !EF U+013C lcommaaccent
229
+ !F0 U+0161 scaron
230
+ !F1 U+0144 nacute
231
+ !F2 U+0146 ncommaaccent
232
+ !F3 U+00F3 oacute
233
+ !F4 U+014D omacron
234
+ !F5 U+00F5 otilde
235
+ !F6 U+00F6 odieresis
236
+ !F7 U+00F7 divide
237
+ !F8 U+0173 uogonek
238
+ !F9 U+0142 lslash
239
+ !FA U+015B sacute
240
+ !FB U+016B umacron
241
+ !FC U+00FC udieresis
242
+ !FD U+017C zdotaccent
243
+ !FE U+017E zcaron
244
+ !FF U+02D9 dotaccent
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp1258.map ADDED
@@ -0,0 +1,247 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !82 U+201A quotesinglbase
131
+ !83 U+0192 florin
132
+ !84 U+201E quotedblbase
133
+ !85 U+2026 ellipsis
134
+ !86 U+2020 dagger
135
+ !87 U+2021 daggerdbl
136
+ !88 U+02C6 circumflex
137
+ !89 U+2030 perthousand
138
+ !8B U+2039 guilsinglleft
139
+ !8C U+0152 OE
140
+ !91 U+2018 quoteleft
141
+ !92 U+2019 quoteright
142
+ !93 U+201C quotedblleft
143
+ !94 U+201D quotedblright
144
+ !95 U+2022 bullet
145
+ !96 U+2013 endash
146
+ !97 U+2014 emdash
147
+ !98 U+02DC tilde
148
+ !99 U+2122 trademark
149
+ !9B U+203A guilsinglright
150
+ !9C U+0153 oe
151
+ !9F U+0178 Ydieresis
152
+ !A0 U+00A0 space
153
+ !A1 U+00A1 exclamdown
154
+ !A2 U+00A2 cent
155
+ !A3 U+00A3 sterling
156
+ !A4 U+00A4 currency
157
+ !A5 U+00A5 yen
158
+ !A6 U+00A6 brokenbar
159
+ !A7 U+00A7 section
160
+ !A8 U+00A8 dieresis
161
+ !A9 U+00A9 copyright
162
+ !AA U+00AA ordfeminine
163
+ !AB U+00AB guillemotleft
164
+ !AC U+00AC logicalnot
165
+ !AD U+00AD hyphen
166
+ !AE U+00AE registered
167
+ !AF U+00AF macron
168
+ !B0 U+00B0 degree
169
+ !B1 U+00B1 plusminus
170
+ !B2 U+00B2 twosuperior
171
+ !B3 U+00B3 threesuperior
172
+ !B4 U+00B4 acute
173
+ !B5 U+00B5 mu
174
+ !B6 U+00B6 paragraph
175
+ !B7 U+00B7 periodcentered
176
+ !B8 U+00B8 cedilla
177
+ !B9 U+00B9 onesuperior
178
+ !BA U+00BA ordmasculine
179
+ !BB U+00BB guillemotright
180
+ !BC U+00BC onequarter
181
+ !BD U+00BD onehalf
182
+ !BE U+00BE threequarters
183
+ !BF U+00BF questiondown
184
+ !C0 U+00C0 Agrave
185
+ !C1 U+00C1 Aacute
186
+ !C2 U+00C2 Acircumflex
187
+ !C3 U+0102 Abreve
188
+ !C4 U+00C4 Adieresis
189
+ !C5 U+00C5 Aring
190
+ !C6 U+00C6 AE
191
+ !C7 U+00C7 Ccedilla
192
+ !C8 U+00C8 Egrave
193
+ !C9 U+00C9 Eacute
194
+ !CA U+00CA Ecircumflex
195
+ !CB U+00CB Edieresis
196
+ !CC U+0300 gravecomb
197
+ !CD U+00CD Iacute
198
+ !CE U+00CE Icircumflex
199
+ !CF U+00CF Idieresis
200
+ !D0 U+0110 Dcroat
201
+ !D1 U+00D1 Ntilde
202
+ !D2 U+0309 hookabovecomb
203
+ !D3 U+00D3 Oacute
204
+ !D4 U+00D4 Ocircumflex
205
+ !D5 U+01A0 Ohorn
206
+ !D6 U+00D6 Odieresis
207
+ !D7 U+00D7 multiply
208
+ !D8 U+00D8 Oslash
209
+ !D9 U+00D9 Ugrave
210
+ !DA U+00DA Uacute
211
+ !DB U+00DB Ucircumflex
212
+ !DC U+00DC Udieresis
213
+ !DD U+01AF Uhorn
214
+ !DE U+0303 tildecomb
215
+ !DF U+00DF germandbls
216
+ !E0 U+00E0 agrave
217
+ !E1 U+00E1 aacute
218
+ !E2 U+00E2 acircumflex
219
+ !E3 U+0103 abreve
220
+ !E4 U+00E4 adieresis
221
+ !E5 U+00E5 aring
222
+ !E6 U+00E6 ae
223
+ !E7 U+00E7 ccedilla
224
+ !E8 U+00E8 egrave
225
+ !E9 U+00E9 eacute
226
+ !EA U+00EA ecircumflex
227
+ !EB U+00EB edieresis
228
+ !EC U+0301 acutecomb
229
+ !ED U+00ED iacute
230
+ !EE U+00EE icircumflex
231
+ !EF U+00EF idieresis
232
+ !F0 U+0111 dcroat
233
+ !F1 U+00F1 ntilde
234
+ !F2 U+0323 dotbelowcomb
235
+ !F3 U+00F3 oacute
236
+ !F4 U+00F4 ocircumflex
237
+ !F5 U+01A1 ohorn
238
+ !F6 U+00F6 odieresis
239
+ !F7 U+00F7 divide
240
+ !F8 U+00F8 oslash
241
+ !F9 U+00F9 ugrave
242
+ !FA U+00FA uacute
243
+ !FB U+00FB ucircumflex
244
+ !FC U+00FC udieresis
245
+ !FD U+01B0 uhorn
246
+ !FE U+20AB dong
247
+ !FF U+00FF ydieresis
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/cp874.map ADDED
@@ -0,0 +1,225 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+20AC Euro
130
+ !85 U+2026 ellipsis
131
+ !91 U+2018 quoteleft
132
+ !92 U+2019 quoteright
133
+ !93 U+201C quotedblleft
134
+ !94 U+201D quotedblright
135
+ !95 U+2022 bullet
136
+ !96 U+2013 endash
137
+ !97 U+2014 emdash
138
+ !A0 U+00A0 space
139
+ !A1 U+0E01 kokaithai
140
+ !A2 U+0E02 khokhaithai
141
+ !A3 U+0E03 khokhuatthai
142
+ !A4 U+0E04 khokhwaithai
143
+ !A5 U+0E05 khokhonthai
144
+ !A6 U+0E06 khorakhangthai
145
+ !A7 U+0E07 ngonguthai
146
+ !A8 U+0E08 chochanthai
147
+ !A9 U+0E09 chochingthai
148
+ !AA U+0E0A chochangthai
149
+ !AB U+0E0B sosothai
150
+ !AC U+0E0C chochoethai
151
+ !AD U+0E0D yoyingthai
152
+ !AE U+0E0E dochadathai
153
+ !AF U+0E0F topatakthai
154
+ !B0 U+0E10 thothanthai
155
+ !B1 U+0E11 thonangmonthothai
156
+ !B2 U+0E12 thophuthaothai
157
+ !B3 U+0E13 nonenthai
158
+ !B4 U+0E14 dodekthai
159
+ !B5 U+0E15 totaothai
160
+ !B6 U+0E16 thothungthai
161
+ !B7 U+0E17 thothahanthai
162
+ !B8 U+0E18 thothongthai
163
+ !B9 U+0E19 nonuthai
164
+ !BA U+0E1A bobaimaithai
165
+ !BB U+0E1B poplathai
166
+ !BC U+0E1C phophungthai
167
+ !BD U+0E1D fofathai
168
+ !BE U+0E1E phophanthai
169
+ !BF U+0E1F fofanthai
170
+ !C0 U+0E20 phosamphaothai
171
+ !C1 U+0E21 momathai
172
+ !C2 U+0E22 yoyakthai
173
+ !C3 U+0E23 roruathai
174
+ !C4 U+0E24 ruthai
175
+ !C5 U+0E25 lolingthai
176
+ !C6 U+0E26 luthai
177
+ !C7 U+0E27 wowaenthai
178
+ !C8 U+0E28 sosalathai
179
+ !C9 U+0E29 sorusithai
180
+ !CA U+0E2A sosuathai
181
+ !CB U+0E2B hohipthai
182
+ !CC U+0E2C lochulathai
183
+ !CD U+0E2D oangthai
184
+ !CE U+0E2E honokhukthai
185
+ !CF U+0E2F paiyannoithai
186
+ !D0 U+0E30 saraathai
187
+ !D1 U+0E31 maihanakatthai
188
+ !D2 U+0E32 saraaathai
189
+ !D3 U+0E33 saraamthai
190
+ !D4 U+0E34 saraithai
191
+ !D5 U+0E35 saraiithai
192
+ !D6 U+0E36 sarauethai
193
+ !D7 U+0E37 saraueethai
194
+ !D8 U+0E38 sarauthai
195
+ !D9 U+0E39 sarauuthai
196
+ !DA U+0E3A phinthuthai
197
+ !DF U+0E3F bahtthai
198
+ !E0 U+0E40 saraethai
199
+ !E1 U+0E41 saraaethai
200
+ !E2 U+0E42 saraothai
201
+ !E3 U+0E43 saraaimaimuanthai
202
+ !E4 U+0E44 saraaimaimalaithai
203
+ !E5 U+0E45 lakkhangyaothai
204
+ !E6 U+0E46 maiyamokthai
205
+ !E7 U+0E47 maitaikhuthai
206
+ !E8 U+0E48 maiekthai
207
+ !E9 U+0E49 maithothai
208
+ !EA U+0E4A maitrithai
209
+ !EB U+0E4B maichattawathai
210
+ !EC U+0E4C thanthakhatthai
211
+ !ED U+0E4D nikhahitthai
212
+ !EE U+0E4E yamakkanthai
213
+ !EF U+0E4F fongmanthai
214
+ !F0 U+0E50 zerothai
215
+ !F1 U+0E51 onethai
216
+ !F2 U+0E52 twothai
217
+ !F3 U+0E53 threethai
218
+ !F4 U+0E54 fourthai
219
+ !F5 U+0E55 fivethai
220
+ !F6 U+0E56 sixthai
221
+ !F7 U+0E57 seventhai
222
+ !F8 U+0E58 eightthai
223
+ !F9 U+0E59 ninethai
224
+ !FA U+0E5A angkhankhuthai
225
+ !FB U+0E5B khomutthai
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-1.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+00A1 exclamdown
163
+ !A2 U+00A2 cent
164
+ !A3 U+00A3 sterling
165
+ !A4 U+00A4 currency
166
+ !A5 U+00A5 yen
167
+ !A6 U+00A6 brokenbar
168
+ !A7 U+00A7 section
169
+ !A8 U+00A8 dieresis
170
+ !A9 U+00A9 copyright
171
+ !AA U+00AA ordfeminine
172
+ !AB U+00AB guillemotleft
173
+ !AC U+00AC logicalnot
174
+ !AD U+00AD hyphen
175
+ !AE U+00AE registered
176
+ !AF U+00AF macron
177
+ !B0 U+00B0 degree
178
+ !B1 U+00B1 plusminus
179
+ !B2 U+00B2 twosuperior
180
+ !B3 U+00B3 threesuperior
181
+ !B4 U+00B4 acute
182
+ !B5 U+00B5 mu
183
+ !B6 U+00B6 paragraph
184
+ !B7 U+00B7 periodcentered
185
+ !B8 U+00B8 cedilla
186
+ !B9 U+00B9 onesuperior
187
+ !BA U+00BA ordmasculine
188
+ !BB U+00BB guillemotright
189
+ !BC U+00BC onequarter
190
+ !BD U+00BD onehalf
191
+ !BE U+00BE threequarters
192
+ !BF U+00BF questiondown
193
+ !C0 U+00C0 Agrave
194
+ !C1 U+00C1 Aacute
195
+ !C2 U+00C2 Acircumflex
196
+ !C3 U+00C3 Atilde
197
+ !C4 U+00C4 Adieresis
198
+ !C5 U+00C5 Aring
199
+ !C6 U+00C6 AE
200
+ !C7 U+00C7 Ccedilla
201
+ !C8 U+00C8 Egrave
202
+ !C9 U+00C9 Eacute
203
+ !CA U+00CA Ecircumflex
204
+ !CB U+00CB Edieresis
205
+ !CC U+00CC Igrave
206
+ !CD U+00CD Iacute
207
+ !CE U+00CE Icircumflex
208
+ !CF U+00CF Idieresis
209
+ !D0 U+00D0 Eth
210
+ !D1 U+00D1 Ntilde
211
+ !D2 U+00D2 Ograve
212
+ !D3 U+00D3 Oacute
213
+ !D4 U+00D4 Ocircumflex
214
+ !D5 U+00D5 Otilde
215
+ !D6 U+00D6 Odieresis
216
+ !D7 U+00D7 multiply
217
+ !D8 U+00D8 Oslash
218
+ !D9 U+00D9 Ugrave
219
+ !DA U+00DA Uacute
220
+ !DB U+00DB Ucircumflex
221
+ !DC U+00DC Udieresis
222
+ !DD U+00DD Yacute
223
+ !DE U+00DE Thorn
224
+ !DF U+00DF germandbls
225
+ !E0 U+00E0 agrave
226
+ !E1 U+00E1 aacute
227
+ !E2 U+00E2 acircumflex
228
+ !E3 U+00E3 atilde
229
+ !E4 U+00E4 adieresis
230
+ !E5 U+00E5 aring
231
+ !E6 U+00E6 ae
232
+ !E7 U+00E7 ccedilla
233
+ !E8 U+00E8 egrave
234
+ !E9 U+00E9 eacute
235
+ !EA U+00EA ecircumflex
236
+ !EB U+00EB edieresis
237
+ !EC U+00EC igrave
238
+ !ED U+00ED iacute
239
+ !EE U+00EE icircumflex
240
+ !EF U+00EF idieresis
241
+ !F0 U+00F0 eth
242
+ !F1 U+00F1 ntilde
243
+ !F2 U+00F2 ograve
244
+ !F3 U+00F3 oacute
245
+ !F4 U+00F4 ocircumflex
246
+ !F5 U+00F5 otilde
247
+ !F6 U+00F6 odieresis
248
+ !F7 U+00F7 divide
249
+ !F8 U+00F8 oslash
250
+ !F9 U+00F9 ugrave
251
+ !FA U+00FA uacute
252
+ !FB U+00FB ucircumflex
253
+ !FC U+00FC udieresis
254
+ !FD U+00FD yacute
255
+ !FE U+00FE thorn
256
+ !FF U+00FF ydieresis
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-11.map ADDED
@@ -0,0 +1,248 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+0E01 kokaithai
163
+ !A2 U+0E02 khokhaithai
164
+ !A3 U+0E03 khokhuatthai
165
+ !A4 U+0E04 khokhwaithai
166
+ !A5 U+0E05 khokhonthai
167
+ !A6 U+0E06 khorakhangthai
168
+ !A7 U+0E07 ngonguthai
169
+ !A8 U+0E08 chochanthai
170
+ !A9 U+0E09 chochingthai
171
+ !AA U+0E0A chochangthai
172
+ !AB U+0E0B sosothai
173
+ !AC U+0E0C chochoethai
174
+ !AD U+0E0D yoyingthai
175
+ !AE U+0E0E dochadathai
176
+ !AF U+0E0F topatakthai
177
+ !B0 U+0E10 thothanthai
178
+ !B1 U+0E11 thonangmonthothai
179
+ !B2 U+0E12 thophuthaothai
180
+ !B3 U+0E13 nonenthai
181
+ !B4 U+0E14 dodekthai
182
+ !B5 U+0E15 totaothai
183
+ !B6 U+0E16 thothungthai
184
+ !B7 U+0E17 thothahanthai
185
+ !B8 U+0E18 thothongthai
186
+ !B9 U+0E19 nonuthai
187
+ !BA U+0E1A bobaimaithai
188
+ !BB U+0E1B poplathai
189
+ !BC U+0E1C phophungthai
190
+ !BD U+0E1D fofathai
191
+ !BE U+0E1E phophanthai
192
+ !BF U+0E1F fofanthai
193
+ !C0 U+0E20 phosamphaothai
194
+ !C1 U+0E21 momathai
195
+ !C2 U+0E22 yoyakthai
196
+ !C3 U+0E23 roruathai
197
+ !C4 U+0E24 ruthai
198
+ !C5 U+0E25 lolingthai
199
+ !C6 U+0E26 luthai
200
+ !C7 U+0E27 wowaenthai
201
+ !C8 U+0E28 sosalathai
202
+ !C9 U+0E29 sorusithai
203
+ !CA U+0E2A sosuathai
204
+ !CB U+0E2B hohipthai
205
+ !CC U+0E2C lochulathai
206
+ !CD U+0E2D oangthai
207
+ !CE U+0E2E honokhukthai
208
+ !CF U+0E2F paiyannoithai
209
+ !D0 U+0E30 saraathai
210
+ !D1 U+0E31 maihanakatthai
211
+ !D2 U+0E32 saraaathai
212
+ !D3 U+0E33 saraamthai
213
+ !D4 U+0E34 saraithai
214
+ !D5 U+0E35 saraiithai
215
+ !D6 U+0E36 sarauethai
216
+ !D7 U+0E37 saraueethai
217
+ !D8 U+0E38 sarauthai
218
+ !D9 U+0E39 sarauuthai
219
+ !DA U+0E3A phinthuthai
220
+ !DF U+0E3F bahtthai
221
+ !E0 U+0E40 saraethai
222
+ !E1 U+0E41 saraaethai
223
+ !E2 U+0E42 saraothai
224
+ !E3 U+0E43 saraaimaimuanthai
225
+ !E4 U+0E44 saraaimaimalaithai
226
+ !E5 U+0E45 lakkhangyaothai
227
+ !E6 U+0E46 maiyamokthai
228
+ !E7 U+0E47 maitaikhuthai
229
+ !E8 U+0E48 maiekthai
230
+ !E9 U+0E49 maithothai
231
+ !EA U+0E4A maitrithai
232
+ !EB U+0E4B maichattawathai
233
+ !EC U+0E4C thanthakhatthai
234
+ !ED U+0E4D nikhahitthai
235
+ !EE U+0E4E yamakkanthai
236
+ !EF U+0E4F fongmanthai
237
+ !F0 U+0E50 zerothai
238
+ !F1 U+0E51 onethai
239
+ !F2 U+0E52 twothai
240
+ !F3 U+0E53 threethai
241
+ !F4 U+0E54 fourthai
242
+ !F5 U+0E55 fivethai
243
+ !F6 U+0E56 sixthai
244
+ !F7 U+0E57 seventhai
245
+ !F8 U+0E58 eightthai
246
+ !F9 U+0E59 ninethai
247
+ !FA U+0E5A angkhankhuthai
248
+ !FB U+0E5B khomutthai
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-15.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+00A1 exclamdown
163
+ !A2 U+00A2 cent
164
+ !A3 U+00A3 sterling
165
+ !A4 U+20AC Euro
166
+ !A5 U+00A5 yen
167
+ !A6 U+0160 Scaron
168
+ !A7 U+00A7 section
169
+ !A8 U+0161 scaron
170
+ !A9 U+00A9 copyright
171
+ !AA U+00AA ordfeminine
172
+ !AB U+00AB guillemotleft
173
+ !AC U+00AC logicalnot
174
+ !AD U+00AD hyphen
175
+ !AE U+00AE registered
176
+ !AF U+00AF macron
177
+ !B0 U+00B0 degree
178
+ !B1 U+00B1 plusminus
179
+ !B2 U+00B2 twosuperior
180
+ !B3 U+00B3 threesuperior
181
+ !B4 U+017D Zcaron
182
+ !B5 U+00B5 mu
183
+ !B6 U+00B6 paragraph
184
+ !B7 U+00B7 periodcentered
185
+ !B8 U+017E zcaron
186
+ !B9 U+00B9 onesuperior
187
+ !BA U+00BA ordmasculine
188
+ !BB U+00BB guillemotright
189
+ !BC U+0152 OE
190
+ !BD U+0153 oe
191
+ !BE U+0178 Ydieresis
192
+ !BF U+00BF questiondown
193
+ !C0 U+00C0 Agrave
194
+ !C1 U+00C1 Aacute
195
+ !C2 U+00C2 Acircumflex
196
+ !C3 U+00C3 Atilde
197
+ !C4 U+00C4 Adieresis
198
+ !C5 U+00C5 Aring
199
+ !C6 U+00C6 AE
200
+ !C7 U+00C7 Ccedilla
201
+ !C8 U+00C8 Egrave
202
+ !C9 U+00C9 Eacute
203
+ !CA U+00CA Ecircumflex
204
+ !CB U+00CB Edieresis
205
+ !CC U+00CC Igrave
206
+ !CD U+00CD Iacute
207
+ !CE U+00CE Icircumflex
208
+ !CF U+00CF Idieresis
209
+ !D0 U+00D0 Eth
210
+ !D1 U+00D1 Ntilde
211
+ !D2 U+00D2 Ograve
212
+ !D3 U+00D3 Oacute
213
+ !D4 U+00D4 Ocircumflex
214
+ !D5 U+00D5 Otilde
215
+ !D6 U+00D6 Odieresis
216
+ !D7 U+00D7 multiply
217
+ !D8 U+00D8 Oslash
218
+ !D9 U+00D9 Ugrave
219
+ !DA U+00DA Uacute
220
+ !DB U+00DB Ucircumflex
221
+ !DC U+00DC Udieresis
222
+ !DD U+00DD Yacute
223
+ !DE U+00DE Thorn
224
+ !DF U+00DF germandbls
225
+ !E0 U+00E0 agrave
226
+ !E1 U+00E1 aacute
227
+ !E2 U+00E2 acircumflex
228
+ !E3 U+00E3 atilde
229
+ !E4 U+00E4 adieresis
230
+ !E5 U+00E5 aring
231
+ !E6 U+00E6 ae
232
+ !E7 U+00E7 ccedilla
233
+ !E8 U+00E8 egrave
234
+ !E9 U+00E9 eacute
235
+ !EA U+00EA ecircumflex
236
+ !EB U+00EB edieresis
237
+ !EC U+00EC igrave
238
+ !ED U+00ED iacute
239
+ !EE U+00EE icircumflex
240
+ !EF U+00EF idieresis
241
+ !F0 U+00F0 eth
242
+ !F1 U+00F1 ntilde
243
+ !F2 U+00F2 ograve
244
+ !F3 U+00F3 oacute
245
+ !F4 U+00F4 ocircumflex
246
+ !F5 U+00F5 otilde
247
+ !F6 U+00F6 odieresis
248
+ !F7 U+00F7 divide
249
+ !F8 U+00F8 oslash
250
+ !F9 U+00F9 ugrave
251
+ !FA U+00FA uacute
252
+ !FB U+00FB ucircumflex
253
+ !FC U+00FC udieresis
254
+ !FD U+00FD yacute
255
+ !FE U+00FE thorn
256
+ !FF U+00FF ydieresis
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-16.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+0104 Aogonek
163
+ !A2 U+0105 aogonek
164
+ !A3 U+0141 Lslash
165
+ !A4 U+20AC Euro
166
+ !A5 U+201E quotedblbase
167
+ !A6 U+0160 Scaron
168
+ !A7 U+00A7 section
169
+ !A8 U+0161 scaron
170
+ !A9 U+00A9 copyright
171
+ !AA U+0218 Scommaaccent
172
+ !AB U+00AB guillemotleft
173
+ !AC U+0179 Zacute
174
+ !AD U+00AD hyphen
175
+ !AE U+017A zacute
176
+ !AF U+017B Zdotaccent
177
+ !B0 U+00B0 degree
178
+ !B1 U+00B1 plusminus
179
+ !B2 U+010C Ccaron
180
+ !B3 U+0142 lslash
181
+ !B4 U+017D Zcaron
182
+ !B5 U+201D quotedblright
183
+ !B6 U+00B6 paragraph
184
+ !B7 U+00B7 periodcentered
185
+ !B8 U+017E zcaron
186
+ !B9 U+010D ccaron
187
+ !BA U+0219 scommaaccent
188
+ !BB U+00BB guillemotright
189
+ !BC U+0152 OE
190
+ !BD U+0153 oe
191
+ !BE U+0178 Ydieresis
192
+ !BF U+017C zdotaccent
193
+ !C0 U+00C0 Agrave
194
+ !C1 U+00C1 Aacute
195
+ !C2 U+00C2 Acircumflex
196
+ !C3 U+0102 Abreve
197
+ !C4 U+00C4 Adieresis
198
+ !C5 U+0106 Cacute
199
+ !C6 U+00C6 AE
200
+ !C7 U+00C7 Ccedilla
201
+ !C8 U+00C8 Egrave
202
+ !C9 U+00C9 Eacute
203
+ !CA U+00CA Ecircumflex
204
+ !CB U+00CB Edieresis
205
+ !CC U+00CC Igrave
206
+ !CD U+00CD Iacute
207
+ !CE U+00CE Icircumflex
208
+ !CF U+00CF Idieresis
209
+ !D0 U+0110 Dcroat
210
+ !D1 U+0143 Nacute
211
+ !D2 U+00D2 Ograve
212
+ !D3 U+00D3 Oacute
213
+ !D4 U+00D4 Ocircumflex
214
+ !D5 U+0150 Ohungarumlaut
215
+ !D6 U+00D6 Odieresis
216
+ !D7 U+015A Sacute
217
+ !D8 U+0170 Uhungarumlaut
218
+ !D9 U+00D9 Ugrave
219
+ !DA U+00DA Uacute
220
+ !DB U+00DB Ucircumflex
221
+ !DC U+00DC Udieresis
222
+ !DD U+0118 Eogonek
223
+ !DE U+021A Tcommaaccent
224
+ !DF U+00DF germandbls
225
+ !E0 U+00E0 agrave
226
+ !E1 U+00E1 aacute
227
+ !E2 U+00E2 acircumflex
228
+ !E3 U+0103 abreve
229
+ !E4 U+00E4 adieresis
230
+ !E5 U+0107 cacute
231
+ !E6 U+00E6 ae
232
+ !E7 U+00E7 ccedilla
233
+ !E8 U+00E8 egrave
234
+ !E9 U+00E9 eacute
235
+ !EA U+00EA ecircumflex
236
+ !EB U+00EB edieresis
237
+ !EC U+00EC igrave
238
+ !ED U+00ED iacute
239
+ !EE U+00EE icircumflex
240
+ !EF U+00EF idieresis
241
+ !F0 U+0111 dcroat
242
+ !F1 U+0144 nacute
243
+ !F2 U+00F2 ograve
244
+ !F3 U+00F3 oacute
245
+ !F4 U+00F4 ocircumflex
246
+ !F5 U+0151 ohungarumlaut
247
+ !F6 U+00F6 odieresis
248
+ !F7 U+015B sacute
249
+ !F8 U+0171 uhungarumlaut
250
+ !F9 U+00F9 ugrave
251
+ !FA U+00FA uacute
252
+ !FB U+00FB ucircumflex
253
+ !FC U+00FC udieresis
254
+ !FD U+0119 eogonek
255
+ !FE U+021B tcommaaccent
256
+ !FF U+00FF ydieresis
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-2.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+0104 Aogonek
163
+ !A2 U+02D8 breve
164
+ !A3 U+0141 Lslash
165
+ !A4 U+00A4 currency
166
+ !A5 U+013D Lcaron
167
+ !A6 U+015A Sacute
168
+ !A7 U+00A7 section
169
+ !A8 U+00A8 dieresis
170
+ !A9 U+0160 Scaron
171
+ !AA U+015E Scedilla
172
+ !AB U+0164 Tcaron
173
+ !AC U+0179 Zacute
174
+ !AD U+00AD hyphen
175
+ !AE U+017D Zcaron
176
+ !AF U+017B Zdotaccent
177
+ !B0 U+00B0 degree
178
+ !B1 U+0105 aogonek
179
+ !B2 U+02DB ogonek
180
+ !B3 U+0142 lslash
181
+ !B4 U+00B4 acute
182
+ !B5 U+013E lcaron
183
+ !B6 U+015B sacute
184
+ !B7 U+02C7 caron
185
+ !B8 U+00B8 cedilla
186
+ !B9 U+0161 scaron
187
+ !BA U+015F scedilla
188
+ !BB U+0165 tcaron
189
+ !BC U+017A zacute
190
+ !BD U+02DD hungarumlaut
191
+ !BE U+017E zcaron
192
+ !BF U+017C zdotaccent
193
+ !C0 U+0154 Racute
194
+ !C1 U+00C1 Aacute
195
+ !C2 U+00C2 Acircumflex
196
+ !C3 U+0102 Abreve
197
+ !C4 U+00C4 Adieresis
198
+ !C5 U+0139 Lacute
199
+ !C6 U+0106 Cacute
200
+ !C7 U+00C7 Ccedilla
201
+ !C8 U+010C Ccaron
202
+ !C9 U+00C9 Eacute
203
+ !CA U+0118 Eogonek
204
+ !CB U+00CB Edieresis
205
+ !CC U+011A Ecaron
206
+ !CD U+00CD Iacute
207
+ !CE U+00CE Icircumflex
208
+ !CF U+010E Dcaron
209
+ !D0 U+0110 Dcroat
210
+ !D1 U+0143 Nacute
211
+ !D2 U+0147 Ncaron
212
+ !D3 U+00D3 Oacute
213
+ !D4 U+00D4 Ocircumflex
214
+ !D5 U+0150 Ohungarumlaut
215
+ !D6 U+00D6 Odieresis
216
+ !D7 U+00D7 multiply
217
+ !D8 U+0158 Rcaron
218
+ !D9 U+016E Uring
219
+ !DA U+00DA Uacute
220
+ !DB U+0170 Uhungarumlaut
221
+ !DC U+00DC Udieresis
222
+ !DD U+00DD Yacute
223
+ !DE U+0162 Tcommaaccent
224
+ !DF U+00DF germandbls
225
+ !E0 U+0155 racute
226
+ !E1 U+00E1 aacute
227
+ !E2 U+00E2 acircumflex
228
+ !E3 U+0103 abreve
229
+ !E4 U+00E4 adieresis
230
+ !E5 U+013A lacute
231
+ !E6 U+0107 cacute
232
+ !E7 U+00E7 ccedilla
233
+ !E8 U+010D ccaron
234
+ !E9 U+00E9 eacute
235
+ !EA U+0119 eogonek
236
+ !EB U+00EB edieresis
237
+ !EC U+011B ecaron
238
+ !ED U+00ED iacute
239
+ !EE U+00EE icircumflex
240
+ !EF U+010F dcaron
241
+ !F0 U+0111 dcroat
242
+ !F1 U+0144 nacute
243
+ !F2 U+0148 ncaron
244
+ !F3 U+00F3 oacute
245
+ !F4 U+00F4 ocircumflex
246
+ !F5 U+0151 ohungarumlaut
247
+ !F6 U+00F6 odieresis
248
+ !F7 U+00F7 divide
249
+ !F8 U+0159 rcaron
250
+ !F9 U+016F uring
251
+ !FA U+00FA uacute
252
+ !FB U+0171 uhungarumlaut
253
+ !FC U+00FC udieresis
254
+ !FD U+00FD yacute
255
+ !FE U+0163 tcommaaccent
256
+ !FF U+02D9 dotaccent
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-4.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+0104 Aogonek
163
+ !A2 U+0138 kgreenlandic
164
+ !A3 U+0156 Rcommaaccent
165
+ !A4 U+00A4 currency
166
+ !A5 U+0128 Itilde
167
+ !A6 U+013B Lcommaaccent
168
+ !A7 U+00A7 section
169
+ !A8 U+00A8 dieresis
170
+ !A9 U+0160 Scaron
171
+ !AA U+0112 Emacron
172
+ !AB U+0122 Gcommaaccent
173
+ !AC U+0166 Tbar
174
+ !AD U+00AD hyphen
175
+ !AE U+017D Zcaron
176
+ !AF U+00AF macron
177
+ !B0 U+00B0 degree
178
+ !B1 U+0105 aogonek
179
+ !B2 U+02DB ogonek
180
+ !B3 U+0157 rcommaaccent
181
+ !B4 U+00B4 acute
182
+ !B5 U+0129 itilde
183
+ !B6 U+013C lcommaaccent
184
+ !B7 U+02C7 caron
185
+ !B8 U+00B8 cedilla
186
+ !B9 U+0161 scaron
187
+ !BA U+0113 emacron
188
+ !BB U+0123 gcommaaccent
189
+ !BC U+0167 tbar
190
+ !BD U+014A Eng
191
+ !BE U+017E zcaron
192
+ !BF U+014B eng
193
+ !C0 U+0100 Amacron
194
+ !C1 U+00C1 Aacute
195
+ !C2 U+00C2 Acircumflex
196
+ !C3 U+00C3 Atilde
197
+ !C4 U+00C4 Adieresis
198
+ !C5 U+00C5 Aring
199
+ !C6 U+00C6 AE
200
+ !C7 U+012E Iogonek
201
+ !C8 U+010C Ccaron
202
+ !C9 U+00C9 Eacute
203
+ !CA U+0118 Eogonek
204
+ !CB U+00CB Edieresis
205
+ !CC U+0116 Edotaccent
206
+ !CD U+00CD Iacute
207
+ !CE U+00CE Icircumflex
208
+ !CF U+012A Imacron
209
+ !D0 U+0110 Dcroat
210
+ !D1 U+0145 Ncommaaccent
211
+ !D2 U+014C Omacron
212
+ !D3 U+0136 Kcommaaccent
213
+ !D4 U+00D4 Ocircumflex
214
+ !D5 U+00D5 Otilde
215
+ !D6 U+00D6 Odieresis
216
+ !D7 U+00D7 multiply
217
+ !D8 U+00D8 Oslash
218
+ !D9 U+0172 Uogonek
219
+ !DA U+00DA Uacute
220
+ !DB U+00DB Ucircumflex
221
+ !DC U+00DC Udieresis
222
+ !DD U+0168 Utilde
223
+ !DE U+016A Umacron
224
+ !DF U+00DF germandbls
225
+ !E0 U+0101 amacron
226
+ !E1 U+00E1 aacute
227
+ !E2 U+00E2 acircumflex
228
+ !E3 U+00E3 atilde
229
+ !E4 U+00E4 adieresis
230
+ !E5 U+00E5 aring
231
+ !E6 U+00E6 ae
232
+ !E7 U+012F iogonek
233
+ !E8 U+010D ccaron
234
+ !E9 U+00E9 eacute
235
+ !EA U+0119 eogonek
236
+ !EB U+00EB edieresis
237
+ !EC U+0117 edotaccent
238
+ !ED U+00ED iacute
239
+ !EE U+00EE icircumflex
240
+ !EF U+012B imacron
241
+ !F0 U+0111 dcroat
242
+ !F1 U+0146 ncommaaccent
243
+ !F2 U+014D omacron
244
+ !F3 U+0137 kcommaaccent
245
+ !F4 U+00F4 ocircumflex
246
+ !F5 U+00F5 otilde
247
+ !F6 U+00F6 odieresis
248
+ !F7 U+00F7 divide
249
+ !F8 U+00F8 oslash
250
+ !F9 U+0173 uogonek
251
+ !FA U+00FA uacute
252
+ !FB U+00FB ucircumflex
253
+ !FC U+00FC udieresis
254
+ !FD U+0169 utilde
255
+ !FE U+016B umacron
256
+ !FF U+02D9 dotaccent
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-5.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+0401 afii10023
163
+ !A2 U+0402 afii10051
164
+ !A3 U+0403 afii10052
165
+ !A4 U+0404 afii10053
166
+ !A5 U+0405 afii10054
167
+ !A6 U+0406 afii10055
168
+ !A7 U+0407 afii10056
169
+ !A8 U+0408 afii10057
170
+ !A9 U+0409 afii10058
171
+ !AA U+040A afii10059
172
+ !AB U+040B afii10060
173
+ !AC U+040C afii10061
174
+ !AD U+00AD hyphen
175
+ !AE U+040E afii10062
176
+ !AF U+040F afii10145
177
+ !B0 U+0410 afii10017
178
+ !B1 U+0411 afii10018
179
+ !B2 U+0412 afii10019
180
+ !B3 U+0413 afii10020
181
+ !B4 U+0414 afii10021
182
+ !B5 U+0415 afii10022
183
+ !B6 U+0416 afii10024
184
+ !B7 U+0417 afii10025
185
+ !B8 U+0418 afii10026
186
+ !B9 U+0419 afii10027
187
+ !BA U+041A afii10028
188
+ !BB U+041B afii10029
189
+ !BC U+041C afii10030
190
+ !BD U+041D afii10031
191
+ !BE U+041E afii10032
192
+ !BF U+041F afii10033
193
+ !C0 U+0420 afii10034
194
+ !C1 U+0421 afii10035
195
+ !C2 U+0422 afii10036
196
+ !C3 U+0423 afii10037
197
+ !C4 U+0424 afii10038
198
+ !C5 U+0425 afii10039
199
+ !C6 U+0426 afii10040
200
+ !C7 U+0427 afii10041
201
+ !C8 U+0428 afii10042
202
+ !C9 U+0429 afii10043
203
+ !CA U+042A afii10044
204
+ !CB U+042B afii10045
205
+ !CC U+042C afii10046
206
+ !CD U+042D afii10047
207
+ !CE U+042E afii10048
208
+ !CF U+042F afii10049
209
+ !D0 U+0430 afii10065
210
+ !D1 U+0431 afii10066
211
+ !D2 U+0432 afii10067
212
+ !D3 U+0433 afii10068
213
+ !D4 U+0434 afii10069
214
+ !D5 U+0435 afii10070
215
+ !D6 U+0436 afii10072
216
+ !D7 U+0437 afii10073
217
+ !D8 U+0438 afii10074
218
+ !D9 U+0439 afii10075
219
+ !DA U+043A afii10076
220
+ !DB U+043B afii10077
221
+ !DC U+043C afii10078
222
+ !DD U+043D afii10079
223
+ !DE U+043E afii10080
224
+ !DF U+043F afii10081
225
+ !E0 U+0440 afii10082
226
+ !E1 U+0441 afii10083
227
+ !E2 U+0442 afii10084
228
+ !E3 U+0443 afii10085
229
+ !E4 U+0444 afii10086
230
+ !E5 U+0445 afii10087
231
+ !E6 U+0446 afii10088
232
+ !E7 U+0447 afii10089
233
+ !E8 U+0448 afii10090
234
+ !E9 U+0449 afii10091
235
+ !EA U+044A afii10092
236
+ !EB U+044B afii10093
237
+ !EC U+044C afii10094
238
+ !ED U+044D afii10095
239
+ !EE U+044E afii10096
240
+ !EF U+044F afii10097
241
+ !F0 U+2116 afii61352
242
+ !F1 U+0451 afii10071
243
+ !F2 U+0452 afii10099
244
+ !F3 U+0453 afii10100
245
+ !F4 U+0454 afii10101
246
+ !F5 U+0455 afii10102
247
+ !F6 U+0456 afii10103
248
+ !F7 U+0457 afii10104
249
+ !F8 U+0458 afii10105
250
+ !F9 U+0459 afii10106
251
+ !FA U+045A afii10107
252
+ !FB U+045B afii10108
253
+ !FC U+045C afii10109
254
+ !FD U+00A7 section
255
+ !FE U+045E afii10110
256
+ !FF U+045F afii10193
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-7.map ADDED
@@ -0,0 +1,250 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+2018 quoteleft
163
+ !A2 U+2019 quoteright
164
+ !A3 U+00A3 sterling
165
+ !A6 U+00A6 brokenbar
166
+ !A7 U+00A7 section
167
+ !A8 U+00A8 dieresis
168
+ !A9 U+00A9 copyright
169
+ !AB U+00AB guillemotleft
170
+ !AC U+00AC logicalnot
171
+ !AD U+00AD hyphen
172
+ !AF U+2015 afii00208
173
+ !B0 U+00B0 degree
174
+ !B1 U+00B1 plusminus
175
+ !B2 U+00B2 twosuperior
176
+ !B3 U+00B3 threesuperior
177
+ !B4 U+0384 tonos
178
+ !B5 U+0385 dieresistonos
179
+ !B6 U+0386 Alphatonos
180
+ !B7 U+00B7 periodcentered
181
+ !B8 U+0388 Epsilontonos
182
+ !B9 U+0389 Etatonos
183
+ !BA U+038A Iotatonos
184
+ !BB U+00BB guillemotright
185
+ !BC U+038C Omicrontonos
186
+ !BD U+00BD onehalf
187
+ !BE U+038E Upsilontonos
188
+ !BF U+038F Omegatonos
189
+ !C0 U+0390 iotadieresistonos
190
+ !C1 U+0391 Alpha
191
+ !C2 U+0392 Beta
192
+ !C3 U+0393 Gamma
193
+ !C4 U+0394 Delta
194
+ !C5 U+0395 Epsilon
195
+ !C6 U+0396 Zeta
196
+ !C7 U+0397 Eta
197
+ !C8 U+0398 Theta
198
+ !C9 U+0399 Iota
199
+ !CA U+039A Kappa
200
+ !CB U+039B Lambda
201
+ !CC U+039C Mu
202
+ !CD U+039D Nu
203
+ !CE U+039E Xi
204
+ !CF U+039F Omicron
205
+ !D0 U+03A0 Pi
206
+ !D1 U+03A1 Rho
207
+ !D3 U+03A3 Sigma
208
+ !D4 U+03A4 Tau
209
+ !D5 U+03A5 Upsilon
210
+ !D6 U+03A6 Phi
211
+ !D7 U+03A7 Chi
212
+ !D8 U+03A8 Psi
213
+ !D9 U+03A9 Omega
214
+ !DA U+03AA Iotadieresis
215
+ !DB U+03AB Upsilondieresis
216
+ !DC U+03AC alphatonos
217
+ !DD U+03AD epsilontonos
218
+ !DE U+03AE etatonos
219
+ !DF U+03AF iotatonos
220
+ !E0 U+03B0 upsilondieresistonos
221
+ !E1 U+03B1 alpha
222
+ !E2 U+03B2 beta
223
+ !E3 U+03B3 gamma
224
+ !E4 U+03B4 delta
225
+ !E5 U+03B5 epsilon
226
+ !E6 U+03B6 zeta
227
+ !E7 U+03B7 eta
228
+ !E8 U+03B8 theta
229
+ !E9 U+03B9 iota
230
+ !EA U+03BA kappa
231
+ !EB U+03BB lambda
232
+ !EC U+03BC mu
233
+ !ED U+03BD nu
234
+ !EE U+03BE xi
235
+ !EF U+03BF omicron
236
+ !F0 U+03C0 pi
237
+ !F1 U+03C1 rho
238
+ !F2 U+03C2 sigma1
239
+ !F3 U+03C3 sigma
240
+ !F4 U+03C4 tau
241
+ !F5 U+03C5 upsilon
242
+ !F6 U+03C6 phi
243
+ !F7 U+03C7 chi
244
+ !F8 U+03C8 psi
245
+ !F9 U+03C9 omega
246
+ !FA U+03CA iotadieresis
247
+ !FB U+03CB upsilondieresis
248
+ !FC U+03CC omicrontonos
249
+ !FD U+03CD upsilontonos
250
+ !FE U+03CE omegatonos
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/iso-8859-9.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+0080 .notdef
130
+ !81 U+0081 .notdef
131
+ !82 U+0082 .notdef
132
+ !83 U+0083 .notdef
133
+ !84 U+0084 .notdef
134
+ !85 U+0085 .notdef
135
+ !86 U+0086 .notdef
136
+ !87 U+0087 .notdef
137
+ !88 U+0088 .notdef
138
+ !89 U+0089 .notdef
139
+ !8A U+008A .notdef
140
+ !8B U+008B .notdef
141
+ !8C U+008C .notdef
142
+ !8D U+008D .notdef
143
+ !8E U+008E .notdef
144
+ !8F U+008F .notdef
145
+ !90 U+0090 .notdef
146
+ !91 U+0091 .notdef
147
+ !92 U+0092 .notdef
148
+ !93 U+0093 .notdef
149
+ !94 U+0094 .notdef
150
+ !95 U+0095 .notdef
151
+ !96 U+0096 .notdef
152
+ !97 U+0097 .notdef
153
+ !98 U+0098 .notdef
154
+ !99 U+0099 .notdef
155
+ !9A U+009A .notdef
156
+ !9B U+009B .notdef
157
+ !9C U+009C .notdef
158
+ !9D U+009D .notdef
159
+ !9E U+009E .notdef
160
+ !9F U+009F .notdef
161
+ !A0 U+00A0 space
162
+ !A1 U+00A1 exclamdown
163
+ !A2 U+00A2 cent
164
+ !A3 U+00A3 sterling
165
+ !A4 U+00A4 currency
166
+ !A5 U+00A5 yen
167
+ !A6 U+00A6 brokenbar
168
+ !A7 U+00A7 section
169
+ !A8 U+00A8 dieresis
170
+ !A9 U+00A9 copyright
171
+ !AA U+00AA ordfeminine
172
+ !AB U+00AB guillemotleft
173
+ !AC U+00AC logicalnot
174
+ !AD U+00AD hyphen
175
+ !AE U+00AE registered
176
+ !AF U+00AF macron
177
+ !B0 U+00B0 degree
178
+ !B1 U+00B1 plusminus
179
+ !B2 U+00B2 twosuperior
180
+ !B3 U+00B3 threesuperior
181
+ !B4 U+00B4 acute
182
+ !B5 U+00B5 mu
183
+ !B6 U+00B6 paragraph
184
+ !B7 U+00B7 periodcentered
185
+ !B8 U+00B8 cedilla
186
+ !B9 U+00B9 onesuperior
187
+ !BA U+00BA ordmasculine
188
+ !BB U+00BB guillemotright
189
+ !BC U+00BC onequarter
190
+ !BD U+00BD onehalf
191
+ !BE U+00BE threequarters
192
+ !BF U+00BF questiondown
193
+ !C0 U+00C0 Agrave
194
+ !C1 U+00C1 Aacute
195
+ !C2 U+00C2 Acircumflex
196
+ !C3 U+00C3 Atilde
197
+ !C4 U+00C4 Adieresis
198
+ !C5 U+00C5 Aring
199
+ !C6 U+00C6 AE
200
+ !C7 U+00C7 Ccedilla
201
+ !C8 U+00C8 Egrave
202
+ !C9 U+00C9 Eacute
203
+ !CA U+00CA Ecircumflex
204
+ !CB U+00CB Edieresis
205
+ !CC U+00CC Igrave
206
+ !CD U+00CD Iacute
207
+ !CE U+00CE Icircumflex
208
+ !CF U+00CF Idieresis
209
+ !D0 U+011E Gbreve
210
+ !D1 U+00D1 Ntilde
211
+ !D2 U+00D2 Ograve
212
+ !D3 U+00D3 Oacute
213
+ !D4 U+00D4 Ocircumflex
214
+ !D5 U+00D5 Otilde
215
+ !D6 U+00D6 Odieresis
216
+ !D7 U+00D7 multiply
217
+ !D8 U+00D8 Oslash
218
+ !D9 U+00D9 Ugrave
219
+ !DA U+00DA Uacute
220
+ !DB U+00DB Ucircumflex
221
+ !DC U+00DC Udieresis
222
+ !DD U+0130 Idotaccent
223
+ !DE U+015E Scedilla
224
+ !DF U+00DF germandbls
225
+ !E0 U+00E0 agrave
226
+ !E1 U+00E1 aacute
227
+ !E2 U+00E2 acircumflex
228
+ !E3 U+00E3 atilde
229
+ !E4 U+00E4 adieresis
230
+ !E5 U+00E5 aring
231
+ !E6 U+00E6 ae
232
+ !E7 U+00E7 ccedilla
233
+ !E8 U+00E8 egrave
234
+ !E9 U+00E9 eacute
235
+ !EA U+00EA ecircumflex
236
+ !EB U+00EB edieresis
237
+ !EC U+00EC igrave
238
+ !ED U+00ED iacute
239
+ !EE U+00EE icircumflex
240
+ !EF U+00EF idieresis
241
+ !F0 U+011F gbreve
242
+ !F1 U+00F1 ntilde
243
+ !F2 U+00F2 ograve
244
+ !F3 U+00F3 oacute
245
+ !F4 U+00F4 ocircumflex
246
+ !F5 U+00F5 otilde
247
+ !F6 U+00F6 odieresis
248
+ !F7 U+00F7 divide
249
+ !F8 U+00F8 oslash
250
+ !F9 U+00F9 ugrave
251
+ !FA U+00FA uacute
252
+ !FB U+00FB ucircumflex
253
+ !FC U+00FC udieresis
254
+ !FD U+0131 dotlessi
255
+ !FE U+015F scedilla
256
+ !FF U+00FF ydieresis
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/koi8-r.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+2500 SF100000
130
+ !81 U+2502 SF110000
131
+ !82 U+250C SF010000
132
+ !83 U+2510 SF030000
133
+ !84 U+2514 SF020000
134
+ !85 U+2518 SF040000
135
+ !86 U+251C SF080000
136
+ !87 U+2524 SF090000
137
+ !88 U+252C SF060000
138
+ !89 U+2534 SF070000
139
+ !8A U+253C SF050000
140
+ !8B U+2580 upblock
141
+ !8C U+2584 dnblock
142
+ !8D U+2588 block
143
+ !8E U+258C lfblock
144
+ !8F U+2590 rtblock
145
+ !90 U+2591 ltshade
146
+ !91 U+2592 shade
147
+ !92 U+2593 dkshade
148
+ !93 U+2320 integraltp
149
+ !94 U+25A0 filledbox
150
+ !95 U+2219 periodcentered
151
+ !96 U+221A radical
152
+ !97 U+2248 approxequal
153
+ !98 U+2264 lessequal
154
+ !99 U+2265 greaterequal
155
+ !9A U+00A0 space
156
+ !9B U+2321 integralbt
157
+ !9C U+00B0 degree
158
+ !9D U+00B2 twosuperior
159
+ !9E U+00B7 periodcentered
160
+ !9F U+00F7 divide
161
+ !A0 U+2550 SF430000
162
+ !A1 U+2551 SF240000
163
+ !A2 U+2552 SF510000
164
+ !A3 U+0451 afii10071
165
+ !A4 U+2553 SF520000
166
+ !A5 U+2554 SF390000
167
+ !A6 U+2555 SF220000
168
+ !A7 U+2556 SF210000
169
+ !A8 U+2557 SF250000
170
+ !A9 U+2558 SF500000
171
+ !AA U+2559 SF490000
172
+ !AB U+255A SF380000
173
+ !AC U+255B SF280000
174
+ !AD U+255C SF270000
175
+ !AE U+255D SF260000
176
+ !AF U+255E SF360000
177
+ !B0 U+255F SF370000
178
+ !B1 U+2560 SF420000
179
+ !B2 U+2561 SF190000
180
+ !B3 U+0401 afii10023
181
+ !B4 U+2562 SF200000
182
+ !B5 U+2563 SF230000
183
+ !B6 U+2564 SF470000
184
+ !B7 U+2565 SF480000
185
+ !B8 U+2566 SF410000
186
+ !B9 U+2567 SF450000
187
+ !BA U+2568 SF460000
188
+ !BB U+2569 SF400000
189
+ !BC U+256A SF540000
190
+ !BD U+256B SF530000
191
+ !BE U+256C SF440000
192
+ !BF U+00A9 copyright
193
+ !C0 U+044E afii10096
194
+ !C1 U+0430 afii10065
195
+ !C2 U+0431 afii10066
196
+ !C3 U+0446 afii10088
197
+ !C4 U+0434 afii10069
198
+ !C5 U+0435 afii10070
199
+ !C6 U+0444 afii10086
200
+ !C7 U+0433 afii10068
201
+ !C8 U+0445 afii10087
202
+ !C9 U+0438 afii10074
203
+ !CA U+0439 afii10075
204
+ !CB U+043A afii10076
205
+ !CC U+043B afii10077
206
+ !CD U+043C afii10078
207
+ !CE U+043D afii10079
208
+ !CF U+043E afii10080
209
+ !D0 U+043F afii10081
210
+ !D1 U+044F afii10097
211
+ !D2 U+0440 afii10082
212
+ !D3 U+0441 afii10083
213
+ !D4 U+0442 afii10084
214
+ !D5 U+0443 afii10085
215
+ !D6 U+0436 afii10072
216
+ !D7 U+0432 afii10067
217
+ !D8 U+044C afii10094
218
+ !D9 U+044B afii10093
219
+ !DA U+0437 afii10073
220
+ !DB U+0448 afii10090
221
+ !DC U+044D afii10095
222
+ !DD U+0449 afii10091
223
+ !DE U+0447 afii10089
224
+ !DF U+044A afii10092
225
+ !E0 U+042E afii10048
226
+ !E1 U+0410 afii10017
227
+ !E2 U+0411 afii10018
228
+ !E3 U+0426 afii10040
229
+ !E4 U+0414 afii10021
230
+ !E5 U+0415 afii10022
231
+ !E6 U+0424 afii10038
232
+ !E7 U+0413 afii10020
233
+ !E8 U+0425 afii10039
234
+ !E9 U+0418 afii10026
235
+ !EA U+0419 afii10027
236
+ !EB U+041A afii10028
237
+ !EC U+041B afii10029
238
+ !ED U+041C afii10030
239
+ !EE U+041D afii10031
240
+ !EF U+041E afii10032
241
+ !F0 U+041F afii10033
242
+ !F1 U+042F afii10049
243
+ !F2 U+0420 afii10034
244
+ !F3 U+0421 afii10035
245
+ !F4 U+0422 afii10036
246
+ !F5 U+0423 afii10037
247
+ !F6 U+0416 afii10024
248
+ !F7 U+0412 afii10019
249
+ !F8 U+042C afii10046
250
+ !F9 U+042B afii10045
251
+ !FA U+0417 afii10025
252
+ !FB U+0428 afii10042
253
+ !FC U+042D afii10047
254
+ !FD U+0429 afii10043
255
+ !FE U+0427 afii10041
256
+ !FF U+042A afii10044
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/koi8-u.map ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !00 U+0000 .notdef
2
+ !01 U+0001 .notdef
3
+ !02 U+0002 .notdef
4
+ !03 U+0003 .notdef
5
+ !04 U+0004 .notdef
6
+ !05 U+0005 .notdef
7
+ !06 U+0006 .notdef
8
+ !07 U+0007 .notdef
9
+ !08 U+0008 .notdef
10
+ !09 U+0009 .notdef
11
+ !0A U+000A .notdef
12
+ !0B U+000B .notdef
13
+ !0C U+000C .notdef
14
+ !0D U+000D .notdef
15
+ !0E U+000E .notdef
16
+ !0F U+000F .notdef
17
+ !10 U+0010 .notdef
18
+ !11 U+0011 .notdef
19
+ !12 U+0012 .notdef
20
+ !13 U+0013 .notdef
21
+ !14 U+0014 .notdef
22
+ !15 U+0015 .notdef
23
+ !16 U+0016 .notdef
24
+ !17 U+0017 .notdef
25
+ !18 U+0018 .notdef
26
+ !19 U+0019 .notdef
27
+ !1A U+001A .notdef
28
+ !1B U+001B .notdef
29
+ !1C U+001C .notdef
30
+ !1D U+001D .notdef
31
+ !1E U+001E .notdef
32
+ !1F U+001F .notdef
33
+ !20 U+0020 space
34
+ !21 U+0021 exclam
35
+ !22 U+0022 quotedbl
36
+ !23 U+0023 numbersign
37
+ !24 U+0024 dollar
38
+ !25 U+0025 percent
39
+ !26 U+0026 ampersand
40
+ !27 U+0027 quotesingle
41
+ !28 U+0028 parenleft
42
+ !29 U+0029 parenright
43
+ !2A U+002A asterisk
44
+ !2B U+002B plus
45
+ !2C U+002C comma
46
+ !2D U+002D hyphen
47
+ !2E U+002E period
48
+ !2F U+002F slash
49
+ !30 U+0030 zero
50
+ !31 U+0031 one
51
+ !32 U+0032 two
52
+ !33 U+0033 three
53
+ !34 U+0034 four
54
+ !35 U+0035 five
55
+ !36 U+0036 six
56
+ !37 U+0037 seven
57
+ !38 U+0038 eight
58
+ !39 U+0039 nine
59
+ !3A U+003A colon
60
+ !3B U+003B semicolon
61
+ !3C U+003C less
62
+ !3D U+003D equal
63
+ !3E U+003E greater
64
+ !3F U+003F question
65
+ !40 U+0040 at
66
+ !41 U+0041 A
67
+ !42 U+0042 B
68
+ !43 U+0043 C
69
+ !44 U+0044 D
70
+ !45 U+0045 E
71
+ !46 U+0046 F
72
+ !47 U+0047 G
73
+ !48 U+0048 H
74
+ !49 U+0049 I
75
+ !4A U+004A J
76
+ !4B U+004B K
77
+ !4C U+004C L
78
+ !4D U+004D M
79
+ !4E U+004E N
80
+ !4F U+004F O
81
+ !50 U+0050 P
82
+ !51 U+0051 Q
83
+ !52 U+0052 R
84
+ !53 U+0053 S
85
+ !54 U+0054 T
86
+ !55 U+0055 U
87
+ !56 U+0056 V
88
+ !57 U+0057 W
89
+ !58 U+0058 X
90
+ !59 U+0059 Y
91
+ !5A U+005A Z
92
+ !5B U+005B bracketleft
93
+ !5C U+005C backslash
94
+ !5D U+005D bracketright
95
+ !5E U+005E asciicircum
96
+ !5F U+005F underscore
97
+ !60 U+0060 grave
98
+ !61 U+0061 a
99
+ !62 U+0062 b
100
+ !63 U+0063 c
101
+ !64 U+0064 d
102
+ !65 U+0065 e
103
+ !66 U+0066 f
104
+ !67 U+0067 g
105
+ !68 U+0068 h
106
+ !69 U+0069 i
107
+ !6A U+006A j
108
+ !6B U+006B k
109
+ !6C U+006C l
110
+ !6D U+006D m
111
+ !6E U+006E n
112
+ !6F U+006F o
113
+ !70 U+0070 p
114
+ !71 U+0071 q
115
+ !72 U+0072 r
116
+ !73 U+0073 s
117
+ !74 U+0074 t
118
+ !75 U+0075 u
119
+ !76 U+0076 v
120
+ !77 U+0077 w
121
+ !78 U+0078 x
122
+ !79 U+0079 y
123
+ !7A U+007A z
124
+ !7B U+007B braceleft
125
+ !7C U+007C bar
126
+ !7D U+007D braceright
127
+ !7E U+007E asciitilde
128
+ !7F U+007F .notdef
129
+ !80 U+2500 SF100000
130
+ !81 U+2502 SF110000
131
+ !82 U+250C SF010000
132
+ !83 U+2510 SF030000
133
+ !84 U+2514 SF020000
134
+ !85 U+2518 SF040000
135
+ !86 U+251C SF080000
136
+ !87 U+2524 SF090000
137
+ !88 U+252C SF060000
138
+ !89 U+2534 SF070000
139
+ !8A U+253C SF050000
140
+ !8B U+2580 upblock
141
+ !8C U+2584 dnblock
142
+ !8D U+2588 block
143
+ !8E U+258C lfblock
144
+ !8F U+2590 rtblock
145
+ !90 U+2591 ltshade
146
+ !91 U+2592 shade
147
+ !92 U+2593 dkshade
148
+ !93 U+2320 integraltp
149
+ !94 U+25A0 filledbox
150
+ !95 U+2022 bullet
151
+ !96 U+221A radical
152
+ !97 U+2248 approxequal
153
+ !98 U+2264 lessequal
154
+ !99 U+2265 greaterequal
155
+ !9A U+00A0 space
156
+ !9B U+2321 integralbt
157
+ !9C U+00B0 degree
158
+ !9D U+00B2 twosuperior
159
+ !9E U+00B7 periodcentered
160
+ !9F U+00F7 divide
161
+ !A0 U+2550 SF430000
162
+ !A1 U+2551 SF240000
163
+ !A2 U+2552 SF510000
164
+ !A3 U+0451 afii10071
165
+ !A4 U+0454 afii10101
166
+ !A5 U+2554 SF390000
167
+ !A6 U+0456 afii10103
168
+ !A7 U+0457 afii10104
169
+ !A8 U+2557 SF250000
170
+ !A9 U+2558 SF500000
171
+ !AA U+2559 SF490000
172
+ !AB U+255A SF380000
173
+ !AC U+255B SF280000
174
+ !AD U+0491 afii10098
175
+ !AE U+255D SF260000
176
+ !AF U+255E SF360000
177
+ !B0 U+255F SF370000
178
+ !B1 U+2560 SF420000
179
+ !B2 U+2561 SF190000
180
+ !B3 U+0401 afii10023
181
+ !B4 U+0404 afii10053
182
+ !B5 U+2563 SF230000
183
+ !B6 U+0406 afii10055
184
+ !B7 U+0407 afii10056
185
+ !B8 U+2566 SF410000
186
+ !B9 U+2567 SF450000
187
+ !BA U+2568 SF460000
188
+ !BB U+2569 SF400000
189
+ !BC U+256A SF540000
190
+ !BD U+0490 afii10050
191
+ !BE U+256C SF440000
192
+ !BF U+00A9 copyright
193
+ !C0 U+044E afii10096
194
+ !C1 U+0430 afii10065
195
+ !C2 U+0431 afii10066
196
+ !C3 U+0446 afii10088
197
+ !C4 U+0434 afii10069
198
+ !C5 U+0435 afii10070
199
+ !C6 U+0444 afii10086
200
+ !C7 U+0433 afii10068
201
+ !C8 U+0445 afii10087
202
+ !C9 U+0438 afii10074
203
+ !CA U+0439 afii10075
204
+ !CB U+043A afii10076
205
+ !CC U+043B afii10077
206
+ !CD U+043C afii10078
207
+ !CE U+043D afii10079
208
+ !CF U+043E afii10080
209
+ !D0 U+043F afii10081
210
+ !D1 U+044F afii10097
211
+ !D2 U+0440 afii10082
212
+ !D3 U+0441 afii10083
213
+ !D4 U+0442 afii10084
214
+ !D5 U+0443 afii10085
215
+ !D6 U+0436 afii10072
216
+ !D7 U+0432 afii10067
217
+ !D8 U+044C afii10094
218
+ !D9 U+044B afii10093
219
+ !DA U+0437 afii10073
220
+ !DB U+0448 afii10090
221
+ !DC U+044D afii10095
222
+ !DD U+0449 afii10091
223
+ !DE U+0447 afii10089
224
+ !DF U+044A afii10092
225
+ !E0 U+042E afii10048
226
+ !E1 U+0410 afii10017
227
+ !E2 U+0411 afii10018
228
+ !E3 U+0426 afii10040
229
+ !E4 U+0414 afii10021
230
+ !E5 U+0415 afii10022
231
+ !E6 U+0424 afii10038
232
+ !E7 U+0413 afii10020
233
+ !E8 U+0425 afii10039
234
+ !E9 U+0418 afii10026
235
+ !EA U+0419 afii10027
236
+ !EB U+041A afii10028
237
+ !EC U+041B afii10029
238
+ !ED U+041C afii10030
239
+ !EE U+041D afii10031
240
+ !EF U+041E afii10032
241
+ !F0 U+041F afii10033
242
+ !F1 U+042F afii10049
243
+ !F2 U+0420 afii10034
244
+ !F3 U+0421 afii10035
245
+ !F4 U+0422 afii10036
246
+ !F5 U+0423 afii10037
247
+ !F6 U+0416 afii10024
248
+ !F7 U+0412 afii10019
249
+ !F8 U+042C afii10046
250
+ !F9 U+042B afii10045
251
+ !FA U+0417 afii10025
252
+ !FB U+0428 afii10042
253
+ !FC U+042D afii10047
254
+ !FD U+0429 afii10043
255
+ !FE U+0427 afii10041
256
+ !FF U+042A afii10044
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/makefont.php ADDED
@@ -0,0 +1,451 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*******************************************************************************
3
+ * Utility to generate font definition files *
4
+ * *
5
+ * Version: 1.3 *
6
+ * Date: 2015-11-29 *
7
+ * Author: Olivier PLATHEY *
8
+ *******************************************************************************/
9
+
10
+ require('ttfparser.php');
11
+
12
+ function Message($txt, $severity='')
13
+ {
14
+ if(PHP_SAPI=='cli')
15
+ {
16
+ if($severity)
17
+ echo "$severity: ";
18
+ echo "$txt\n";
19
+ }
20
+ else
21
+ {
22
+ if($severity)
23
+ echo "<b>$severity</b>: ";
24
+ echo "$txt<br>";
25
+ }
26
+ }
27
+
28
+ function Notice($txt)
29
+ {
30
+ Message($txt, 'Notice');
31
+ }
32
+
33
+ function Warning($txt)
34
+ {
35
+ Message($txt, 'Warning');
36
+ }
37
+
38
+ function Error($txt)
39
+ {
40
+ Message($txt, 'Error');
41
+ exit;
42
+ }
43
+
44
+ function LoadMap($enc)
45
+ {
46
+ $file = dirname(__FILE__).'/'.strtolower($enc).'.map';
47
+ $a = file($file);
48
+ if(empty($a))
49
+ Error('Encoding not found: '.$enc);
50
+ $map = array_fill(0, 256, array('uv'=>-1, 'name'=>'.notdef'));
51
+ foreach($a as $line)
52
+ {
53
+ $e = explode(' ', rtrim($line));
54
+ $c = hexdec(substr($e[0],1));
55
+ $uv = hexdec(substr($e[1],2));
56
+ $name = $e[2];
57
+ $map[$c] = array('uv'=>$uv, 'name'=>$name);
58
+ }
59
+ return $map;
60
+ }
61
+
62
+ function GetInfoFromTrueType($file, $embed, $subset, $map)
63
+ {
64
+ // Return information from a TrueType font
65
+ try
66
+ {
67
+ $ttf = new TTFParser($file);
68
+ $ttf->Parse();
69
+ }
70
+ catch(Exception $e)
71
+ {
72
+ Error($e->getMessage());
73
+ }
74
+ if($embed)
75
+ {
76
+ if(!$ttf->embeddable)
77
+ Error('Font license does not allow embedding');
78
+ if($subset)
79
+ {
80
+ $chars = array();
81
+ foreach($map as $v)
82
+ {
83
+ if($v['name']!='.notdef')
84
+ $chars[] = $v['uv'];
85
+ }
86
+ $ttf->Subset($chars);
87
+ $info['Data'] = $ttf->Build();
88
+ }
89
+ else
90
+ $info['Data'] = file_get_contents($file);
91
+ $info['OriginalSize'] = strlen($info['Data']);
92
+ }
93
+ $k = 1000/$ttf->unitsPerEm;
94
+ $info['FontName'] = $ttf->postScriptName;
95
+ $info['Bold'] = $ttf->bold;
96
+ $info['ItalicAngle'] = $ttf->italicAngle;
97
+ $info['IsFixedPitch'] = $ttf->isFixedPitch;
98
+ $info['Ascender'] = round($k*$ttf->typoAscender);
99
+ $info['Descender'] = round($k*$ttf->typoDescender);
100
+ $info['UnderlineThickness'] = round($k*$ttf->underlineThickness);
101
+ $info['UnderlinePosition'] = round($k*$ttf->underlinePosition);
102
+ $info['FontBBox'] = array(round($k*$ttf->xMin), round($k*$ttf->yMin), round($k*$ttf->xMax), round($k*$ttf->yMax));
103
+ $info['CapHeight'] = round($k*$ttf->capHeight);
104
+ $info['MissingWidth'] = round($k*$ttf->glyphs[0]['w']);
105
+ $widths = array_fill(0, 256, $info['MissingWidth']);
106
+ foreach($map as $c=>$v)
107
+ {
108
+ if($v['name']!='.notdef')
109
+ {
110
+ if(isset($ttf->chars[$v['uv']]))
111
+ {
112
+ $id = $ttf->chars[$v['uv']];
113
+ $w = $ttf->glyphs[$id]['w'];
114
+ $widths[$c] = round($k*$w);
115
+ }
116
+ else
117
+ Warning('Character '.$v['name'].' is missing');
118
+ }
119
+ }
120
+ $info['Widths'] = $widths;
121
+ return $info;
122
+ }
123
+
124
+ function GetInfoFromType1($file, $embed, $map)
125
+ {
126
+ // Return information from a Type1 font
127
+ if($embed)
128
+ {
129
+ $f = fopen($file, 'rb');
130
+ if(!$f)
131
+ Error('Can\'t open font file');
132
+ // Read first segment
133
+ $a = unpack('Cmarker/Ctype/Vsize', fread($f,6));
134
+ if($a['marker']!=128)
135
+ Error('Font file is not a valid binary Type1');
136
+ $size1 = $a['size'];
137
+ $data = fread($f, $size1);
138
+ // Read second segment
139
+ $a = unpack('Cmarker/Ctype/Vsize', fread($f,6));
140
+ if($a['marker']!=128)
141
+ Error('Font file is not a valid binary Type1');
142
+ $size2 = $a['size'];
143
+ $data .= fread($f, $size2);
144
+ fclose($f);
145
+ $info['Data'] = $data;
146
+ $info['Size1'] = $size1;
147
+ $info['Size2'] = $size2;
148
+ }
149
+
150
+ $afm = substr($file, 0, -3).'afm';
151
+ if(!file_exists($afm))
152
+ Error('AFM font file not found: '.$afm);
153
+ $a = file($afm);
154
+ if(empty($a))
155
+ Error('AFM file empty or not readable');
156
+ foreach($a as $line)
157
+ {
158
+ $e = explode(' ', rtrim($line));
159
+ if(count($e)<2)
160
+ continue;
161
+ $entry = $e[0];
162
+ if($entry=='C')
163
+ {
164
+ $w = $e[4];
165
+ $name = $e[7];
166
+ $cw[$name] = $w;
167
+ }
168
+ elseif($entry=='FontName')
169
+ $info['FontName'] = $e[1];
170
+ elseif($entry=='Weight')
171
+ $info['Weight'] = $e[1];
172
+ elseif($entry=='ItalicAngle')
173
+ $info['ItalicAngle'] = (int)$e[1];
174
+ elseif($entry=='Ascender')
175
+ $info['Ascender'] = (int)$e[1];
176
+ elseif($entry=='Descender')
177
+ $info['Descender'] = (int)$e[1];
178
+ elseif($entry=='UnderlineThickness')
179
+ $info['UnderlineThickness'] = (int)$e[1];
180
+ elseif($entry=='UnderlinePosition')
181
+ $info['UnderlinePosition'] = (int)$e[1];
182
+ elseif($entry=='IsFixedPitch')
183
+ $info['IsFixedPitch'] = ($e[1]=='true');
184
+ elseif($entry=='FontBBox')
185
+ $info['FontBBox'] = array((int)$e[1], (int)$e[2], (int)$e[3], (int)$e[4]);
186
+ elseif($entry=='CapHeight')
187
+ $info['CapHeight'] = (int)$e[1];
188
+ elseif($entry=='StdVW')
189
+ $info['StdVW'] = (int)$e[1];
190
+ }
191
+
192
+ if(!isset($info['FontName']))
193
+ Error('FontName missing in AFM file');
194
+ if(!isset($info['Ascender']))
195
+ $info['Ascender'] = $info['FontBBox'][3];
196
+ if(!isset($info['Descender']))
197
+ $info['Descender'] = $info['FontBBox'][1];
198
+ $info['Bold'] = isset($info['Weight']) && preg_match('/bold|black/i', $info['Weight']);
199
+ if(isset($cw['.notdef']))
200
+ $info['MissingWidth'] = $cw['.notdef'];
201
+ else
202
+ $info['MissingWidth'] = 0;
203
+ $widths = array_fill(0, 256, $info['MissingWidth']);
204
+ foreach($map as $c=>$v)
205
+ {
206
+ if($v['name']!='.notdef')
207
+ {
208
+ if(isset($cw[$v['name']]))
209
+ $widths[$c] = $cw[$v['name']];
210
+ else
211
+ Warning('Character '.$v['name'].' is missing');
212
+ }
213
+ }
214
+ $info['Widths'] = $widths;
215
+ return $info;
216
+ }
217
+
218
+ function MakeFontDescriptor($info)
219
+ {
220
+ // Ascent
221
+ $fd = "array('Ascent'=>".$info['Ascender'];
222
+ // Descent
223
+ $fd .= ",'Descent'=>".$info['Descender'];
224
+ // CapHeight
225
+ if(!empty($info['CapHeight']))
226
+ $fd .= ",'CapHeight'=>".$info['CapHeight'];
227
+ else
228
+ $fd .= ",'CapHeight'=>".$info['Ascender'];
229
+ // Flags
230
+ $flags = 0;
231
+ if($info['IsFixedPitch'])
232
+ $flags += 1<<0;
233
+ $flags += 1<<5;
234
+ if($info['ItalicAngle']!=0)
235
+ $flags += 1<<6;
236
+ $fd .= ",'Flags'=>".$flags;
237
+ // FontBBox
238
+ $fbb = $info['FontBBox'];
239
+ $fd .= ",'FontBBox'=>'[".$fbb[0].' '.$fbb[1].' '.$fbb[2].' '.$fbb[3]."]'";
240
+ // ItalicAngle
241
+ $fd .= ",'ItalicAngle'=>".$info['ItalicAngle'];
242
+ // StemV
243
+ if(isset($info['StdVW']))
244
+ $stemv = $info['StdVW'];
245
+ elseif($info['Bold'])
246
+ $stemv = 120;
247
+ else
248
+ $stemv = 70;
249
+ $fd .= ",'StemV'=>".$stemv;
250
+ // MissingWidth
251
+ $fd .= ",'MissingWidth'=>".$info['MissingWidth'].')';
252
+ return $fd;
253
+ }
254
+
255
+ function MakeWidthArray($widths)
256
+ {
257
+ $s = "array(\n\t";
258
+ for($c=0;$c<=255;$c++)
259
+ {
260
+ if(chr($c)=="'")
261
+ $s .= "'\\''";
262
+ elseif(chr($c)=="\\")
263
+ $s .= "'\\\\'";
264
+ elseif($c>=32 && $c<=126)
265
+ $s .= "'".chr($c)."'";
266
+ else
267
+ $s .= "chr($c)";
268
+ $s .= '=>'.$widths[$c];
269
+ if($c<255)
270
+ $s .= ',';
271
+ if(($c+1)%22==0)
272
+ $s .= "\n\t";
273
+ }
274
+ $s .= ')';
275
+ return $s;
276
+ }
277
+
278
+ function MakeFontEncoding($map)
279
+ {
280
+ // Build differences from reference encoding
281
+ $ref = LoadMap('cp1252');
282
+ $s = '';
283
+ $last = 0;
284
+ for($c=32;$c<=255;$c++)
285
+ {
286
+ if($map[$c]['name']!=$ref[$c]['name'])
287
+ {
288
+ if($c!=$last+1)
289
+ $s .= $c.' ';
290
+ $last = $c;
291
+ $s .= '/'.$map[$c]['name'].' ';
292
+ }
293
+ }
294
+ return rtrim($s);
295
+ }
296
+
297
+ function MakeUnicodeArray($map)
298
+ {
299
+ // Build mapping to Unicode values
300
+ $ranges = array();
301
+ foreach($map as $c=>$v)
302
+ {
303
+ $uv = $v['uv'];
304
+ if($uv!=-1)
305
+ {
306
+ if(isset($range))
307
+ {
308
+ if($c==$range[1]+1 && $uv==$range[3]+1)
309
+ {
310
+ $range[1]++;
311
+ $range[3]++;
312
+ }
313
+ else
314
+ {
315
+ $ranges[] = $range;
316
+ $range = array($c, $c, $uv, $uv);
317
+ }
318
+ }
319
+ else
320
+ $range = array($c, $c, $uv, $uv);
321
+ }
322
+ }
323
+ $ranges[] = $range;
324
+
325
+ foreach($ranges as $range)
326
+ {
327
+ if(isset($s))
328
+ $s .= ',';
329
+ else
330
+ $s = 'array(';
331
+ $s .= $range[0].'=>';
332
+ $nb = $range[1]-$range[0]+1;
333
+ if($nb>1)
334
+ $s .= 'array('.$range[2].','.$nb.')';
335
+ else
336
+ $s .= $range[2];
337
+ }
338
+ $s .= ')';
339
+ return $s;
340
+ }
341
+
342
+ function SaveToFile($file, $s, $mode)
343
+ {
344
+ $f = fopen($file, 'w'.$mode);
345
+ if(!$f)
346
+ Error('Can\'t write to file '.$file);
347
+ fwrite($f, $s);
348
+ fclose($f);
349
+ }
350
+
351
+ function MakeDefinitionFile($file, $type, $enc, $embed, $subset, $map, $info)
352
+ {
353
+ $s = "<?php\n";
354
+ $s .= '$type = \''.$type."';\n";
355
+ $s .= '$name = \''.$info['FontName']."';\n";
356
+ $s .= '$desc = '.MakeFontDescriptor($info).";\n";
357
+ $s .= '$up = '.$info['UnderlinePosition'].";\n";
358
+ $s .= '$ut = '.$info['UnderlineThickness'].";\n";
359
+ $s .= '$cw = '.MakeWidthArray($info['Widths']).";\n";
360
+ $s .= '$enc = \''.$enc."';\n";
361
+ $diff = MakeFontEncoding($map);
362
+ if($diff)
363
+ $s .= '$diff = \''.$diff."';\n";
364
+ $s .= '$uv = '.MakeUnicodeArray($map).";\n";
365
+ if($embed)
366
+ {
367
+ $s .= '$file = \''.$info['File']."';\n";
368
+ if($type=='Type1')
369
+ {
370
+ $s .= '$size1 = '.$info['Size1'].";\n";
371
+ $s .= '$size2 = '.$info['Size2'].";\n";
372
+ }
373
+ else
374
+ {
375
+ $s .= '$originalsize = '.$info['OriginalSize'].";\n";
376
+ if($subset)
377
+ $s .= "\$subsetted = true;\n";
378
+ }
379
+ }
380
+ $s .= "?>\n";
381
+ SaveToFile($file, $s, 't');
382
+ }
383
+
384
+ function MakeFont($fontfile, $enc='cp1252', $embed=true, $subset=true)
385
+ {
386
+ // Generate a font definition file
387
+ if(get_magic_quotes_runtime())
388
+ @set_magic_quotes_runtime(false);
389
+ ini_set('auto_detect_line_endings', '1');
390
+
391
+ if(!file_exists($fontfile))
392
+ Error('Font file not found: '.$fontfile);
393
+ $ext = strtolower(substr($fontfile,-3));
394
+ if($ext=='ttf' || $ext=='otf')
395
+ $type = 'TrueType';
396
+ elseif($ext=='pfb')
397
+ $type = 'Type1';
398
+ else
399
+ Error('Unrecognized font file extension: '.$ext);
400
+
401
+ $map = LoadMap($enc);
402
+
403
+ if($type=='TrueType')
404
+ $info = GetInfoFromTrueType($fontfile, $embed, $subset, $map);
405
+ else
406
+ $info = GetInfoFromType1($fontfile, $embed, $map);
407
+
408
+ $basename = substr(basename($fontfile), 0, -4);
409
+ if($embed)
410
+ {
411
+ if(function_exists('gzcompress'))
412
+ {
413
+ $file = $basename.'.z';
414
+ SaveToFile($file, gzcompress($info['Data']), 'b');
415
+ $info['File'] = $file;
416
+ Message('Font file compressed: '.$file);
417
+ }
418
+ else
419
+ {
420
+ $info['File'] = basename($fontfile);
421
+ $subset = false;
422
+ Notice('Font file could not be compressed (zlib extension not available)');
423
+ }
424
+ }
425
+
426
+ MakeDefinitionFile($basename.'.php', $type, $enc, $embed, $subset, $map, $info);
427
+ Message('Font definition file generated: '.$basename.'.php');
428
+ }
429
+
430
+ if(PHP_SAPI=='cli')
431
+ {
432
+ // Command-line interface
433
+ ini_set('log_errors', '0');
434
+ if($argc==1)
435
+ die("Usage: php makefont.php fontfile [encoding] [embed] [subset]\n");
436
+ $fontfile = $argv[1];
437
+ if($argc>=3)
438
+ $enc = $argv[2];
439
+ else
440
+ $enc = 'cp1252';
441
+ if($argc>=4)
442
+ $embed = ($argv[3]=='true' || $argv[3]=='1');
443
+ else
444
+ $embed = true;
445
+ if($argc>=5)
446
+ $subset = ($argv[4]=='true' || $argv[4]=='1');
447
+ else
448
+ $subset = true;
449
+ MakeFont($fontfile, $enc, $embed, $subset);
450
+ }
451
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/makefont/ttfparser.php ADDED
@@ -0,0 +1,723 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*******************************************************************************
3
+ * Class to parse and subset TrueType fonts *
4
+ * *
5
+ * Version: 1.1 *
6
+ * Date: 2015-11-29 *
7
+ * Author: Olivier PLATHEY *
8
+ *******************************************************************************/
9
+
10
+ class TTFParser
11
+ {
12
+ protected $f;
13
+ protected $tables;
14
+ protected $numberOfHMetrics;
15
+ protected $numGlyphs;
16
+ protected $glyphNames;
17
+ protected $indexToLocFormat;
18
+ protected $subsettedChars;
19
+ protected $subsettedGlyphs;
20
+ public $chars;
21
+ public $glyphs;
22
+ public $unitsPerEm;
23
+ public $xMin, $yMin, $xMax, $yMax;
24
+ public $postScriptName;
25
+ public $embeddable;
26
+ public $bold;
27
+ public $typoAscender;
28
+ public $typoDescender;
29
+ public $capHeight;
30
+ public $italicAngle;
31
+ public $underlinePosition;
32
+ public $underlineThickness;
33
+ public $isFixedPitch;
34
+
35
+ function __construct($file)
36
+ {
37
+ $this->f = fopen($file, 'rb');
38
+ if(!$this->f)
39
+ $this->Error('Can\'t open file: '.$file);
40
+ }
41
+
42
+ function __destruct()
43
+ {
44
+ if(is_resource($this->f))
45
+ fclose($this->f);
46
+ }
47
+
48
+ function Parse()
49
+ {
50
+ $this->ParseOffsetTable();
51
+ $this->ParseHead();
52
+ $this->ParseHhea();
53
+ $this->ParseMaxp();
54
+ $this->ParseHmtx();
55
+ $this->ParseLoca();
56
+ $this->ParseGlyf();
57
+ $this->ParseCmap();
58
+ $this->ParseName();
59
+ $this->ParseOS2();
60
+ $this->ParsePost();
61
+ }
62
+
63
+ function ParseOffsetTable()
64
+ {
65
+ $version = $this->Read(4);
66
+ if($version=='OTTO')
67
+ $this->Error('OpenType fonts based on PostScript outlines are not supported');
68
+ if($version!="\x00\x01\x00\x00")
69
+ $this->Error('Unrecognized file format');
70
+ $numTables = $this->ReadUShort();
71
+ $this->Skip(3*2); // searchRange, entrySelector, rangeShift
72
+ $this->tables = array();
73
+ for($i=0;$i<$numTables;$i++)
74
+ {
75
+ $tag = $this->Read(4);
76
+ $checkSum = $this->Read(4);
77
+ $offset = $this->ReadULong();
78
+ $length = $this->ReadULong(4);
79
+ $this->tables[$tag] = array('offset'=>$offset, 'length'=>$length, 'checkSum'=>$checkSum);
80
+ }
81
+ }
82
+
83
+ function ParseHead()
84
+ {
85
+ $this->Seek('head');
86
+ $this->Skip(3*4); // version, fontRevision, checkSumAdjustment
87
+ $magicNumber = $this->ReadULong();
88
+ if($magicNumber!=0x5F0F3CF5)
89
+ $this->Error('Incorrect magic number');
90
+ $this->Skip(2); // flags
91
+ $this->unitsPerEm = $this->ReadUShort();
92
+ $this->Skip(2*8); // created, modified
93
+ $this->xMin = $this->ReadShort();
94
+ $this->yMin = $this->ReadShort();
95
+ $this->xMax = $this->ReadShort();
96
+ $this->yMax = $this->ReadShort();
97
+ $this->Skip(3*2); // macStyle, lowestRecPPEM, fontDirectionHint
98
+ $this->indexToLocFormat = $this->ReadShort();
99
+ }
100
+
101
+ function ParseHhea()
102
+ {
103
+ $this->Seek('hhea');
104
+ $this->Skip(4+15*2);
105
+ $this->numberOfHMetrics = $this->ReadUShort();
106
+ }
107
+
108
+ function ParseMaxp()
109
+ {
110
+ $this->Seek('maxp');
111
+ $this->Skip(4);
112
+ $this->numGlyphs = $this->ReadUShort();
113
+ }
114
+
115
+ function ParseHmtx()
116
+ {
117
+ $this->Seek('hmtx');
118
+ $this->glyphs = array();
119
+ for($i=0;$i<$this->numberOfHMetrics;$i++)
120
+ {
121
+ $advanceWidth = $this->ReadUShort();
122
+ $lsb = $this->ReadShort();
123
+ $this->glyphs[$i] = array('w'=>$advanceWidth, 'lsb'=>$lsb);
124
+ }
125
+ for($i=$this->numberOfHMetrics;$i<$this->numGlyphs;$i++)
126
+ {
127
+ $lsb = $this->ReadShort();
128
+ $this->glyphs[$i] = array('w'=>$advanceWidth, 'lsb'=>$lsb);
129
+ }
130
+ }
131
+
132
+ function ParseLoca()
133
+ {
134
+ $this->Seek('loca');
135
+ $offsets = array();
136
+ if($this->indexToLocFormat==0)
137
+ {
138
+ // Short format
139
+ for($i=0;$i<=$this->numGlyphs;$i++)
140
+ $offsets[] = 2*$this->ReadUShort();
141
+ }
142
+ else
143
+ {
144
+ // Long format
145
+ for($i=0;$i<=$this->numGlyphs;$i++)
146
+ $offsets[] = $this->ReadULong();
147
+ }
148
+ for($i=0;$i<$this->numGlyphs;$i++)
149
+ {
150
+ $this->glyphs[$i]['offset'] = $offsets[$i];
151
+ $this->glyphs[$i]['length'] = $offsets[$i+1] - $offsets[$i];
152
+ }
153
+ }
154
+
155
+ function ParseGlyf()
156
+ {
157
+ $tableOffset = $this->tables['glyf']['offset'];
158
+ foreach($this->glyphs as &$glyph)
159
+ {
160
+ if($glyph['length']>0)
161
+ {
162
+ fseek($this->f, $tableOffset+$glyph['offset'], SEEK_SET);
163
+ if($this->ReadShort()<0)
164
+ {
165
+ // Composite glyph
166
+ $this->Skip(4*2); // xMin, yMin, xMax, yMax
167
+ $offset = 5*2;
168
+ $a = array();
169
+ do
170
+ {
171
+ $flags = $this->ReadUShort();
172
+ $index = $this->ReadUShort();
173
+ $a[$offset+2] = $index;
174
+ if($flags & 1) // ARG_1_AND_2_ARE_WORDS
175
+ $skip = 2*2;
176
+ else
177
+ $skip = 2;
178
+ if($flags & 8) // WE_HAVE_A_SCALE
179
+ $skip += 2;
180
+ elseif($flags & 64) // WE_HAVE_AN_X_AND_Y_SCALE
181
+ $skip += 2*2;
182
+ elseif($flags & 128) // WE_HAVE_A_TWO_BY_TWO
183
+ $skip += 4*2;
184
+ $this->Skip($skip);
185
+ $offset += 2*2 + $skip;
186
+ }
187
+ while($flags & 32); // MORE_COMPONENTS
188
+ $glyph['components'] = $a;
189
+ }
190
+ }
191
+ }
192
+ }
193
+
194
+ function ParseCmap()
195
+ {
196
+ $this->Seek('cmap');
197
+ $this->Skip(2); // version
198
+ $numTables = $this->ReadUShort();
199
+ $offset31 = 0;
200
+ for($i=0;$i<$numTables;$i++)
201
+ {
202
+ $platformID = $this->ReadUShort();
203
+ $encodingID = $this->ReadUShort();
204
+ $offset = $this->ReadULong();
205
+ if($platformID==3 && $encodingID==1)
206
+ $offset31 = $offset;
207
+ }
208
+ if($offset31==0)
209
+ $this->Error('No Unicode encoding found');
210
+
211
+ $startCount = array();
212
+ $endCount = array();
213
+ $idDelta = array();
214
+ $idRangeOffset = array();
215
+ $this->chars = array();
216
+ fseek($this->f, $this->tables['cmap']['offset']+$offset31, SEEK_SET);
217
+ $format = $this->ReadUShort();
218
+ if($format!=4)
219
+ $this->Error('Unexpected subtable format: '.$format);
220
+ $this->Skip(2*2); // length, language
221
+ $segCount = $this->ReadUShort()/2;
222
+ $this->Skip(3*2); // searchRange, entrySelector, rangeShift
223
+ for($i=0;$i<$segCount;$i++)
224
+ $endCount[$i] = $this->ReadUShort();
225
+ $this->Skip(2); // reservedPad
226
+ for($i=0;$i<$segCount;$i++)
227
+ $startCount[$i] = $this->ReadUShort();
228
+ for($i=0;$i<$segCount;$i++)
229
+ $idDelta[$i] = $this->ReadShort();
230
+ $offset = ftell($this->f);
231
+ for($i=0;$i<$segCount;$i++)
232
+ $idRangeOffset[$i] = $this->ReadUShort();
233
+
234
+ for($i=0;$i<$segCount;$i++)
235
+ {
236
+ $c1 = $startCount[$i];
237
+ $c2 = $endCount[$i];
238
+ $d = $idDelta[$i];
239
+ $ro = $idRangeOffset[$i];
240
+ if($ro>0)
241
+ fseek($this->f, $offset+2*$i+$ro, SEEK_SET);
242
+ for($c=$c1;$c<=$c2;$c++)
243
+ {
244
+ if($c==0xFFFF)
245
+ break;
246
+ if($ro>0)
247
+ {
248
+ $gid = $this->ReadUShort();
249
+ if($gid>0)
250
+ $gid += $d;
251
+ }
252
+ else
253
+ $gid = $c+$d;
254
+ if($gid>=65536)
255
+ $gid -= 65536;
256
+ if($gid>0)
257
+ $this->chars[$c] = $gid;
258
+ }
259
+ }
260
+ }
261
+
262
+ function ParseName()
263
+ {
264
+ $this->Seek('name');
265
+ $tableOffset = $this->tables['name']['offset'];
266
+ $this->postScriptName = '';
267
+ $this->Skip(2); // format
268
+ $count = $this->ReadUShort();
269
+ $stringOffset = $this->ReadUShort();
270
+ for($i=0;$i<$count;$i++)
271
+ {
272
+ $this->Skip(3*2); // platformID, encodingID, languageID
273
+ $nameID = $this->ReadUShort();
274
+ $length = $this->ReadUShort();
275
+ $offset = $this->ReadUShort();
276
+ if($nameID==6)
277
+ {
278
+ // PostScript name
279
+ fseek($this->f, $tableOffset+$stringOffset+$offset, SEEK_SET);
280
+ $s = $this->Read($length);
281
+ $s = str_replace(chr(0), '', $s);
282
+ $s = preg_replace('|[ \[\](){}<>/%]|', '', $s);
283
+ $this->postScriptName = $s;
284
+ break;
285
+ }
286
+ }
287
+ if($this->postScriptName=='')
288
+ $this->Error('PostScript name not found');
289
+ }
290
+
291
+ function ParseOS2()
292
+ {
293
+ $this->Seek('OS/2');
294
+ $version = $this->ReadUShort();
295
+ $this->Skip(3*2); // xAvgCharWidth, usWeightClass, usWidthClass
296
+ $fsType = $this->ReadUShort();
297
+ $this->embeddable = ($fsType!=2) && ($fsType & 0x200)==0;
298
+ $this->Skip(11*2+10+4*4+4);
299
+ $fsSelection = $this->ReadUShort();
300
+ $this->bold = ($fsSelection & 32)!=0;
301
+ $this->Skip(2*2); // usFirstCharIndex, usLastCharIndex
302
+ $this->typoAscender = $this->ReadShort();
303
+ $this->typoDescender = $this->ReadShort();
304
+ if($version>=2)
305
+ {
306
+ $this->Skip(3*2+2*4+2);
307
+ $this->capHeight = $this->ReadShort();
308
+ }
309
+ else
310
+ $this->capHeight = 0;
311
+ }
312
+
313
+ function ParsePost()
314
+ {
315
+ $this->Seek('post');
316
+ $version = $this->ReadULong();
317
+ $this->italicAngle = $this->ReadShort();
318
+ $this->Skip(2); // Skip decimal part
319
+ $this->underlinePosition = $this->ReadShort();
320
+ $this->underlineThickness = $this->ReadShort();
321
+ $this->isFixedPitch = ($this->ReadULong()!=0);
322
+ if($version==0x20000)
323
+ {
324
+ // Extract glyph names
325
+ $this->Skip(4*4); // min/max usage
326
+ $this->Skip(2); // numberOfGlyphs
327
+ $glyphNameIndex = array();
328
+ $names = array();
329
+ $numNames = 0;
330
+ for($i=0;$i<$this->numGlyphs;$i++)
331
+ {
332
+ $index = $this->ReadUShort();
333
+ $glyphNameIndex[] = $index;
334
+ if($index>=258 && $index-257>$numNames)
335
+ $numNames = $index-257;
336
+ }
337
+ for($i=0;$i<$numNames;$i++)
338
+ {
339
+ $len = ord($this->Read(1));
340
+ $names[] = $this->Read($len);
341
+ }
342
+ foreach($glyphNameIndex as $i=>$index)
343
+ {
344
+ if($index>=258)
345
+ $this->glyphs[$i]['name'] = $names[$index-258];
346
+ else
347
+ $this->glyphs[$i]['name'] = $index;
348
+ }
349
+ $this->glyphNames = true;
350
+ }
351
+ else
352
+ $this->glyphNames = false;
353
+ }
354
+
355
+ function Subset($chars)
356
+ {
357
+ /* $chars = array_keys($this->chars);
358
+ $this->subsettedChars = $chars;
359
+ $this->subsettedGlyphs = array();
360
+ for($i=0;$i<$this->numGlyphs;$i++)
361
+ {
362
+ $this->subsettedGlyphs[] = $i;
363
+ $this->glyphs[$i]['ssid'] = $i;
364
+ }*/
365
+
366
+ $this->AddGlyph(0);
367
+ $this->subsettedChars = array();
368
+ foreach($chars as $char)
369
+ {
370
+ if(isset($this->chars[$char]))
371
+ {
372
+ $this->subsettedChars[] = $char;
373
+ $this->AddGlyph($this->chars[$char]);
374
+ }
375
+ }
376
+ }
377
+
378
+ function AddGlyph($id)
379
+ {
380
+ if(!isset($this->glyphs[$id]['ssid']))
381
+ {
382
+ $this->glyphs[$id]['ssid'] = count($this->subsettedGlyphs);
383
+ $this->subsettedGlyphs[] = $id;
384
+ if(isset($this->glyphs[$id]['components']))
385
+ {
386
+ foreach($this->glyphs[$id]['components'] as $cid)
387
+ $this->AddGlyph($cid);
388
+ }
389
+ }
390
+ }
391
+
392
+ function Build()
393
+ {
394
+ $this->BuildCmap();
395
+ $this->BuildHhea();
396
+ $this->BuildHmtx();
397
+ $this->BuildLoca();
398
+ $this->BuildGlyf();
399
+ $this->BuildMaxp();
400
+ $this->BuildPost();
401
+ return $this->BuildFont();
402
+ }
403
+
404
+ function BuildCmap()
405
+ {
406
+ if(!isset($this->subsettedChars))
407
+ return;
408
+
409
+ // Divide charset in contiguous segments
410
+ $chars = $this->subsettedChars;
411
+ sort($chars);
412
+ $segments = array();
413
+ $segment = array($chars[0], $chars[0]);
414
+ for($i=1;$i<count($chars);$i++)
415
+ {
416
+ if($chars[$i]>$segment[1]+1)
417
+ {
418
+ $segments[] = $segment;
419
+ $segment = array($chars[$i], $chars[$i]);
420
+ }
421
+ else
422
+ $segment[1]++;
423
+ }
424
+ $segments[] = $segment;
425
+ $segments[] = array(0xFFFF, 0xFFFF);
426
+ $segCount = count($segments);
427
+
428
+ // Build a Format 4 subtable
429
+ $startCount = array();
430
+ $endCount = array();
431
+ $idDelta = array();
432
+ $idRangeOffset = array();
433
+ $glyphIdArray = '';
434
+ for($i=0;$i<$segCount;$i++)
435
+ {
436
+ list($start, $end) = $segments[$i];
437
+ $startCount[] = $start;
438
+ $endCount[] = $end;
439
+ if($start!=$end)
440
+ {
441
+ // Segment with multiple chars
442
+ $idDelta[] = 0;
443
+ $idRangeOffset[] = strlen($glyphIdArray) + ($segCount-$i)*2;
444
+ for($c=$start;$c<=$end;$c++)
445
+ {
446
+ $ssid = $this->glyphs[$this->chars[$c]]['ssid'];
447
+ $glyphIdArray .= pack('n', $ssid);
448
+ }
449
+ }
450
+ else
451
+ {
452
+ // Segment with a single char
453
+ if($start<0xFFFF)
454
+ $ssid = $this->glyphs[$this->chars[$start]]['ssid'];
455
+ else
456
+ $ssid = 0;
457
+ $idDelta[] = $ssid - $start;
458
+ $idRangeOffset[] = 0;
459
+ }
460
+ }
461
+ $entrySelector = 0;
462
+ $n = $segCount;
463
+ while($n!=1)
464
+ {
465
+ $n = $n>>1;
466
+ $entrySelector++;
467
+ }
468
+ $searchRange = (1<<$entrySelector)*2;
469
+ $rangeShift = 2*$segCount - $searchRange;
470
+ $cmap = pack('nnnn', 2*$segCount, $searchRange, $entrySelector, $rangeShift);
471
+ foreach($endCount as $val)
472
+ $cmap .= pack('n', $val);
473
+ $cmap .= pack('n', 0); // reservedPad
474
+ foreach($startCount as $val)
475
+ $cmap .= pack('n', $val);
476
+ foreach($idDelta as $val)
477
+ $cmap .= pack('n', $val);
478
+ foreach($idRangeOffset as $val)
479
+ $cmap .= pack('n', $val);
480
+ $cmap .= $glyphIdArray;
481
+
482
+ $data = pack('nn', 0, 1); // version, numTables
483
+ $data .= pack('nnN', 3, 1, 12); // platformID, encodingID, offset
484
+ $data .= pack('nnn', 4, 6+strlen($cmap), 0); // format, length, language
485
+ $data .= $cmap;
486
+ $this->SetTable('cmap', $data);
487
+ }
488
+
489
+ function BuildHhea()
490
+ {
491
+ $this->LoadTable('hhea');
492
+ $numberOfHMetrics = count($this->subsettedGlyphs);
493
+ $data = substr_replace($this->tables['hhea']['data'], pack('n',$numberOfHMetrics), 4+15*2, 2);
494
+ $this->SetTable('hhea', $data);
495
+ }
496
+
497
+ function BuildHmtx()
498
+ {
499
+ $data = '';
500
+ foreach($this->subsettedGlyphs as $id)
501
+ {
502
+ $glyph = $this->glyphs[$id];
503
+ $data .= pack('nn', $glyph['w'], $glyph['lsb']);
504
+ }
505
+ $this->SetTable('hmtx', $data);
506
+ }
507
+
508
+ function BuildLoca()
509
+ {
510
+ $data = '';
511
+ $offset = 0;
512
+ foreach($this->subsettedGlyphs as $id)
513
+ {
514
+ if($this->indexToLocFormat==0)
515
+ $data .= pack('n', $offset/2);
516
+ else
517
+ $data .= pack('N', $offset);
518
+ $offset += $this->glyphs[$id]['length'];
519
+ }
520
+ if($this->indexToLocFormat==0)
521
+ $data .= pack('n', $offset/2);
522
+ else
523
+ $data .= pack('N', $offset);
524
+ $this->SetTable('loca', $data);
525
+ }
526
+
527
+ function BuildGlyf()
528
+ {
529
+ $tableOffset = $this->tables['glyf']['offset'];
530
+ $data = '';
531
+ foreach($this->subsettedGlyphs as $id)
532
+ {
533
+ $glyph = $this->glyphs[$id];
534
+ fseek($this->f, $tableOffset+$glyph['offset'], SEEK_SET);
535
+ $glyph_data = $this->Read($glyph['length']);
536
+ if(isset($glyph['components']))
537
+ {
538
+ // Composite glyph
539
+ foreach($glyph['components'] as $offset=>$cid)
540
+ {
541
+ $ssid = $this->glyphs[$cid]['ssid'];
542
+ $glyph_data = substr_replace($glyph_data, pack('n',$ssid), $offset, 2);
543
+ }
544
+ }
545
+ $data .= $glyph_data;
546
+ }
547
+ $this->SetTable('glyf', $data);
548
+ }
549
+
550
+ function BuildMaxp()
551
+ {
552
+ $this->LoadTable('maxp');
553
+ $numGlyphs = count($this->subsettedGlyphs);
554
+ $data = substr_replace($this->tables['maxp']['data'], pack('n',$numGlyphs), 4, 2);
555
+ $this->SetTable('maxp', $data);
556
+ }
557
+
558
+ function BuildPost()
559
+ {
560
+ $this->Seek('post');
561
+ if($this->glyphNames)
562
+ {
563
+ // Version 2.0
564
+ $numberOfGlyphs = count($this->subsettedGlyphs);
565
+ $numNames = 0;
566
+ $names = '';
567
+ $data = $this->Read(2*4+2*2+5*4);
568
+ $data .= pack('n', $numberOfGlyphs);
569
+ foreach($this->subsettedGlyphs as $id)
570
+ {
571
+ $name = $this->glyphs[$id]['name'];
572
+ if(is_string($name))
573
+ {
574
+ $data .= pack('n', 258+$numNames);
575
+ $names .= chr(strlen($name)).$name;
576
+ $numNames++;
577
+ }
578
+ else
579
+ $data .= pack('n', $name);
580
+ }
581
+ $data .= $names;
582
+ }
583
+ else
584
+ {
585
+ // Version 3.0
586
+ $this->Skip(4);
587
+ $data = "\x00\x03\x00\x00";
588
+ $data .= $this->Read(4+2*2+5*4);
589
+ }
590
+ $this->SetTable('post', $data);
591
+ }
592
+
593
+ function BuildFont()
594
+ {
595
+ $tags = array();
596
+ foreach(array('cmap', 'cvt ', 'fpgm', 'glyf', 'head', 'hhea', 'hmtx', 'loca', 'maxp', 'name', 'post', 'prep') as $tag)
597
+ {
598
+ if(isset($this->tables[$tag]))
599
+ $tags[] = $tag;
600
+ }
601
+ $numTables = count($tags);
602
+ $offset = 12 + 16*$numTables;
603
+ foreach($tags as $tag)
604
+ {
605
+ if(!isset($this->tables[$tag]['data']))
606
+ $this->LoadTable($tag);
607
+ $this->tables[$tag]['offset'] = $offset;
608
+ $offset += strlen($this->tables[$tag]['data']);
609
+ }
610
+ // $this->tables['head']['data'] = substr_replace($this->tables['head']['data'], "\x00\x00\x00\x00", 8, 4);
611
+
612
+ // Build offset table
613
+ $entrySelector = 0;
614
+ $n = $numTables;
615
+ while($n!=1)
616
+ {
617
+ $n = $n>>1;
618
+ $entrySelector++;
619
+ }
620
+ $searchRange = 16*(1<<$entrySelector);
621
+ $rangeShift = 16*$numTables - $searchRange;
622
+ $offsetTable = pack('nnnnnn', 1, 0, $numTables, $searchRange, $entrySelector, $rangeShift);
623
+ foreach($tags as $tag)
624
+ {
625
+ $table = $this->tables[$tag];
626
+ $offsetTable .= $tag.$table['checkSum'].pack('NN', $table['offset'], $table['length']);
627
+ }
628
+
629
+ // Compute checkSumAdjustment (0xB1B0AFBA - font checkSum)
630
+ $s = $this->CheckSum($offsetTable);
631
+ foreach($tags as $tag)
632
+ $s .= $this->tables[$tag]['checkSum'];
633
+ $a = unpack('n2', $this->CheckSum($s));
634
+ $high = 0xB1B0 + ($a[1]^0xFFFF);
635
+ $low = 0xAFBA + ($a[2]^0xFFFF) + 1;
636
+ $checkSumAdjustment = pack('nn', $high+($low>>16), $low);
637
+ $this->tables['head']['data'] = substr_replace($this->tables['head']['data'], $checkSumAdjustment, 8, 4);
638
+
639
+ $font = $offsetTable;
640
+ foreach($tags as $tag)
641
+ $font .= $this->tables[$tag]['data'];
642
+
643
+ return $font;
644
+ }
645
+
646
+ function LoadTable($tag)
647
+ {
648
+ $this->Seek($tag);
649
+ $length = $this->tables[$tag]['length'];
650
+ $n = $length % 4;
651
+ if($n>0)
652
+ $length += 4 - $n;
653
+ $this->tables[$tag]['data'] = $this->Read($length);
654
+ }
655
+
656
+ function SetTable($tag, $data)
657
+ {
658
+ $length = strlen($data);
659
+ $n = $length % 4;
660
+ if($n>0)
661
+ $data = str_pad($data, $length+4-$n, "\x00");
662
+ $this->tables[$tag]['data'] = $data;
663
+ $this->tables[$tag]['length'] = $length;
664
+ $this->tables[$tag]['checkSum'] = $this->CheckSum($data);
665
+ }
666
+
667
+ function Seek($tag)
668
+ {
669
+ if(!isset($this->tables[$tag]))
670
+ $this->Error('Table not found: '.$tag);
671
+ fseek($this->f, $this->tables[$tag]['offset'], SEEK_SET);
672
+ }
673
+
674
+ function Skip($n)
675
+ {
676
+ fseek($this->f, $n, SEEK_CUR);
677
+ }
678
+
679
+ function Read($n)
680
+ {
681
+ return $n>0 ? fread($this->f, $n) : '';
682
+ }
683
+
684
+ function ReadUShort()
685
+ {
686
+ $a = unpack('nn', fread($this->f,2));
687
+ return $a['n'];
688
+ }
689
+
690
+ function ReadShort()
691
+ {
692
+ $a = unpack('nn', fread($this->f,2));
693
+ $v = $a['n'];
694
+ if($v>=0x8000)
695
+ $v -= 65536;
696
+ return $v;
697
+ }
698
+
699
+ function ReadULong()
700
+ {
701
+ $a = unpack('NN', fread($this->f,4));
702
+ return $a['N'];
703
+ }
704
+
705
+ function CheckSum($s)
706
+ {
707
+ $n = strlen($s);
708
+ $high = 0;
709
+ $low = 0;
710
+ for($i=0;$i<$n;$i+=4)
711
+ {
712
+ $high += (ord($s[$i])<<8) + ord($s[$i+1]);
713
+ $low += (ord($s[$i+2])<<8) + ord($s[$i+3]);
714
+ }
715
+ return pack('nn', $high+($low>>16), $low);
716
+ }
717
+
718
+ function Error($msg)
719
+ {
720
+ throw new Exception($msg);
721
+ }
722
+ }
723
+ ?>
skin/adminhtml/default/default/vtriocustomreport/fpdf/mc_table.php ADDED
@@ -0,0 +1,107 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ require('fpdf.php');
3
+
4
+ class PDF_MC_Table extends FPDF
5
+ {
6
+ var $widths;
7
+ var $aligns;
8
+
9
+ function SetWidths($w)
10
+ {
11
+ //Set the array of column widths
12
+ $this->widths=$w;
13
+ }
14
+
15
+ function SetAligns($a)
16
+ {
17
+ //Set the array of column alignments
18
+ $this->aligns=$a;
19
+ }
20
+
21
+ function Row($data)
22
+ {
23
+ //Calculate the height of the row
24
+ $nb=0;
25
+ for($i=0;$i<count($data);$i++)
26
+ $nb=max($nb,$this->NbLines($this->widths[$i],$data[$i]));
27
+ $h=5*$nb;
28
+ //Issue a page break first if needed
29
+ $this->CheckPageBreak($h);
30
+ //Draw the cells of the row
31
+ for($i=0;$i<count($data);$i++)
32
+ {
33
+ $w=$this->widths[$i];
34
+ $a=isset($this->aligns[$i]) ? $this->aligns[$i] : 'L';
35
+ //Save the current position
36
+ $x=$this->GetX();
37
+ $y=$this->GetY();
38
+ //Draw the border
39
+ $this->Rect($x,$y,$w,$h);
40
+ //Print the text
41
+ $this->MultiCell($w,5,$data[$i],0,$a);
42
+ //Put the position to the right of the cell
43
+ $this->SetXY($x+$w,$y);
44
+ }
45
+ //Go to the next line
46
+ $this->Ln($h);
47
+ }
48
+
49
+ function CheckPageBreak($h)
50
+ {
51
+ //If the height h would cause an overflow, add a new page immediately
52
+ if($this->GetY()+$h>$this->PageBreakTrigger)
53
+ $this->AddPage($this->CurOrientation);
54
+ }
55
+
56
+ function NbLines($w,$txt)
57
+ {
58
+ //Computes the number of lines a MultiCell of width w will take
59
+ $cw=&$this->CurrentFont['cw'];
60
+ if($w==0)
61
+ $w=$this->w-$this->rMargin-$this->x;
62
+ $wmax=($w-2*$this->cMargin)*1000/$this->FontSize;
63
+ $s=str_replace("\r",'',$txt);
64
+ $nb=strlen($s);
65
+ if($nb>0 and $s[$nb-1]=="\n")
66
+ $nb--;
67
+ $sep=-1;
68
+ $i=0;
69
+ $j=0;
70
+ $l=0;
71
+ $nl=1;
72
+ while($i<$nb)
73
+ {
74
+ $c=$s[$i];
75
+ if($c=="\n")
76
+ {
77
+ $i++;
78
+ $sep=-1;
79
+ $j=$i;
80
+ $l=0;
81
+ $nl++;
82
+ continue;
83
+ }
84
+ if($c==' ')
85
+ $sep=$i;
86
+ $l+=$cw[$c];
87
+ if($l>$wmax)
88
+ {
89
+ if($sep==-1)
90
+ {
91
+ if($i==$j)
92
+ $i++;
93
+ }
94
+ else
95
+ $i=$sep+1;
96
+ $sep=-1;
97
+ $j=$i;
98
+ $l=0;
99
+ $nl++;
100
+ }
101
+ else
102
+ $i++;
103
+ }
104
+ return $nl;
105
+ }
106
+ }
107
+ ?>
skin/adminhtml/default/default/vtriocustomreport/images/vreport_logo.png ADDED
Binary file