Quando fui começar tive problemas pra fazer os calculo entre X e Y, leva muito tempo em imaginar as posições no PDF, por tanto fiz um pequeno HELPER para ajudar nisso segue a classe
Basta criar uma biblioteca Interna e colar o código , e habilitá-la no PDF
Si alguém quiser melhorar ou colocar mais cosas pro favor fique a vontade para compartilhar aqui.
PS: Eu não achei nada no TCPDF para mostrar isso si tiver alguem me diga, porque dai joguei fora 2 horas de trabalho
Modo de Usar*****
Deve ser colocado no CORPO do PDF LAYOUT>CODIGO>CORPO
$_wp_helper = new WP_TCPDF_HELPER($this->Pdf); //o parametro do objeto PDF é obrigatorio
$_wp_helper->showGridAndRule(); //mostrar a cuadricula + regua diferenciada ao do SC
/**
* @Author: Willian Fernando Padilha
* Una pequeña clase para ayudar a hacer los PDFs via codigo manual
*/
class WP_TCPDF_HELPER
{
private $_show_metrics_v = true; //mostrar los numeros de la regla vertical
private $_show_metrics_h = true; //mostrar los numeros de la regla horizontal
private $_font_size_metrica = 5; //tamaño de la fuente para mostrar los numeros de la regla
private $_margin_top = 0; //margen superior
private $_margin_left = 0; //margen izquierda
private $_margin_right = 0; //margen derecha
private $_margin_bottom = 0; //margen inferior
private $_dimension_y = 5; //dimension de linea horizontal
private $_dimension_x = 5; //dimension de linea vertical
private $_color_lines = array(206, 236, 245);//color de las lineas horizontales y verticales
private $_pdf_class;
private $_w;
private $_h;
/**
* Constructor Recibe como parametros
* @_pdf_class (object) ,required: Recibe la Clase TCPDF/PDF del Editor Ejemplo: $this->Pdf
* @parametros (array) Recibe una array con varias opciones
* @var $parametros[show_metrics_v] bool: Mostrar Tamaño/Numeros Verticales
* @var $parametros[show_metrics_h] bool: Mostrar Tamaño/Numeros Horizontales
* @var $parametros[font_size_metrica] int: Tamaño de la fuente de los numeros Horizontales/Verticales
* @var $parametros[margin_top] int: Margen Superior
* @var $parametros[margin_left] int: Margen Izquierda
* @var $parametros[margin_right] int: Margen Derecha
* @var $parametros[margin_bottom] int: Margen Inferior
* @var $parametros[size_line_h] int: Tamaño de la linea Horizontal
* @var $parametros[size_line_v] int: Tamaño de la linea Vertical
* @var $parametros[color_lines] array: Color en RGB
* @var array($r,$g,$b)
*/
function __construct($_pdf_class,$parametros = array())
{
$this->_pdf_class = $_pdf_class;
if (isset($parametros['show_metrics_v'])) $this->_show_metrics_v = $parametros['show_metrics_v'];
if (isset($parametros['show_metrics_h'])) $this->_show_metrics_h = $parametros['show_metrics_h'];
if (isset($parametros['font_size_metrica'])) $this->_font_size_metrica = $parametros['font_size_metrica'];
if (isset($parametros['margin_top'])) $this->_margin_top = $parametros['margin_top'];
if (isset($parametros['margin_left'])) $this->_margin_left = $parametros['margin_left'];
if (isset($parametros['margin_right'])) $this->_margin_right = $parametros['margin_right'];
if (isset($parametros['margin_bottom'])) $this->_margin_bottom = $parametros['margin_bottom'];
if (isset($parametros['size_line_h'])) $this->_dimension_y = $parametros['size_line_h'];
if (isset($parametros['size_line_v'])) $this->_dimension_x = $parametros['size_line_v'];
if (isset($parametros['color_lines'])) $this->_color_lines = $parametros['color_lines'];
}
public function showGridAndRule()
{
$dimensiones = $this->_pdf_class->getPageDimensions();
$this->_w = round($dimensiones['wk'],2);
$this->_h = round($dimensiones['hk'],2);
$this->_pdf_class->SetAutoPageBreak(FALSE, 0); //eliminar salto de pagina automatico
$this->_pdf_class->SetFont('helvetica','',$this->_font_size_metrica);
$_dim_each_y = $this->_dimension_y;
$_dim_each_x = $this->_dimension_x;
$_cant_lines_h = 0;
$_cant_lines_v = 0;
//cantidad de lineas horizontales
$_cant_lines_h = round($this->_h / $this->_dimension_y,0);
//cantidad de lineas Verticales
$_cant_lines_v = round($this->_w / $this->_dimension_x,0);
$_style_lines_h = $this->_pdf_class->SetLineStyle(array('width' => 0.1, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => $this->_color_lines));
$_style_lines_v = $this->_pdf_class->SetLineStyle(array('width' => 0.1, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => $this->_color_lines));
//lineas horizontales
for($i = 1; $i <= $_cant_lines_h; $i++){
$this->_pdf_class->Line(0 + $this->_margin_left,$_dim_each_y,$this->_w - $this->_margin_right,$_dim_each_y,$_style_lines_h);
if($this->_show_metrics_h){
$this->_pdf_class->setXY(0,$_dim_each_y - 2);
$this->_pdf_class->Write(2,$_dim_each_y);
}
$_dim_each_y += $this->_dimension_y;
}
//lineas verticales
for($i = 1; $i <= $_cant_lines_v; $i++){
$this->_pdf_class->Line($_dim_each_x,0 + $this->_margin_top,$_dim_each_x,$this->_h - $this->_margin_bottom,$_style_lines_v);
if($this->_show_metrics_v){
$this->_pdf_class->setXY($_dim_each_x - 1.5,0);
$this->_pdf_class->Cell(5,2,$_dim_each_x,0,0,'L');
}
$_dim_each_x += $this->_dimension_x;
}
}
}