小编Bál*_*int的帖子

"webgl"和"experimental-webgl"之间的区别

有些网站说你应该通过以下方式初始化webgl:

var gl = c.getContext("webgl") || c.getContext("experimental-webgl");

if (!gl)
    alert("This browser doesn't support WebGL!");
Run Code Online (Sandbox Code Playgroud)

webgl和之间有什么区别experimental-webgl?我能找到的唯一描述是在MDN上:

getContext(在DOMString contextId中)RenderingContext返回画布上的绘图上下文,如果不支持上下文ID,则返回null.绘图上下文允许您在画布上绘图.使用"2d"调用getContext将返回CanvasRenderingContext2D对象,而使用"experimental-webgl"(或"webgl")调用它将返回WebGLRenderingContext对象.此上下文仅适用于实现WebGL的浏览器.

然而,这使得2看起来像是一样的.有区别吗?

webgl

5
推荐指数
1
解决办法
3216
查看次数

如何用JQUERY下载img?

我已经<img id="barcode">并且需要从下载图像src。该图像是使用 base64 生成的,并src包含以下字符串:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAACOCAYAAABg4BtLAAADgUlEQVR4Xu2czyt8URjGnyErWfgLWClLCUuxsmCDoijJwpo0GT+S/EhSFmyUErGQ2LBQFrJEmrKxmuIvsLRAo3vM+M5M3c6drnO/hs8s77n3zPu+zznP8z4zZyaWTqfT+gOvGIn+MpRB9JcBKhAF0RKtAEu3RIHzDTsworFYLG+SbEOVvV7YYP2v636ZkmhhZUA0s6RZugXmyPXeZY8GtWnsUfbop+5GTVLsUfZowRqAjCAjyMgpG8O6sC6s+1kBPmHIrATXdsxvfsgIMoKMIKO8NQAZOTYBsC6sC+vCurBubgVcyw6sC+vCurAurAvr5lTgu2QHeUFekBfkBXlBXpCXfxUoVl/RUXQUHUVH0VF0FB1FR78qwBkGn9aI370UFoZjrI6/waap9ykw7gX3gnvBveBecC+4F9wL7sWvI8pex73gXjIV4OcgmUIUa6++637cC+4F94J7wb3gXnAvuBfcC+4l25LSGdEZ0RnRGdEZ0RnRGdEZ0RnRGfmsAY7fcPymRP9FzsZqP3088LdpPz0RW3wkaqtQqY2DaKkhZosXRG0VKnb88fFRy8vLOj4+1uvrqzo6OjQ5OamGhgYVdl3Fzh3k/kgQfXh40PDwsK6vr/Niqqmp0e7urlpbW4PEGuoe54m+vLxobGxM5+fnWlxcVE9Pj8rKynR0dKSZmRk1Nzdra2tL1dXVoRKxPew80fv7e/X29hpE4/G4ysvLTUzv7+9aXV3VxsaGTk9P1djYaIs11LjzRA8PDw2iucm8vb3p8vJS09PTur291f7+vgYGBkIlYnvYeaLr6+tmH3oJ19XVKZlMam5uTmdnZ1+xeSSVSCRssYYad57owsKCLi4utLS0pO3tbe3t7amqqsos55GREbNP29vbNTs7GyoR28POE/UQHR8f/4qjs7NT8/PzRlZSqZT6+/sNQZU8ogcHBxocHFRTU5PRUQ89j3W9193dnbq6uuQVo6+vzwZKqHHniGaTmZiYMKSUe0LMS3Btbe13sO7z87NGR0d1c3Nj5KS7u9sgc3JyYuSmra1Nm5ubqqysDIWY7WHniHoBXF1daWhoSE9PT3nxtLS0aGdnR/X19bY4Q49Hkqh3EtSTlZWVFdMhVVRUGAKamppSbW1t6CSCTBBJokECcX0PibqucNTzg2jUFXf9fiDqusJRzw+iUVfc9fuBqOsKRz3/n0H0A2kqGPz1ouCnAAAAAElFTkSuQmCC
Run Code Online (Sandbox Code Playgroud)

如何用jquery下载这个图片?
我正在尝试这样做:

$('#save_but').click(function() {
    var img = document.getElementById('barcode');
    img.src =$('#barcode').attr('src');
    window.location.href = img.src.replace('image/png', 'image/octet-stream');
});
Run Code Online (Sandbox Code Playgroud)

文件正在下载,但我无法为其指定名称和格式(例如:img.png)。

html javascript jquery

3
推荐指数
1
解决办法
2万
查看次数

LibClang clang_getArgType() 返回错误类型

我尝试使用 libClang 解析 C++ 方法,但是当尝试获取函数的参数/参数时,有时会给出错误的类型。

例子:

我有两种不同的方法

std::string Method::exportMethod(std::map<std::string, std::string> &defines) const
Run Code Online (Sandbox Code Playgroud)

std::string Field::exportField(std::map<std::string, std::string> &defines) const
Run Code Online (Sandbox Code Playgroud)

我打印 AST(用于调试目的)

CXChildVisitResult printer::printVisitor(CXCursor c, CXCursor parent, CXClientData clientData) {
    recursivePrintData data = *static_cast<recursivePrintData *>(clientData);

    *(data.stream) <<
                   data.indent <<
                   clang_getCursorKindSpelling(clang_getCursorKind(c)) <<
                   "; name: " << clang_getCursorSpelling(c) <<
                   ", type: " << clang_getCursorType(c) <<
                   ", arg0Type: " << clang_getArgType(clang_getCursorType(c), 0) <<
                   std::endl;

    recursivePrintData newDat(data);
    data.indent += "    ";

    clang_visitChildren(c, printVisitor, (void *) &data);

    return CXChildVisit_Recurse;
}
Run Code Online (Sandbox Code Playgroud)

(recursivePrintData 是一个包含输出流和当前缩进级别的结构)

对于这两种方法,输出如下:

导出方法:

    CXXMethod; name: exportMethod, …
Run Code Online (Sandbox Code Playgroud)

c++ clang abstract-syntax-tree libclang

2
推荐指数
1
解决办法
522
查看次数

标签 统计

abstract-syntax-tree ×1

c++ ×1

clang ×1

html ×1

javascript ×1

jquery ×1

libclang ×1

webgl ×1