From ab82c5fd88633283fc90e082fa06f4edb321ed31 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Mon, 24 Nov 2025 11:04:23 -0800 Subject: [PATCH 1/5] resizes label field box to size if needed --- app/Models/Labels/Sheets/Avery/L6009_A.php | 32 +++++++++++++++++----- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/app/Models/Labels/Sheets/Avery/L6009_A.php b/app/Models/Labels/Sheets/Avery/L6009_A.php index 4fbd0d3e5589..82eaded5520e 100644 --- a/app/Models/Labels/Sheets/Avery/L6009_A.php +++ b/app/Models/Labels/Sheets/Avery/L6009_A.php @@ -59,23 +59,41 @@ public function write($pdf, $record) $currentX += $barcodeSize + self::BARCODE_MARGIN; $usableWidth -= $barcodeSize + self::BARCODE_MARGIN; } + $fields = $record->get('fields'); - foreach ($record->get('fields') as $field) { + //Figure out how tall the label fields wants to be + $fieldCount = count($fields); + $perFieldHeight = (self::LABEL_SIZE + self::LABEL_MARGIN) + + (self::FIELD_SIZE + self::FIELD_MARGIN); + + $baseHeight = $fieldCount * $perFieldHeight; + //If it doesn't fit in the available height, scale everything down + $scale = 1.0; + if ($baseHeight > $usableHeight && $baseHeight > 0) { + $scale = $usableHeight / $baseHeight; + } + + $labelSize = self::LABEL_SIZE * $scale; + $labelMargin = self::LABEL_MARGIN * $scale; + $fieldSize = self::FIELD_SIZE * $scale; + $fieldMargin = self::FIELD_MARGIN * $scale; + + foreach ($fields as $field) { static::writeText( $pdf, $field['label'], $currentX, $currentY, - 'freesans', '', self::LABEL_SIZE, 'L', - $usableWidth, self::LABEL_SIZE, true, 0 + 'freesans', '', $labelSize, 'L', + $usableWidth, $labelSize, true, 0 ); - $currentY += self::LABEL_SIZE + self::LABEL_MARGIN; + $currentY += $labelSize + $labelMargin; static::writeText( $pdf, $field['value'], $currentX, $currentY, - 'freemono', 'B', self::FIELD_SIZE, 'L', - $usableWidth, self::FIELD_SIZE, true, 0, 0.01 + 'freemono', 'B', $fieldSize, 'L', + $usableWidth, $fieldSize, true, 0, 0.01 ); - $currentY += self::FIELD_SIZE + self::FIELD_MARGIN; + $currentY += $fieldSize + $fieldMargin; } } } From 7dccfec332aa29c91fc39aec84beaa4d251dd2f0 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 25 Nov 2025 10:12:27 -0800 Subject: [PATCH 2/5] adds notes --- app/Models/Labels/Sheets/Avery/L6009_A.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/Models/Labels/Sheets/Avery/L6009_A.php b/app/Models/Labels/Sheets/Avery/L6009_A.php index 82eaded5520e..8c0cdc9ee090 100644 --- a/app/Models/Labels/Sheets/Avery/L6009_A.php +++ b/app/Models/Labels/Sheets/Avery/L6009_A.php @@ -60,14 +60,17 @@ public function write($pdf, $record) $usableWidth -= $barcodeSize + self::BARCODE_MARGIN; } $fields = $record->get('fields'); + // Below rescales the size of the field box to fit, it feels like it could/should be abstracted one class above + // to be usable on other labels but im unsure of how to implement that, since it uses a lot of private + // constants. - //Figure out how tall the label fields wants to be + // Figure out how tall the label fields wants to be $fieldCount = count($fields); $perFieldHeight = (self::LABEL_SIZE + self::LABEL_MARGIN) + (self::FIELD_SIZE + self::FIELD_MARGIN); $baseHeight = $fieldCount * $perFieldHeight; - //If it doesn't fit in the available height, scale everything down + // If it doesn't fit in the available height, scale everything down $scale = 1.0; if ($baseHeight > $usableHeight && $baseHeight > 0) { $scale = $usableHeight / $baseHeight; From 204d7b5be6dc520fc26aa7f8101b21df959a3ae7 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 25 Nov 2025 10:23:08 -0800 Subject: [PATCH 3/5] added scaling to L4736_A --- app/Models/Labels/Sheets/Avery/L4736_A.php | 28 +++++++++++++++++----- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/app/Models/Labels/Sheets/Avery/L4736_A.php b/app/Models/Labels/Sheets/Avery/L4736_A.php index c2af2717b546..a3858a0e9829 100644 --- a/app/Models/Labels/Sheets/Avery/L4736_A.php +++ b/app/Models/Labels/Sheets/Avery/L4736_A.php @@ -95,23 +95,39 @@ public function write($pdf, $record) $currentX += $barcodeSize + self::BARCODE_MARGIN; $usableWidth -= $barcodeSize + self::BARCODE_MARGIN; } + $fields = $record->get('fields'); + $fieldCount = count($fields); + + $perFeldHeight = (self::LABEL_SIZE + self::LABEL_MARGIN) + + (self::FIELD_SIZE + self::FIELD_MARGIN); + + $baseHeight = $fieldCount * $perFeldHeight; + $scale = 1.0; + if ($baseHeight > $usableHeight && $baseHeight > 0) { + $scale = $usableHeight / $baseHeight; + } + + $labelSize = self::LABEL_SIZE * $scale; + $labelMargin = self::LABEL_MARGIN * $scale; + $fieldSize = self::FIELD_SIZE * $scale; + $fieldMargin = self::FIELD_MARGIN * $scale; foreach ($record->get('fields') as $field) { static::writeText( $pdf, $field['label'], $currentX, $currentY, - 'freesans', '', self::LABEL_SIZE, 'L', - $usableWidth, self::LABEL_SIZE, true, 0 + 'freesans', '', $labelSize, 'L', + $usableWidth, $labelSize, true, 0 ); - $currentY += self::LABEL_SIZE + self::LABEL_MARGIN; + $currentY += $labelSize + $labelMargin; static::writeText( $pdf, $field['value'], $currentX, $currentY, - 'freemono', 'B', self::FIELD_SIZE, 'L', - $usableWidth, self::FIELD_SIZE, true, 0, 0.01 + 'freemono', 'B', $fieldSize, 'L', + $usableWidth, $fieldSize, true, 0, 0.01 ); - $currentY += self::FIELD_SIZE + self::FIELD_MARGIN; + $currentY += $fieldSize + $fieldMargin; } } From b558bc5334884257006e50d1e967480a278409f6 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 25 Nov 2025 10:30:06 -0800 Subject: [PATCH 4/5] change variable" --- app/Models/Labels/Sheets/Avery/L4736_A.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Models/Labels/Sheets/Avery/L4736_A.php b/app/Models/Labels/Sheets/Avery/L4736_A.php index a3858a0e9829..fdb8c4e3092d 100644 --- a/app/Models/Labels/Sheets/Avery/L4736_A.php +++ b/app/Models/Labels/Sheets/Avery/L4736_A.php @@ -112,7 +112,7 @@ public function write($pdf, $record) $fieldSize = self::FIELD_SIZE * $scale; $fieldMargin = self::FIELD_MARGIN * $scale; - foreach ($record->get('fields') as $field) { + foreach ($fields as $field) { static::writeText( $pdf, $field['label'], $currentX, $currentY, From d3e6d7442f7a0095a76d71ff8f87601022f19b21 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 25 Nov 2025 10:30:56 -0800 Subject: [PATCH 5/5] typo bonanza --- app/Models/Labels/Sheets/Avery/L4736_A.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Models/Labels/Sheets/Avery/L4736_A.php b/app/Models/Labels/Sheets/Avery/L4736_A.php index fdb8c4e3092d..de9c14e73747 100644 --- a/app/Models/Labels/Sheets/Avery/L4736_A.php +++ b/app/Models/Labels/Sheets/Avery/L4736_A.php @@ -98,10 +98,10 @@ public function write($pdf, $record) $fields = $record->get('fields'); $fieldCount = count($fields); - $perFeldHeight = (self::LABEL_SIZE + self::LABEL_MARGIN) + $perFieldHeight = (self::LABEL_SIZE + self::LABEL_MARGIN) + (self::FIELD_SIZE + self::FIELD_MARGIN); - $baseHeight = $fieldCount * $perFeldHeight; + $baseHeight = $fieldCount * $perFieldHeight; $scale = 1.0; if ($baseHeight > $usableHeight && $baseHeight > 0) { $scale = $usableHeight / $baseHeight;