插件如何调整其窗口大小?

4

当我使用以下html加载pdf时,pdf插件似乎会调整其窗口大小以适应完整的pdf文件长度。我想知道插件是如何做到这一点的?


<!DOCTYPE html>
<html>
<head>
<title>Test html object tag</title>
<style type = "text/css">
    html
    {
        height: 100%;
    }

    body
    {
        margin: 0;
        padding: 0;
        height: 100%;
    }

    .my_style
    {
        width: 100%;
        min-height: 100%;
    }
</style>
</head>

<body>
    <div class="my_style">
        <object class = "my_style" data="data/test.pdf" type="application/pdf"></object>
    </div>

</body>
</html>

据我所知,提供给插件的窗口大小是在html object标签中定义的。
谢谢, Christian

请记住,除非Adobe Acrobat插件使用FireBreath,否则PDF插件调整窗口大小的答案将与您调整插件大小的方式非常不同。 - Rob Kennedy
我意识到各种PDF插件不必使用Firebreath。我只是想了解它们是如何实现的。理想情况下,我希望能够使用Firebreath完成同样的事情。 - chhenning
1个回答

2

这只是一种纯粹的猜测,因为我没有源代码来证实这个插件,但如果我试图解决这个问题,我会简单地获取我的插件的对象标记的引用并设置宽度和高度。

尚未测试此代码,但类似以下内容的代码可能有效:

FB::DOM::ElementPtr elem(m_host->getDOMElement());
elem->setWidth(640);
elem->setHeight(480);

显然,无论在哪里进行操作,您都需要访问BrowerHostPtr(m_host)。

今晚我会在Mediaplayer示例上尝试这个。你觉得我需要在浏览器端进行刷新吗? - chhenning
嗨,Richard,好消息。我已经将你的代码添加到onWindowAttached事件处理程序中,并且它可以正常工作。无需刷新。这太棒了! - chhenning
刷新会破坏这个想法的初衷。我看你在SO上还很新,如果你希望人们继续回答你的问题,最好开始给有用的答案和评论点赞,并标记正确的答案。 - taxilian
1
Richard,我很想点赞,但我还没有足够的声望积分。只差四个积分了... - chhenning
这很有道理...但你仍然应该能够标记问题为正确答案 =] - taxilian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接