ajout app
This commit is contained in:
48
SNIPE-IT/app/Models/Labels/RectangleSheet.php
Normal file
48
SNIPE-IT/app/Models/Labels/RectangleSheet.php
Normal file
@ -0,0 +1,48 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models\Labels;
|
||||
|
||||
abstract class RectangleSheet extends Sheet
|
||||
{
|
||||
/**
|
||||
* Returns the number of columns per sheet
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public abstract function getColumns();
|
||||
|
||||
/**
|
||||
* Returns the number of rows per sheet
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public abstract function getRows();
|
||||
|
||||
/**
|
||||
* Returns the spacing between columns
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public abstract function getLabelColumnSpacing();
|
||||
|
||||
/**
|
||||
* Returns the spacing between rows
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public abstract function getLabelRowSpacing();
|
||||
|
||||
|
||||
public function getLabelsPerPage() { return $this->getColumns() * $this->getRows(); }
|
||||
|
||||
public function getLabelPosition($index) {
|
||||
$printIndex = $index + $this->getLabelIndexOffset();
|
||||
$row = (int)($printIndex / $this->getColumns());
|
||||
$col = $printIndex - ($row * $this->getColumns());
|
||||
$x = $this->getPageMarginLeft() + (($this->getLabelWidth() + $this->getLabelColumnSpacing()) * $col);
|
||||
$y = $this->getPageMarginTop() + (($this->getLabelHeight() + $this->getLabelRowSpacing()) * $row);
|
||||
return [ $x, $y ];
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
Reference in New Issue
Block a user