vectorface / cc-icons
Generates an image based on a list of supported credit card types
Installs: 10 718
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
pkg:composer/vectorface/cc-icons
Requires
- php: ^8.1
- intervention/image: ^3.0.0
Requires (Dev)
- ext-imagick: *
- lupka/phpunit-compare-images: ^1.0
- phpunit/phpunit: ^9.0.0
README
This is a PHP class that generates an image based on a list of supported credit card or cryptocurrency types. It makes it easy to get an image showing all supported payment types for a payment processor.
Installation
Run the following composer command:
$ composer require vectorface/cc-icons
Using CC Icons
To create an image, create a new CCImageMaker object and specify which icons to include.
use Vectorface\CCIcons\CCImageMaker; (new CCImageMaker) ->withTypes(["Visa", "Mastercard"]) ->getDataUri();
This will return the data URI (RFC 2397) string corresponding to the image that was created. By default, each image is 300x200, transparent, and includes 10px padding between icons.
Methods
- withTypes(array $processors)- Specify which icons to include in the image
- withPadding(int $new_padding)- Specify how much padding to include between icons
- withSize(int $width, int $height)- Specify the size of the output image
- withLayout(array $override)- Override one or more default layouts
- saveToDisk(string $path)- Generate and save the image to the given location on disk
- getDataUri()- Generate and get the RFC 2397 string corresponding to the image
List of Supported Icons
Icons should be specified as a single word, case-insensitive
- Credit Cards:
- AMEX
- Dankort
- DinersClub
- Discover
- JCB
- Maestro-- Aliases:- Switch,- Solo
- Mastercard-- Alias:- MC
- PostePay
- UnionPay
- Visa-- Aliases:- Delta,- UKE
 
- Cryptocurrencies:
- BTC(Bitcoin)
- LTC(Litecoin)
- BCH(Bitcoin Cash)
- BNB(Binance Coin)
- ETH(Ethereum)
- USDT(Tether)
- USDC(USD Coin)
 
Default Layouts
Layouts specify number of icons per row.
[
    1 => [1],
    2 => [2],
    3 => [2, 1],
    4 => [2, 2],
    5 => [3, 2],
    6 => [3, 3],
]