• PHP 输出图像


    详细解释imageTtfText()函数

    1)$image 这个是画布资源

    2)$size,官方文档的解释是,字体大小

    [plain] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. 1磅==>4像素, PPI=288  
    2. 2磅==>5像素, PPI=180  
    3. 3磅==>7像素, PPI=168  
    4. 4磅==>8像素, PPI=144  
    5. 5磅==>9像素, PPI=129.6  
    6. 6磅==>10像素, PPI=120  
    7. 7磅==>11像素, PPI=113.14285714286  
    8. 8磅==>12像素, PPI=108  
    9. 9磅==>14像素, PPI=112  
    10. 10磅==>15像素, PPI=108  
    11. 11磅==>16像素, PPI=104.72727272727  
    12. 12磅==>17像素, PPI=102  
    13. 13磅==>18像素, PPI=99.692307692308  
    14. 14磅==>19像素, PPI=97.714285714286  
    15. 15磅==>21像素, PPI=100.8  
    16. 16磅==>22像素, PPI=99  
    17. 17磅==>23像素, PPI=97.411764705882  
    18. 18磅==>25像素, PPI=100  
    19. 19磅==>26像素, PPI=98.526315789474  
    20. 20磅==>27像素, PPI=97.2  
    21. 21磅==>28像素, PPI=96  
    22. 22磅==>29像素, PPI=94.909090909091  
    23. 23磅==>30像素, PPI=93.913043478261  
    24. 24磅==>32像素, PPI=96  
    25. 25磅==>33像素, PPI=95.04  
    26. 26磅==>34像素, PPI=94.153846153846  
    27. 27磅==>35像素, PPI=93.333333333333  
    28. 28磅==>36像素, PPI=92.571428571429  
    29. 29磅==>38像素, PPI=94.344827586207  
    30. 30磅==>39像素, PPI=93.6  
    31. 31磅==>40像素, PPI=92.903225806452  
    32. 32磅==>41像素, PPI=92.25  
    33. 33磅==>43像素, PPI=93.818181818182  
    34. 34磅==>44像素, PPI=93.176470588235  
    35. 35磅==>46像素, PPI=94.628571428571  
    36. 36磅==>47像素, PPI=94  
    37. 37磅==>48像素, PPI=93.405405405405  
    38. 38磅==>48像素, PPI=90.947368421053  
    39. 39磅==>50像素, PPI=92.307692307692  
    40. 40磅==>51像素, PPI=91.8  
    41. 41磅==>52像素, PPI=91.317073170732  
    42. 42磅==>53像素, PPI=90.857142857143  
    43. 43磅==>55像素, PPI=92.093023255814  
    44. 44磅==>56像素, PPI=91.636363636364  
    45. 45磅==>57像素, PPI=91.2  
    46. 46磅==>58像素, PPI=90.782608
    47. (3)$angle是旋转角度。这个官网解释的比较清楚,需要说明有两点:一是角度单位是度而不是弧度,二是旋转的中心点就是参数$x,$y。
       
      (4)(5)$x,$y 被绘制字符串的第一个字符的基线点。单位是像素。
    (6)$color 字体的颜色,不多解释。
     
    (7)$fontfile 字体文件。也就是包含trueType字体字模的文件,如楷体字体文件simkai.ttf。这种文件的格式是有标准规范的,而且与平台无关。所以可以直接把Windows系统的字体文件拷贝到Linux下使用。
     
    (8)$text 要渲染的字符串。需要注意必须是UTF-8编码的字符串。说到字符串不得不提PHP的string数据类型。虽然名为string,其实PHP语言本身并不认识各种字符编码,它只是简单的把string看做是动态增长的“字节”数组,例如strlen()就是返回的字节数。而我们知道除了ASCII编码的字符和字节是相同的外,几乎没有其他字符编码中的字符对应一个字节,例如一个汉字的UTF-8编码占用3个字节。至于怎么解释其中的字符编码,需要专门的库函数如iconv_strlen()。如果字符串使用字面量,那么其所在的php源文件就必须编码为UTF-8存储。
     
     
    int imagecolorallocate(int im, int red, int green, int blue);本函数用来匹配图形的颜色,供其它绘图函数使用。参数 im 表示图形的 handle。参数 red、green、blue 是色彩三原色,其值从 0 至 255。
     

    • imagecreate() 和 imagecreatetruecolor() 函数用于创建一幅空白图像。
    • imagedestroy() 函数用于销毁图像资源。
      magecopy() 函数用于拷贝图像或图像的一部分。
        imagecopyresized() 函数用于拷贝部分图像并调整大小。
        imagecopy()
        imagecopy() 函数用于拷贝图像或图像的一部分,成功返回 TRUE ,否则返回 FALSE 。
        语法:
        bool imagecopy( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y,
        int src_w, int src_h )
        参数说明:参数说明
        dst_im目标图像
        src_im被拷贝的源图像
        dst_x目标图像开始 x 坐标
        dst_y目标图像开始 y 坐标,x,y同为 0 则从左上角开始
        src_x拷贝图像开始 x 坐标
        src_y拷贝图像开始 y 坐标,x,y同为 0 则从左上角开始拷贝
        src_w(从 src_x 开始)拷贝的宽度
        src_h(从 src_y 开始)拷贝的高度
        例子:
        <?php
        header("Content-type: image/jpeg");
        //创建目标图像
        $dst_im = imagecreatetruecolor(150, 150);
        //源图像
        $src_im = @imagecreatefromjpeg("images/flower_1.jpg");
        //拷贝源图像左上角起始 150px 150px
        imagecopy( $dst_im, $src_im, 0, 0, 0, 0, 150, 150 );
        //输出拷贝后图像
        imagejpeg($dst_im);
        imagedestroy($dst_im);
        imagedestroy($src_im);
        ?>
        imagecopyresized()
        imagecopyresized() 函数用于拷贝图像或图像的一部分并调整大小,成功返回 TRUE ,否则返回 FALSE 。
        语法:
        bool imagecopyresized( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y,
        int dst_w, int dst_h, int src_w, int src_h )
        本函数参数可参看 imagecopy() 函数,只是本函数增加了两个参数(注意顺序):
        dst_w:目标图像的宽度。
        dst_h:目标图像的高度。
        imagecopyresized() 的典型应用就是生成图片的缩略图:
        <?php
        header("Content-type: image/jpeg");
        //原图文件
        $file = "images/flower_1.jpg";
        // 缩略图比例
        $percent = 0.5;
        // 缩略图尺寸
        list($width, $height) = getimagesize($file);
        $newwidth = $width * $percent;
        $newheight = $height * $percent;
        // 加载图像
        $src_im = @imagecreatefromjpeg($file);
        $dst_im = imagecreatetruecolor($newwidth, $newheight);
        // 调整大小
        imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
        //输出缩小后的图像
        imagejpeg($dst_im);
        imagedestroy($dst_im);
        imagedestroy($src_im);
        ?>

      resource imagecreatetruecolor ( int $width , int $height )新建一个真彩色图像

    PHP 输出图像

    PHP 允许将图像以不同格式输出:

    • imagegif():以 GIF 格式将图像输出到浏览器或文件
    • imagejpeg():以 JPEG 格式将图像输出到浏览器或文件
    • imagepng():以 PNG 格式将图像输出到浏览器或文件
    • imagewbmp():以 WBMP 格式将图像输出到浏览器或文件

    语法:

  • 相关阅读:
    PostgreSql开启远程连接
    Cannot resolve scoped service from root provider
    运行项目报错MSB 401 "RazorTagHelper" 任务意外失败
    win10远程共享文件夹
    Typora 快捷方式给字体设置颜色
    markdown编辑器typora支持图床的功能
    【HTML】二、HTML标签
    【HTML】一、初识HTML
    sublime text3安装后html:5+Tab不能快速生成html头部信息的解决办法
    markdown语法
  • 原文地址:https://www.cnblogs.com/benpaodegegen/p/6432848.html
Copyright © 2020-2023  润新知