小编Sep*_*ehr的帖子

Persian @ font-face在Chrome中不起作用,不管是不是Bug?

不确定我是否正在浏览Chrome中的错误或我的CSS出了什么问题

这是我正在谈论的演示:演示链接

问题是我在我的网站上使用了一个自定义的Farsi字体BMitra(它在公共领域是完全免费的),并且所有主流浏览器(最新的FF和IE6 +)都正在渲染这个字体,但是我的Chrome浏览了这个字体和开关到系统的默认值tahoma.

这是我的CSS:

@font-face {
    font-family: 'BMitra';
    font-weight: normal;
    src: url('fonts/regular/BMitra.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('fonts/regular/BMitra.woff') format('woff'), /* Modern Browsers */
         url('fonts/regular/BMitra.ttf')  format('truetype'), /* Safari, Android, iOS */
         url('fonts/regular/BMitra.svg#svgBMitra') format('svg'); /* Legacy iOS */
    }

@font-face {
    font-family: 'BMitra';
    font-weight: bold;
    src: url('fonts/bold/BMitraBd.woff') format('woff'), /* Modern Browsers */
         url('fonts/bold/BMitraBd.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('fonts/bold/BMitraBd.ttf')  format('truetype'), /* Safari, Android, iOS */
         url('fonts/bold/BMitraBd.svg#svgBMitra') format('svg'); /* Legacy iOS */
    }
Run Code Online (Sandbox Code Playgroud)

那么,有什么想法吗?这是webkit或其他方面的错误.提前致谢.


侧面说明: …

css arabic persian font-face farsi

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

通过事件发出调用JS函数

我不确定如何通过在单独的C++线程中使用事件发出来调用Node的主线程中的Node/v8函数.如何在C++线程中发出事件?

在考虑NanAsyncWorker或uv_queue_work之前:我不想以异步方式调用C++函数.我想做的恰恰相反,通过发出事件从C++调用Javascript函数.

c++ multithreading node.js node-modules

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

shared_ptr内存泄漏没有删除操作符

我已经实现了一个简单的结构:

struct ListenerNode
{
    ListenerNode() : previous(nullptr), next(nullptr), listener(nullptr), once(false) {}
    std::shared_ptr<ListenerNode> previous;
    std::shared_ptr<ListenerNode> next;
    std::function<void(int)> listener;
    bool once;
};
Run Code Online (Sandbox Code Playgroud)

这将代表场景图实现中的一个实体.我观察到的奇怪行为是当我使用结构时,就像:

int main(int argc, char** argv)
{
    ListenerNode n;
}
Run Code Online (Sandbox Code Playgroud)

它泄漏了内存,但当我使用它时:

int main(int argc, char** argv)
{
    ListenerNode* n = new ListenerNode();
    delete n;
}
Run Code Online (Sandbox Code Playgroud)

它没有泄漏记忆!我不明白这里发生了什么.我一直认为,new当变量超出范围时,不要立即调用析构函数来创建类/结构的实例.

有人可以向我解释这里发生了什么吗?我也没有看到任何明显的参考增量.

c++ memory-leaks memory-management shared-ptr c++11

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

从vector <string>到char**的转换仅包含第一个元素

我用我的问题大量评论了下面的代码.基本上问题是我试图假装argv,std::vector<std::string>但我从Visual Studio得到一个我不期望的行为.你能详细说明我在这里缺少什么吗?

std::vector<std::string> argv_storage;
for (std::size_t i = 0; i < 10; ++i)
{
    // I copy output of generate_rand_str() because I will need it
    // later in the code.
    argv_storage.push_back( std::string( generate_rand_str() ) );
}

std::vector<char *> argv( argv_storage.size() + 1 );    // one extra for NULL
for (std::size_t i = 0; i != argv_storage.size(); ++i)
{
    argv[i] = &argv_storage[i][0];
}

// Here if I access elements like argv.data()[index]
// they are perfectly fine but …
Run Code Online (Sandbox Code Playgroud)

c++ c++11

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