--- /dev/null
+<?php
+
+namespace App\Http\Controllers\Admin\Operations\Tools;
+
+use Cubist\Azure\TTS\Api;
+use Cubist\Backpack\Magic\Fields\SelectFromArray;
+use Cubist\Backpack\Magic\Fields\StandardFile;
+use Cubist\Backpack\Magic\Fields\Textarea;
+use Cubist\Backpack\Magic\Form;
+use Cubist\Excel\ExcelToArray;
+use Cubist\Util\Files\Files;
+use Fluidbook\Tools\SVG\SVGTools;
+use Symfony\Component\HttpFoundation\File\UploadedFile;
+
+trait SVGCleaner
+{
+ public function svgcleaner()
+ {
+ $form = new Form(backpack_url('tools/dosvgcleaner'));
+ $form->setTitle(__('Nettoyer un SVG'));
+ $form->setSubmitLabel(__('Nettoyer et optimiser'));
+ $form->setSubmitIcon('las la-broom');
+ $form->setEnctype('multipart/form-data');
+ $form->addField('file', StandardFile::class, __('Fichier SVG'), ['accept' => '.svg']);
+ return view('tools.form', ['form' => $form]);
+ }
+
+ public function dosvgcleaner()
+ {
+ /** @var UploadedFile $file */
+ $file = request()->file('file');
+ $path = $file->getPathname() . '.svg';
+ move_uploaded_file($file->getPathname(), $path);
+ $clean = SVGTools::optimizeSVG($path);
+ return response()->download($clean, $file->getClientOriginalName(), ['content-type' => 'image/svg'])->deleteFileAfterSend();
+ }
+
+
+}
use App\Http\Controllers\Admin\Operations\Tools\ImagesResizer;
use App\Http\Controllers\Admin\Operations\Tools\JSON2Excel;
use App\Http\Controllers\Admin\Operations\Tools\PDF2SVGOperation;
+use App\Http\Controllers\Admin\Operations\Tools\SVGCleaner;
use App\Http\Controllers\Admin\Operations\Tools\TextToSpeech;
use App\Http\Controllers\Controller;
use Favicon;
use ImagesResizer;
use FluidbookCopyLinks;
+ use SVGCleaner;
protected function index($tool, $args = '')
{
<li class='nav-item'><a class='nav-link' href='{{ backpack_url('opentools/pdf2svg') }}'><i
class='nav-icon la la-images'></i>
<span>{{__('Conversion de PDF en images')}}</span></a></li>
- <li class='nav-item'><a class='nav-link' href='{{ backpack_url('tools/resizer') }}'><i class="nav-icon las la-compress-arrows-alt"></i>
+ <li class='nav-item'><a class='nav-link' href='{{ backpack_url('tools/resizer') }}'><i
+ class="nav-icon las la-compress-arrows-alt"></i>
<span>{{__('Redimensionner des images')}}</span></a></li>
<li class='nav-item'><a class='nav-link' href='{{ backpack_url('tools/fluidbookassetsdownloader') }}'><i
class='nav-icon las la-cloud-download-alt'></i>
<li class='nav-item'><a class='nav-link' href='{{ backpack_url('tools/favicongen') }}'><i
class='nav-icon las la-icons'></i>
<span>{{__('Générer des favicons')}}</span></a></li>
- <li class='nav-item'><a class='nav-link' href='{{ backpack_url('tool-sprite') }}'><i class="nav-icon las la-marker"></i>
+ <li class='nav-item'><a class='nav-link' href='{{ backpack_url('tool-sprite') }}'><i
+ class="nav-icon las la-marker"></i>
<span>{{__('SVG Sprites')}}</span></a></li>
<li class='nav-item'><a class='nav-link' href='{{ backpack_url('opentools/sasscompiler') }}'><i
class="nav-icon lab la-sass"></i>
<span>{{__('Compileur SASS')}}</span></a></li>
-
+ <li class='nav-item'><a class='nav-link' href='{{ backpack_url('tools/svgcleaner') }}'><i
+ class='nav-icon la la-broom'></i>
+ <span>{{__('Nettoyer un SVG')}}</span></a></li>
</ul>