]> _ Git - fluidbook-toolbox.git/commitdiff
wip #6800 @0.5
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Fri, 15 Mar 2024 11:09:32 +0000 (12:09 +0100)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Fri, 15 Mar 2024 11:09:32 +0000 (12:09 +0100)
app/Fluidbook/Compiler/Images.php
app/Models/Traits/PublicationSettings.php

index d3ae5db285a169909e1b99fba176aab9a3d31791..83ddb153282e142daa7a96cadaac1b780f0d2f70 100644 (file)
@@ -36,18 +36,22 @@ trait Images
     {
         $compositionCached = $this->compositionCached();
 
+        if ($this->fluidbookSettings->svgToCanvas == 2) {
+            $this->addPDFJS();
+        }
+
         set_time_limit(0);
         switch ($this->fluidbookSettings->mobileVersion) {
             case 'html5-desktop':
-                $this->backgroundsPrefix = array(true, false);
+                $this->backgroundsPrefix = [true, false];
                 $this->svg = true;
                 break;
             case 'html5-images':
-                $this->backgroundsPrefix = array(true);
+                $this->backgroundsPrefix = [true];
                 $this->svg = false;
                 break;
             default:
-                $this->backgroundsPrefix = array(false);
+                $this->backgroundsPrefix = [false];
                 $this->svg = true;
                 break;
         }
index 519749a8157be327cf11225a07836587553154bf..ae3f40350fe189802a84c4dc9eab11fc2abc5db7 100644 (file)
@@ -74,7 +74,7 @@ trait PublicationSettings
     protected function _disabled()
     {
 
-        $disabled = ['phonegapId', 'phonegapVersion', 'phonegapPlugins', 'appScreenshots'];
+        $disabled = ['phonegapId', 'phonegapVersion', 'phonegapPlugins', 'appScreenshots', 'svgTextMethod'];
 
         foreach ($disabled as $item) {
             $this->addSettingField($item, Hidden::class);
@@ -229,7 +229,6 @@ trait PublicationSettings
                 'html5-desktop' => $this->__('Version HTML5 recommandée (vecteurs sur desktop)'),
                 'html5' => $this->__('Version HTML5 vecteurs'),
                 'html5-images' => $this->__('Version HTML5 en images'),
-                'pdfjs' => $this->__('Rendu du PDF par PDFJS'),
             ],
             'default' => 'html5-desktop',
         ]);
@@ -498,28 +497,24 @@ trait PublicationSettings
             'v2' => '{"type":"textarea","default":"","editable":true,"label":"Couleur de fond dynamique","grade":3}',
         ]);
         $this->addSettingField('', FormSeparator::class);
-        $this->addSettingField('svgToCanvas', Checkbox::class, $this->__('Activer le rendu svgtocanvas'), [
+        $this->addSettingField('svgToCanvas', SelectFromArray::class, $this->__('Rendu des textes'), [
             'v2' => '{"type":"boolean","default":false,"editable":true,"label":"\\u00a7!\\u00a7Activer le rendu svgtocanvas!\\u00a7!"}',
-            'default' => false,
+            'options' => [0 => __('Afficher le SVG'), 1 => __('SVG to Canvas'), 2 => __('PDF to Canvas')],
+            'default' => 0,
         ]);
         $this->addSettingField('svgToCanvasUpscale', Number::class, $this->__('Upscale de la fonction svgtocanvas'), [
             'v2' => '{"type":"float","default":1,"editable":true,"label":"\\u00a7!\\u00a7Upscale de la fonction svgtocanvas!\\u00a7!"}',
             'default' => 1,
-        ]);
-        $this->addSettingField('svgTextMethod', SelectFromArray::class, $this->__('Méthode d\'extraction des textes en SVG'), [
-            'v2' => '{"type":"combo","default":"pdftocairo","editable":true,"label":"\\u00a7!\\u00a7M\\u00e9thode d\'extraction des textes en SVG!\\u00a7!","datas":{"\\u00a7!\\u00a7Cairo!\\u00a7!":"pdf","\\u00a7!\\u00a7Mu!\\u00a7!":"mu"}}',
-            'options' => [
-                'pdf' => $this->__('Cairo'),
-                'mu' => $this->__('Mu'),
-            ],
-            'default' => 'pdf',
+            'when' => ['svgToCanvas' => 1],
         ]);
         $this->addSettingField('textsThickness', Number::class, $this->__('Epaisseur des textes'), [
             'v2' => '{"type":"float","default":1,"editable":true,"label":"\\u00a7!\\u00a7Epaisseur des textes!\\u00a7!"}',
             'default' => 1,
+            'when' => ['svgToCanvas' => 1],
         ]);
         $this->addSettingField('textsThicknessPages', LongText::class, $this->__('Appliquer l\'épaisseur des texte sur les pages'), [
             'v2' => '{"type":"text","default":"","editable":true,"label":"\\u00a7!\\u00a7Appliquer l\'\\u00e9paisseur des texte sur les pages!\\u00a7!"}',
+            'when' => ['svgToCanvas' => 1],
         ]);
         $this->addSettingField('', FormSeparator::class);
         $this->addSettingField('imageFormat', SelectFromArray::class, $this->__('Format des images'), [