当前位置: 首页>>代码示例>>PHP>>正文


PHP FileInterface::getPublicUrl方法代码示例

本文整理汇总了PHP中TYPO3\CMS\Core\Resource\FileInterface::getPublicUrl方法的典型用法代码示例。如果您正苦于以下问题:PHP FileInterface::getPublicUrl方法的具体用法?PHP FileInterface::getPublicUrl怎么用?PHP FileInterface::getPublicUrl使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在TYPO3\CMS\Core\Resource\FileInterface的用法示例。


在下文中一共展示了FileInterface::getPublicUrl方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getCroppedImageSrcByFile

 /**
  * Get the cropped image by File Object
  *
  * @param FileInterface $file
  * @param string        $ratio
  *
  * @return string The new filename
  */
 public function getCroppedImageSrcByFile(FileInterface $file, $ratio)
 {
     $absoluteImageName = GeneralUtility::getFileAbsFileName($file->getPublicUrl());
     $focusPointX = MathUtility::forceIntegerInRange((int) $file->getProperty('focus_point_x'), -100, 100, 0);
     $focusPointY = MathUtility::forceIntegerInRange((int) $file->getProperty('focus_point_y'), -100, 100, 0);
     $tempImageFolder = 'typo3temp/focuscrop/';
     $tempImageName = $tempImageFolder . $file->getSha1() . '-' . str_replace(':', '-', $ratio) . '-' . $focusPointX . '-' . $focusPointY . '.' . $file->getExtension();
     $absoluteTempImageName = GeneralUtility::getFileAbsFileName($tempImageName);
     if (is_file($absoluteTempImageName)) {
         return $tempImageName;
     }
     $absoluteTempImageFolder = GeneralUtility::getFileAbsFileName($tempImageFolder);
     if (!is_dir($absoluteTempImageFolder)) {
         GeneralUtility::mkdir_deep($absoluteTempImageFolder);
     }
     $this->graphicalFunctions = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Imaging\\GraphicalFunctions');
     $imageSizeInformation = getimagesize($absoluteImageName);
     $width = $imageSizeInformation[0];
     $height = $imageSizeInformation[1];
     // dimensions
     /** @var \HDNET\Focuspoint\Service\DimensionService $service */
     $dimensionService = GeneralUtility::makeInstance('HDNET\\Focuspoint\\Service\\DimensionService');
     list($focusWidth, $focusHeight) = $dimensionService->getFocusWidthAndHeight($width, $height, $ratio);
     $cropMode = $dimensionService->getCropMode($width, $height, $ratio);
     list($sourceX, $sourceY) = $dimensionService->calculateSourcePosition($cropMode, $width, $height, $focusWidth, $focusHeight, $focusPointX, $focusPointY);
     // generate image
     $sourceImage = $this->graphicalFunctions->imageCreateFromFile($absoluteImageName);
     $destinationImage = imagecreatetruecolor($focusWidth, $focusHeight);
     $this->graphicalFunctions->imagecopyresized($destinationImage, $sourceImage, 0, 0, $sourceX, $sourceY, $focusWidth, $focusHeight, $focusWidth, $focusHeight);
     $this->graphicalFunctions->ImageWrite($destinationImage, $absoluteTempImageName, $GLOBALS['TYPO3_CONF_VARS']['GFX']['jpg_quality']);
     return $tempImageName;
 }
开发者ID:shugden,项目名称:focuspoint,代码行数:40,代码来源:FocusCropService.php

示例2: getImageUri

 /**
  * Get public url of image depending on the environment
  *
  * @param FileInterface $image
  * @return string
  * @api
  */
 public function getImageUri(FileInterface $image)
 {
     if ($this->environmentService->isEnvironmentInFrontendMode()) {
         $uriPrefix = $GLOBALS['TSFE']->absRefPrefix;
     } else {
         $uriPrefix = '../';
     }
     return $uriPrefix . $image->getPublicUrl();
 }
开发者ID:allipierre,项目名称:Typo3,代码行数:16,代码来源:ImageService.php

示例3: getImageUri

 /**
  * Get public url of image depending on the environment
  *
  * @param FileInterface $image
  * @return string
  * @api
  */
 public function getImageUri(FileInterface $image)
 {
     $imageUrl = $image->getPublicUrl();
     // no prefix in case of an already fully qualified URL (having a schema)
     if (strpos($imageUrl, '://')) {
         $uriPrefix = '';
     } elseif ($this->environmentService->isEnvironmentInFrontendMode()) {
         $uriPrefix = $GLOBALS['TSFE']->absRefPrefix;
     } else {
         $uriPrefix = '../';
     }
     return $uriPrefix . $imageUrl;
 }
开发者ID:Mr-Robota,项目名称:TYPO3.CMS,代码行数:20,代码来源:ImageService.php

示例4: render

 /**
  * Render for given File(Reference) HTML output
  *
  * @param FileInterface $file
  * @param int|string $width TYPO3 known format; examples: 220, 200m or 200c
  * @param int|string $height TYPO3 known format; examples: 220, 200m or 200c
  * @param array $options controls = TRUE/FALSE (default TRUE), autoplay = TRUE/FALSE (default FALSE), loop = TRUE/FALSE (default FALSE)
  * @param bool $usedPathsRelativeToCurrentScript See $file->getPublicUrl()
  * @return string
  */
 public function render(FileInterface $file, $width, $height, array $options = array(), $usedPathsRelativeToCurrentScript = FALSE)
 {
     $additionalAttributes = array();
     if (!isset($options['controls']) || !empty($options['controls'])) {
         $additionalAttributes[] = 'controls';
     }
     if (!empty($options['autoplay'])) {
         $additionalAttributes[] = 'autoplay';
     }
     if (!empty($options['loop'])) {
         $additionalAttributes[] = 'loop';
     }
     return sprintf('<video width="%d" height="%d"%s><source src="%s" type="%s"></video>', (int) $width, (int) $height, empty($additionalAttributes) ? '' : ' ' . implode(' ', $additionalAttributes), htmlspecialchars($file->getPublicUrl($usedPathsRelativeToCurrentScript)), $file->getMimeType());
 }
开发者ID:plan2net,项目名称:TYPO3.CMS,代码行数:24,代码来源:VideoTagRenderer.php

示例5: getImageUri

 /**
  * Get public url of image depending on the environment
  *
  * @param FileInterface $image
  * @return string
  * @api
  */
 public function getImageUri(FileInterface $image)
 {
     $imageUrl = $image->getPublicUrl();
     // no prefix in case of an already fully qualified URL (having a schema)
     // We need to fix the dection for PHP 5.4.6 and below as the host detection is broken
     if (parse_url($imageUrl, PHP_URL_HOST) !== NULL || strpos($imageUrl, '//') === 0) {
         $uriPrefix = '';
     } elseif ($this->environmentService->isEnvironmentInFrontendMode()) {
         $uriPrefix = $GLOBALS['TSFE']->absRefPrefix;
     } else {
         $uriPrefix = GeneralUtility::getIndpEnv('TYPO3_SITE_PATH');
     }
     return $uriPrefix . $imageUrl;
 }
开发者ID:khanhdeux,项目名称:typo3test,代码行数:21,代码来源:ImageService.php

示例6: getImageUri

 /**
  * Get public url of image depending on the environment
  *
  * @param FileInterface $image
  * @param bool|FALSE $absolute Force absolute URL
  * @return string
  * @api
  */
 public function getImageUri(FileInterface $image, $absolute = false)
 {
     $imageUrl = $image->getPublicUrl();
     $parsedUrl = parse_url($imageUrl);
     // no prefix in case of an already fully qualified URL
     if (isset($parsedUrl['host'])) {
         $uriPrefix = '';
     } elseif ($this->environmentService->isEnvironmentInFrontendMode()) {
         $uriPrefix = $GLOBALS['TSFE']->absRefPrefix;
     } else {
         $uriPrefix = GeneralUtility::getIndpEnv('TYPO3_SITE_PATH');
     }
     if ($absolute) {
         // If full URL has no scheme we add the same scheme as used by the site
         // so we have an absolute URL also usable outside of browser scope (e.g. in an email message)
         if (isset($parsedUrl['host']) && !isset($parsedUrl['scheme'])) {
             $uriPrefix = (GeneralUtility::getIndpEnv('TYPO3_SSL') ? 'https:' : 'http:') . $uriPrefix;
         }
         return GeneralUtility::locationHeaderUrl($uriPrefix . $imageUrl);
     } else {
         return $uriPrefix . $imageUrl;
     }
 }
开发者ID:rickymathew,项目名称:TYPO3.CMS,代码行数:31,代码来源:ImageService.php

示例7: getPublicUrl

 /**
  * @return string
  */
 public function getPublicUrl()
 {
     return $this->resource->getPublicUrl(true);
 }
开发者ID:dachcom-digital,项目名称:TYPO3.CMS,代码行数:7,代码来源:FileFacade.php

示例8: getCroppedImageSrcByFile

 /**
  * Get the cropped image by File Object
  *
  * @param FileInterface $file
  * @param string $ratio
  *
  * @return string The new filename
  */
 public function getCroppedImageSrcByFile(FileInterface $file, $ratio)
 {
     return $this->getCroppedImageSrcBySrc($file->getPublicUrl(), $ratio, $file->getProperty('focus_point_x'), $file->getProperty('focus_point_y'));
 }
开发者ID:mcmz,项目名称:focuspoint,代码行数:12,代码来源:FocusCropService.php


注:本文中的TYPO3\CMS\Core\Resource\FileInterface::getPublicUrl方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。