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


PHP PhabricatorFile::getURIForTransform方法代码示例

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


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

示例1: renderImageFile

 private function renderImageFile(PhabricatorFile $file, PhabricatorObjectHandle $handle, array $options)
 {
     require_celerity_resource('lightbox-attachment-css');
     $attrs = array();
     $image_class = null;
     $use_size = true;
     if (!$options['size']) {
         $width = $this->parseDimension($options['width']);
         $height = $this->parseDimension($options['height']);
         if ($width || $height) {
             $use_size = false;
             $attrs += array('src' => $file->getBestURI(), 'width' => $width, 'height' => $height);
         }
     }
     if ($use_size) {
         switch ((string) $options['size']) {
             case 'full':
                 $attrs += array('src' => $file->getBestURI(), 'height' => $file->getImageHeight(), 'width' => $file->getImageWidth());
                 $image_class = 'phabricator-remarkup-embed-image-full';
                 break;
             case 'thumb':
             default:
                 $preview_key = PhabricatorFileThumbnailTransform::TRANSFORM_PREVIEW;
                 $xform = PhabricatorFileTransform::getTransformByKey($preview_key);
                 $attrs['src'] = $file->getURIForTransform($xform);
                 $dimensions = $xform->getTransformedDimensions($file);
                 if ($dimensions) {
                     list($x, $y) = $dimensions;
                     $attrs['width'] = $x;
                     $attrs['height'] = $y;
                 }
                 $image_class = 'phabricator-remarkup-embed-image';
                 break;
         }
     }
     if (isset($options['alt'])) {
         $attrs['alt'] = $options['alt'];
     }
     $img = phutil_tag('img', $attrs);
     $embed = javelin_tag('a', array('href' => $file->getBestURI(), 'class' => $image_class, 'sigil' => 'lightboxable', 'meta' => array('phid' => $file->getPHID(), 'uri' => $file->getBestURI(), 'dUri' => $file->getDownloadURI(), 'viewable' => true)), $img);
     switch ($options['layout']) {
         case 'right':
         case 'center':
         case 'inline':
         case 'left':
             $layout_class = 'phabricator-remarkup-embed-layout-' . $options['layout'];
             break;
         default:
             $layout_class = 'phabricator-remarkup-embed-layout-left';
             break;
     }
     if ($options['float']) {
         switch ($options['layout']) {
             case 'center':
             case 'inline':
                 break;
             case 'right':
                 $layout_class .= ' phabricator-remarkup-embed-float-right';
                 break;
             case 'left':
             default:
                 $layout_class .= ' phabricator-remarkup-embed-float-left';
                 break;
         }
     }
     return phutil_tag($options['layout'] == 'inline' ? 'span' : 'div', array('class' => $layout_class), $embed);
 }
开发者ID:patelhardik,项目名称:phabricator,代码行数:67,代码来源:PhabricatorEmbedFileRemarkupRule.php


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