Svg файл в медиа-библиотеку - программирование
Подтвердить что ты не робот

Svg файл в медиа-библиотеку

У меня есть отзывчивое решение Sitecore 7, я хочу добавить svg файлы в медиабиблиотеку, которые будут обрабатываться точно так же, как jpg, jpeg-изображения. Когда я загружаю файлы svg, они обрабатываются как медиафайлы, а не файлы изображений.

4b9b3361

Ответ 1

Как я знаю, Sitecore CMS не поддерживает SVG-изображения из коробки. Вы правы, если вы загружаете образ SVG, Sitecore не будет обрабатывать его как образ, а обрабатывать как общий медиафайл. Генерация миниатюр также не работает для изображения SVG. Попробуйте использовать следующее определение типа носителя для типа SVG:

<mediaType name="SVG image" extensions="svg">
  <mimeType>image/svg+xml</mimeType>
  <forceDownload>false</forceDownload>
  <sharedTemplate>system/media/unversioned/image</sharedTemplate>
  <versionedTemplate>system/media/versioned/image</versionedTemplate>
  <mediaValidator type="Sitecore.Resources.Media.ImageValidator"/>
  <thumbnails>
    <generator type="Sitecore.Resources.Media.ImageThumbnailGenerator, Sitecore.Kernel">
      <extension>png</extension>
    </generator>
    <width>150</width>
    <height>150</height>
    <backgroundColor>#FFFFFF</backgroundColor>
  </thumbnails>
 </mediaType>

Также необходимо зарегистрировать типы mime для svg файлов в файлах конфигурации.

<configuration>
  <system.webServer>
    <staticContent>
     <remove fileExtension=".svg" />
     <mimeMap fileExtension=".svg" mimeType="image/svg+xml"/>
    </staticContent>
  </system.webServer>
</configuration>

Ответ 2

Предыдущие ответы верны, если вы хотите загрузить SVG файлы в медиа-библиотеку. Если вы затем захотите использовать SVG в медиатеке в Rich Text Editor Sitecore, вам необходимо выполнить дополнительные шаги, иначе вы получите ошибку "выбранный элемент не является изображением".

В этом сообщении в блоге описываются настройки RTE, которые необходимы для использования SVG в текстовом редакторе. http://sitecorecorner.com/2015/11/23/sitecore-svg-support/

Ответ 3

Начиная с Sitecore 8.1 Update 2, обновление конфигурации включено по умолчанию. Тесты прошли в области загрузки медиатеки и RTE, а также в GlassMapper.

Ответ 4

<configuration xmlns:patch="www.sitecore.net/xmlconfig">
    <sitecore>
        <mediaLibrary>
            <mediaTypes>
                <mediaType name="SVG image" extensions="svg">
                    <mimeType>image/svg+xml</mimeType>
                    <forceDownload>false</forceDownload>
                    <sharedTemplate>system/media/unversioned/image</sharedTemplate>
                    <versionedTemplate>system/media/versioned/image</versionedTemplate>
                    <mediaValidator type="Sitecore.Resources.Media.ImageValidator"/>
                    <thumbnails>
                        <generator type="Sitecore.Resources.Media.ImageThumbnailGenerator, Sitecore.Kernel">
                            <extension>png</extension>
                        </generator>
                        <width>150</width>
                        <height>150</height>
                        <backgroundColor>#FFFFFF</backgroundColor>
                    </thumbnails>
                </mediaType>
            </mediaTypes>
        </mediaLibrary>
    </sitecore>
</configuration>