PHPackages                             tommy-dai/screenshot - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. tommy-dai/screenshot

ActiveLibrary

tommy-dai/screenshot
====================

网页截图服务，用于生成小程序海报。

v1.1(5y ago)101422[1 issues](https://github.com/daijunooo/screenshot/issues)MITPHPPHP &gt;=5.4

Since Mar 31Pushed 5y agoCompare

[ Source](https://github.com/daijunooo/screenshot)[ Packagist](https://packagist.org/packages/tommy-dai/screenshot)[ RSS](/packages/tommy-dai-screenshot/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (3)Used By (0)

screenshot
==========

[](#screenshot)

网页截图服务，用于生成小程序海报。(mac系统暂未适配)

安装
--

[](#安装)

```
composer require tommy-dai/screenshot

```

使用
--

[](#使用)

#### 快速上手

[](#快速上手)

```
$screenshot = new \Screenshot\ScreenShot();
$screenshot->shot('http://image.baidu.com');
```

> 注意：第一次访问图片有可能不出来，后面就不会出现了

##### 不出意外就可以获得百度图片的网页截图

[](#不出意外就可以获得百度图片的网页截图)

[![](https://camo.githubusercontent.com/b54285e43583469e39a41d07bd41622d2e0b7a9ad7b79f5af6e9ec8b5df4d8a4/68747470733a2f2f73312e617831782e636f6d2f323032302f30342f30322f4759744a576e2e706e67)](https://camo.githubusercontent.com/b54285e43583469e39a41d07bd41622d2e0b7a9ad7b79f5af6e9ec8b5df4d8a4/68747470733a2f2f73312e617831782e636f6d2f323032302f30342f30322f4759744a576e2e706e67)

#### 可选配置项

[](#可选配置项)

```
//截图服务端口号
port = 8181;

//超时时间（毫秒）
timeOut = 5000;

//是否解析页面中的JavaScript代码
javascriptEnabled = false;

//图片宽度（单位像素）
width = 750;

//图片高度（单位像素）
height = 1334;

//截图日志文件存放路径（绝对路径）
logPath = '';
```

#### 修改默认配置项

[](#修改默认配置项)

```
//获取默认配置
$config = new \Screenshot\Config();

//修改默认端口号（修改配置）
$config->setPort(8080);

//修改默认端图片宽度
$config->setWidth(600);

//修改默认端图片高度
$config->setHeight(800);

//开启JavaScript支持（开启后将可以解析页面中js代码，对于js生成的页面可以截取）
$config->setJavascriptEnabled(true);

//用配置文件初始化截图服务（不传$config会走默认配置）
$screenshot = new \Screenshot\ScreenShot($config);

//生成截图服务并截取百度图片
$screenshot->shot('http://image.baidu.com');
```

> 注意：修改配置项不会立即生效，关闭服务重新开启后生效。

#### 关闭步骤

[](#关闭步骤)

- 改为下面代码然后通过浏览器访问一次，服务就会关闭。重新访问上面的代码就生效了。

```
$screenshot = new \Screenshot\ScreenShot();

//关闭截图服务
$screenshot->stop();
```

#### 获取截图base64字符串

[](#获取截图base64字符串)

```
$screenshot = new \Screenshot\ScreenShot();

//返回base64的图片，可用于本地保存
$screenshot->getShot();
```

#### 特殊用法

[](#特殊用法)

```
$screenshot = new \Screenshot\ScreenShot();

//开启截图服务
$screenshot->start();
```

#### 开启截图服务 $screenshot-&gt;start() 之后能干什么

[](#开启截图服务-screenshot-start-之后能干什么)

1. 可以通过访问  获取截图的 base64 字符串
2. 可以把截图服务单独部署，通过访问 [http://ip地址:8181/?a=http://image.baidu.com](http://ip%E5%9C%B0%E5%9D%80:8181/?a=http://image.baidu.com) 获取截图的 base64 字符串
3. 可以部署多台截图服务用nginx做负载均衡

#### 更多疑问请提 issues

[](#更多疑问请提-issues)

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance18

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~65 days

Total

2

Last Release

2167d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/cb8adcec71f90bd3f966ac4b4c2c9bafcad48aca9f644d13f02c4641459ee198?d=identicon)[daijunooo](/maintainers/daijunooo)

---

Top Contributors

[![daijunooo](https://avatars.githubusercontent.com/u/15965716?v=4)](https://github.com/daijunooo "daijunooo (13 commits)")

---

Tags

phantomjsscreenprint-screen

### Embed Badge

![Health badge](/badges/tommy-dai-screenshot/health.svg)

```
[![Health](https://phpackages.com/badges/tommy-dai-screenshot/health.svg)](https://phpackages.com/packages/tommy-dai-screenshot)
```

###  Alternatives

[microweber/screen

A PHP Class to interact with PhantomJs and capture screenshot of a webpage

632226.0k1](/packages/microweber-screen)[jcalderonzumba/mink-phantomjs-driver

PhantomJS driver for Mink framework

15910.9M63](/packages/jcalderonzumba-mink-phantomjs-driver)[jcalderonzumba/gastonjs

PhantomJS API based server for webpage automation

13111.1M72](/packages/jcalderonzumba-gastonjs)[jakoch/phantomjs-installer

A Composer package which installs the PhantomJS binary (Linux, Windows, Mac) into `/bin` of your project.

1515.4M72](/packages/jakoch-phantomjs-installer)[anam/phantommagick

PhantomMagick provides a simple API to ease the process of converting HTML to PDF or images

161456.4k2](/packages/anam-phantommagick)[site5/phantoman

The Codeception extension for automatically starting and stopping PhantomJS when running tests.

481.1M17](/packages/site5-phantoman)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
