| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 873 人关注过本帖, 1 人收藏
标题:如何理解hpdf_color 这个结构
取消只看楼主 加入收藏
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
结帖率:96.55%
收藏(1)
已结贴  问题点数:20 回复次数:7 
如何理解hpdf_color 这个结构
这几天在研究libhpdf.dll这个pdf生成库,有个结构没法理解,麻烦论坛的大佬解答疑惑。

先看这个类定义:
#include "apdf.h"
typedef struct _HPDF_RGBColor {
    HPDF_REAL   r;
    HPDF_REAL   g;
    HPDF_REAL   b;
} HPDF_RGBColor;

这个HPDF_REAL 就是个浮点数。
typedef  float  HPDF_REAL;

void
show_description  (HPDF_Page          page,
                   HPDF_REAL          x,
                   HPDF_REAL          y,
                   const char   *text)
{
    float fsize = HPDF_Page_GetCurrentFontSize (page);
    HPDF_Font font = HPDF_Page_GetCurrentFont (page);
    HPDF_RGBColor c = HPDF_Page_GetRGBFill (page); &&这里的c是个数值

    HPDF_Page_BeginText (page);
    HPDF_Page_SetRGBFill (page, 0, 0, 0);
    HPDF_Page_SetTextRenderingMode (page, HPDF_FILL);
    HPDF_Page_SetFontAndSize (page, font, 10);
    HPDF_Page_TextOut (page, x, y - 12, text);
    HPDF_Page_EndText (page);

    HPDF_Page_SetFontAndSize (page, font, fsize);
    HPDF_Page_SetRGBFill (page, c.r, c.g, c.b); &&从这里看,这个c应该是个结构
}

我的vfp 代码:
hpdf=hpdf_new(0,0)
hpage=hpdf_addpage(hpdf)
ncolor=hpdf_page_getrgbfill(hpage) &&获得颜色值45718296,这应该是个结构吧?
我应该怎么得到这个ncolor的r,g,b值???
搜索更多相关主题的帖子: page typedef 结构 text float 
2023-10-22 17:32
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
收藏
得分:0 
HPDF_Page_GetRGBFill 函数的说明
HPDF_Page_GetRGBFill
#include "apdf.h"

typedef struct _HPDF_RGBColor {
    HPDF_REAL   r;
    HPDF_REAL   g;
    HPDF_REAL   b;
} HPDF_RGBColor;

HPDF_RGBColor
HPDF_Page_GetRGBFill  (HPDF_Page   page);

Description
HPDF_Page_GetRGBFill() returns the current value of the page's filling color. HPDF_Page_GetRGBFill() is valid only when the page's filling color space is HPDF_CS_DEVICE_RGB.

Parameter
page
The handle of a page object.

Returns
When HPDF_Page_GetRGBFill() succeed, it returns the current value of the page's filling color. Otherwise it returns {0, 0, 0}.
2023-10-22 17:36
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
收藏
得分:0 
回复 3楼 nbwww
和windows不一样的颜色结构。
2023-10-22 19:20
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
收藏
得分:0 
回复 6楼 yiyanxiyin
我试试,,,
2023-10-22 22:43
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
收藏
得分:0 
以下是引用yiyanxiyin在2023-10-22 21:42:48的发言:

45718296 这个是个地址, 保存的HPDF_RGBColor结构的数据


如何使地址,我是不是可以用
ctemp=sys(2600,ncolor,12) &&获取这个地址的值

不过好像不对,ctemp是空的。。。

2023-10-23 20:14
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
收藏
得分:0 
回复 9楼 csyx
对哦
2023-10-23 22:16
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
收藏
得分:0 
回复 11楼 foxfans
这还是个输出参数啊?哈哈哈

这dll还可以自己添加函数啊

[此贴子已经被作者于2023-10-24 02:38编辑过]

2023-10-24 02:31
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:752
专家分:1114
注 册:2021-10-13
收藏
得分:0 
回复 18楼 iswith
异曲同工,大同小异。

2023-10-25 20:24
快速回复:如何理解hpdf_color 这个结构
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013279 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved