PHP Krpano 工具包
var code = "4d5c2561-404a-4600-82eb-10c5ab9c673f"
集成krpanotools工具命令,不用看官方文檔。即可使用的工具包幾行代碼搞定
krpanotools搞定生澀的命令。
krpano Tools (Command-Line) 說明
krpanotools應用程序提供以下功能:
- makepano - 制作一個基于模板的全景圖或全景圖。
- maketiles - 制作或合并平鋪圖像。也可用于轉(zhuǎn)換和調(diào)整大小。
- convert - 轉(zhuǎn)換或調(diào)整圖像大小。
- makepreview - 制作平滑的全景預覽圖像。
- spheretocube - 將球面圖像轉(zhuǎn)換為立方體全景圖像。
- cubetosphere - 將立方體圖像轉(zhuǎn)換為球形全景圖像。
- protect - 創(chuàng)建具有自定義保護設置的查看器文件。
- encrypt - 加密文件。
- testserver - krpano測試服務器。
- register -License注冊工具。
安裝
composer require pl1998/php-krpano
makepano命令 全景圖片生成全景圖
<?php
require "vendor/autoload.php";
$pkgPath = "/Users/panliang/Desktop/krpano-1.21/";
$filePath = __DIR__.'/vr/99999';
$cmd = (new \Panliang\PhpKrpano\Command\MakePano())
->setConfig("{$pkgPath}templates/vtour-multires.config") //設置配置文件
->setTilePath("{$filePath}/vtour/list/l%Al[_c]_%Av_%Ah.jpg") //設置切片規(guī)則
// ->setThumbPath("{$filePath}/thumb.jpg") //設置主題圖生成路徑
// ->setXmlPath("{$filePath}/tour.xml") // 設置xml文件生成路徑
->setPreviewPath("{$filePath}/vtour/list/preview.jpg") //設置預覽圖生成路徑
->setTempCubePath("{$filePath}/tempcubepath")
->setThumbSize(430) // 設置主題圖尺寸
->setImgPath(__DIR__."/origin90.jpg") //需要生成的全景球面圖路徑
->setOutput($filePath."/vtour"); //生成目錄
//生成vr作品
$data = (new \Panliang\PhpKrpano\ExecShell(
(new \Panliang\PhpKrpano\KrpanoToolsScripts("$pkgPath/krpanotools"))
->setCmd($cmd)
))->exec()->echo();
var_dump($data);
cubetosphere 命令 demo 根據(jù)切片還原全景圖
<?php
require "vendor/autoload.php";
// 命令路徑
$pkgPath = "/Users/panliang/Desktop/krpano-1.21/";
// 切片存放的文件夾
$path = __DIR__.'/list/';
// 根據(jù)切片獲取6張小圖
$sixImage = (new \Panliang\PhpKrpano\Helpers\VrSliceToSixImg())->getSixImage($path);
// 設置CubeToSphere命令
$cmd = (new \Panliang\PhpKrpano\Command\CubeToSphere())
->setImageList($sixImage)
->setJpegQuality(90) //設置圖片質(zhì)量 0-100
// ->setQuit() // 設置直接退出
// ->setSize("1080x1090") //設置圖片長寬
// ->setJpegSubSamp() //設置圖片顏色采樣 444,420,420,411,default=444
// ->setJpegOptimize()//是使用huffman算法壓縮圖片,true或false,default=true。
// ->setTiffCompress()//設置TIFF壓縮方法,none,lzw, zip或jpeg, default=lzw。
// ->setTempDir("") // 為臨時文件設置自定義目錄。
->setOutput(__DIR__."/origin90.jpg"); //輸出指定圖片
//切片合成全景圖
$data = (new \Panliang\PhpKrpano\ExecShell(
(new \Panliang\PhpKrpano\KrpanoToolsScripts("{$pkgPath}krpanotools"))
->setCmd($cmd)
))->exec()->echo();
var_dump($data);