小编Ver*_*sen的帖子

Angular 2相当于ng-bind-html,$ sce.trustAsHTML()和$ compile?

在Angular 1.x中,我们可以使用HTML标记实时插入HTML ng-bind-html,并结合JavaScript调用$sce.trustAsHTML().这使我们有80%的方式,但是当使用Angular标签时不会起作用,例如你插入了使用过的HTML ng-repeat或自定义指令.

为了实现这一点,我们可以使用一个名为$ compile自定义指令.

Angular 2中所有这些的等价物是什么?我们可以使用绑定,[inner-html]但这仅适用于非常简单的HTML标记,例如<b>.它不会将自定义角度2指令转换为正常运行的HTML元素.(很像Angular 1.x没有$compile步骤.)$compileAngular 2 的等价物是什么?

innerhtml angular

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

Visual Studio 2015:"tsc.exe"退出,代码为1

我以前使用Visual Studio 2013进行Web TypeScript项目.升级到Visual Studio 2015 Update 3,在构建项目时,我得到了

"tsc.exe" exited with code 1
Run Code Online (Sandbox Code Playgroud)

网上有一百万个这样的错误.有人建议我通过NPM安装Microsoft.TypeScript.MSBuild和Microsoft.TypeScript.Compiler,我这样做了.

当我深入研究输出(使其详细)时,我看到了:

1>  C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.6\tsc.exe --project "F:\depot\depot\code\main\web\CedarsReport\tsconfig.json" --listEmittedFiles
1>  F:\depot\depot\code\main\web\CedarsReport\error TS5023:Build:Unknown compiler option 'listemittedfiles'.
Run Code Online (Sandbox Code Playgroud)

问题:1)为什么使用TypeScript 1.6?我为Visual Studio 2015安装了"TypeScript 1.8.4".

2)--listEmittedFiles选项来自何处,以及如何禁用它?

3)如果我转到Project> Properties> TypeScript Build,它会说:":检测到一个或多个tsconfig.json文件.项目属性被禁用." 所以我尝试将我的tsconfig.json文件移动到桌面,删除项目文件夹中的文件.退出Visual Studio 2015并重新启动,执行清理和重建,以及相同的错误消息.为什么在没有tsconfig.json文件的情况下仍然存在tsconfig.json文件?!

即使你不能回答所有问题,也欢迎回答任何问题,尤其是 #2.

typescript visual-studio-2015

16
推荐指数
1
解决办法
4万
查看次数

GLSL中的高效双立方过滤代码?

我想知道是否有人有完整的,工作的和有效的代码来在glsl中进行双三次纹理过滤.有这样的:

http://www.codeproject.com/Articles/236394/Bi-Cubic-and-Bi-Linear-Interpolation-with-GLSLhttps://github.com/visionworkbench/visionworkbench/blob/master/src/vw/ GPU /着色器/口译/插值bicubic.glsl

但是它们都进行了16次纹理读取,其中只需要4次:

https://groups.google.com/forum/#!topic/comp.graphics.api.opengl/kqrujgJfTxo

然而,上面的方法使用了一个缺少的"cubic()"函数,我不知道它应该做什么,还需要一个无法解释的"texscale"参数.

还有NVidia版本:

http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter20.html

但我相信这会使用CUDA,这是专门针对NVidia的卡片.我需要glsl.

我可以将nvidia版本移植到glsl,但我想先问一下是否有人已经有一个完整的,工作的glsl bicubic着色器.

glsl bicubic fragment-shader

12
推荐指数
5
解决办法
2万
查看次数

为什么在指定目标位置时Canvas的putImageData不起作用?

在尝试查找Canvas上下文的putImageData()方法的文档时,我发现了这样的事情:

context.putImageData(imgData,X,Y,dirtyX,dirtyY,dirtyWidth,dirtyHeight);

(来自http://www.w3schools.com/tags/canvas_putimagedata.asp)

根据我读过的文档,x和y是图像的索引,而dirtyX和dirtyY指定目标画布中绘制图像的位置.然而,正如您将从下面的示例(和JSFiddle)中看到的,对putImageData(imgData,x,y)的调用有效,而putImageData(imgData,0,0,locX,locY)则不然.我不知道为什么.

编辑:

我想我真正的问题是为什么图像的顶行是黑色的,而且只有7行,而不是8.图像应该从画布的左上角开始.它们从左侧开始(并且有8列).他们为什么不从头顶开始?

答:当yLoc为0时,由于此行除以0:

xoff = imgWidth / (yLoc/3);
Run Code Online (Sandbox Code Playgroud)

JSFiddle:

http://jsfiddle.net/WZynM/

码:

<html>
    <head>
        <title>Canvas tutorial</title>

        <script type="text/javascript">
            var canvas;
            var context; // The canvas's 2d context

            function setupCanvas()
            {
                canvas = document.getElementById('myCanvas');
                if (canvas.getContext)
                {
                    context = canvas.getContext('2d');
                    context.fillStyle = "black";    // this is default anyway
                    context.fillRect(0, 0, canvas.width, canvas.height);
                }
            }

            function init()
            {
                loadImages();
                startGating();
            }

            var images = new Array();
            var gatingTimer;
            var curIndex, imgWidth=0, imgHeight;

                // Load …
Run Code Online (Sandbox Code Playgroud)

html5 canvas

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

Qt QWebEngine 远程调试:Chrome 开发人员工具不再有效

最近在一些软件更新(自动 Windows 10 更新,可能还有 Chrome 自动更新)之后,用于从 Qt 的 QWebEngine 进行远程调试的开发人员工具停止工作。JavaScript 控制台显示:

Uncaught TypeError: document.registerElement is not a function
    at Object.UI.registerCustomElement (shell.js:formatted:18064)
    at shell.js:formatted:18178
    at shell.js:formatted:18266
devtools_app.js:formatted:2606 Uncaught ReferenceError: SDK is not defined
    at devtools_app.js:formatted:2606
Run Code Online (Sandbox Code Playgroud)

有问题的代码(来自 shell.js)是这样的:

UI.registerCustomElement = function(localName, typeExtension, prototype) {
    return document.registerElement(typeExtension, {
        prototype: Object.create(prototype),
        extends: localName
    });
}
Run Code Online (Sandbox Code Playgroud)

什么是 shell.js,它来自哪里?这个问题的原因可能是什么?

该网页实际上是在 Qt 5.12.3 网络浏览器中运行的,但我使用 Chrome(远程)作为开发者工具。

我也同时将 Angular 7.x 升级到 Angular 8,但不再相信这是相关的。

我的 Chrome 当前版本为 80.0.3987.116(官方版本)(64 位)。

更新 我刚刚尝试下载旧版本的 Chromium。(我尝试了 77.0.3823.0 版,因为这可以追溯到 2019 年年中。)并且在那里调试有效。

qt qtwebengine angular

7
推荐指数
1
解决办法
2249
查看次数

XCode 4.5中的分布式构建?

我想启用"分布式构建",以便我的Mac可以在办公室中建立其他闲置的Mac,以加快构建时间.显然,旧版XCode中的"首选项"中曾经存在"分布式构建"选项,如本博客顶部附近的屏幕截图所示:

http://blog.mundue.net/2010/12/distributed-builds/

但在最新的XCode中没有这样的东西.分布式构建甚至是XCode 4.5中的一个选项吗?

xcode distributed xcode4.5

6
推荐指数
1
解决办法
2086
查看次数

glsl 中的lowp vs. mediump vs. highp?

过去一周我一直在研究自定义着色器。我遇到了各种奇怪的问题,直到我将几乎所有浮点变量都切换到highp.

然而,今天我发现如果我用于highp输入纹理坐标(介于 0 和 1.0 之间),双三次插值算法实际上会有色带。如果我使用mediump它工作正常。

我想知道是否有人可以解释为什么会这样。根据这份文件:

http://www.khronos.org/files/opengles_shading_language.pdf

highp 具有 2^-62 到 2^62 的浮点幅度范围,以及 2^-16 的浮点精度(相对)。

mediump浮点量级范围为 2^-14 到 2^14,浮点精度(相对)为 2^-10。

如果我正确理解这一点,这应该意味着它mediump总是不如highp. 为什么不是这样?

shader opengl-es glsl opengl-es-2.0

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

iOS7的drawViewHierarchyInRect不起作用?

根据我的阅读,iOS7的新drawViewHierarchyInRect应该比CALayer的renderInContext更快.根据这个这个,它应该是一个简单的问题:

[myView drawViewHierarchyInRect:myView.frame afterScreenUpdates:YES];
Run Code Online (Sandbox Code Playgroud)

代替

[myView.layer renderInContext:UIGraphicsGetCurrentContext()];
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试这个时,我只是得到空白的图像.执行捕获的完整代码,其中"self"是UIView的子类,

        // YES = opaque. Ignores alpha channel, so less memory is used.
        // This method for some reasons renders the
    UIGraphicsBeginImageContextWithOptions(self.bounds.size, YES, self.window.screen.scale);    // Still slow.

    if ( [AIMAppDelegate isOniOS7OrNewer] )
        [self drawViewHierarchyInRect:self.frame afterScreenUpdates:YES]; // Doesn't work!
    else
        [self.layer renderInContext:UIGraphicsGetCurrentContext()];     // Works!

    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    contentImageView.image = image; // this is empty if done using iOS7's way
Run Code Online (Sandbox Code Playgroud)

和contentImageView是一个UIImageView,在初始化期间作为子视图添加到self.

此外,我想要在图像中捕获的图形包含在其他子视图中,这些子视图在初始化期间也作为子视图添加到self(包括contentImageView).

使用drawViewHierarchyInRect时为什么会失败的任何想法?

*更新*

如果我绘制特定的子视图,我会得到一个图像,例如: …

graphics ipad ios7

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

在Visual Studio 2013中使用tsconfig.json?(网络项目)

我在我的web项目中使用Angular 2,因此需要TypeScript来支持实验装饰器,如@View.这可以在tsconfig.json中完成,"experimentalDecorators": true但我在Visual Studio的项目设置中看不到这样的选项.(我创建了一个TypeScript项目.)因此,我需要Visual Studio来检测和使用我的tsconfig.json文件.

我已经在网上阅读了Visual Studio 应该选择的各个地方并使用tsconfig.json,如果它存在于项目的根目录中.然而,这并没有发生.我正在使用Visual Studio 2013 Update 4 - 并在写这篇文章时升级到Update 5.

有谁知道如何使用Visual Studio 2013(不是Visual Studio代码,而不是Visual Studio 2015)来使用tsconfig.json文件?也许它需要在解决方案的根目录而不是项目的根目录?

如果没有,我可以尝试添加一个预构建事件来直接调用tsc ......但这似乎很草率.

web-essentials visual-studio-2013 typescript1.5

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

在多个 OpenGL-ES 上下文之间共享一个 glProgram?

我有一个带有多个 OpenGL-ES 视图的 iPad 应用程序,这些视图使用 OpenGL ES 2.0 和一个自定义片段着色器。目前,着色器会针对每个单独的 OpenGL 视图进行编译和链接。我想编译和链接一次着色器,并为每个视图重新使用它们。从理论上讲,这应该只是调用的问题

gluseProgram(gProgramHandle);

在我的 render() 方法中,在渲染之前,并加载 gProgramHandle 一次,对吗?但这不起作用。当我切换到使用单个 gProgramHandle(在初始化时设置为 -1)时,只有一个 OpenGL 视图有效,其他视图显示为深绿色矩形。我究竟做错了什么?

- (void)loadShaders
{
   if (gProgramHandle == -1)
{
    NSLog(@"Compiling shaders...");

    GLuint vertexShader = [self compileShader:@"AIMGsiVertexShader" withType:GL_VERTEX_SHADER];
    GLuint fragmentShader = [self compileShader:@"AIMGsiFragmentShader" withType:GL_FRAGMENT_SHADER];

    gProgramHandle = glCreateProgram();
    glAttachShader(gProgramHandle, vertexShader);
    glAttachShader(gProgramHandle, fragmentShader);
    glLinkProgram(gProgramHandle);

    GLint linkSuccess;
    glGetProgramiv(gProgramHandle, GL_LINK_STATUS, &linkSuccess);
    if (linkSuccess == GL_FALSE)
    {
            // If there was an error when compiling the gsls shaders, report the compile error and quit.
        GLchar messages[256]; …
Run Code Online (Sandbox Code Playgroud)

shader opengl-es ios opengl-es-2.0

4
推荐指数
2
解决办法
2877
查看次数