问题列表 - 第7581页

如何计算从TTF领先的PDF?

PDF规范定义了一个名为'(撇号)的文本运算符.定义是它写出一些文本,并根据当前的前导状态移动到下一行.可以使用TL运算符设置当前的前导状态.如果您知道它们应该垂直间隔开多少,这样可以很容易地编写文本行:

16 TL
/F1 12 Tf
(Line 1) '
(Line 2) '
(Line 3) '
(Line 4) '

我没有使用任何库,因为这是一个学习练习.我编写了一些代码来直接解析TTF文件并提取字符宽度,以及PDF FontDescriptor字典所需的其他项目.

我一直在阅读TTF文件格式规范,以便试图找出行高位置或计算方式,但我没有运气.

假设我有以下几点:

  • 字体大小.
  • TTF文件中的所有相关值(Ascender,Descender,Line Gap等)

如何计算从TTF领先的PDF?

编辑

看来TTF文件中的线间隙值有助于计算PDF前导,但某些字体不能为它提供合理的值(例如,Windows上的Courier New).

pdf truetype

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

防止多个数据库之间的重复键

我正处于这样一种情况:我们将推出一个新版本的软件,它将使用一个独立的数据库(模式中的重大变化).将会有相当长的一段时间,新系统和旧系统都将投入生产,我们需要确保在两个数据库之间生成唯一ID(我们不希望在数据库A中有一行)与数据库B中的行具有相同的ID.数据库是Sybase.

我想出的可能的解决方案:

  1. 使用支持非常大数字的数据类型并为每个数据类型分配一个范围,希望它们永远不会溢出.
  2. 对一个数据库使用负值,对另一个数据库使用正值.
  3. 添加标识数据库的其他列,并使用该列和当前ID的组合作为键.
  4. 哭.

我还能做什么?是否有更优雅的解决方案,两个数据库一起工作?我相信这两个数据库将在同一台服务器上,如果这很重要的话.

database sybase primary-key

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

C#:'is'关键字并检查Not

这是一个愚蠢的问题,但您可以使用此代码来检查某些内容是否属于特定类型...

if (child is IContainer) { //....
Run Code Online (Sandbox Code Playgroud)

是否有更优雅的方法来检查"NOT"实例?

if (!(child is IContainer)) { //A little ugly... silly, yes I know...

//these don't work :)
if (child !is IContainer) {
if (child isnt IContainer) { 
if (child aint IContainer) { 
if (child isnotafreaking IContainer) { 
Run Code Online (Sandbox Code Playgroud)

是的,是的......愚蠢的问题....

因为对代码的外观存在一些疑问,所以它只是在方法开始时的简单返回.

public void Update(DocumentPart part) {
    part.Update();
    if (!(DocumentPart is IContainer)) { return; }
    foreach(DocumentPart child in ((IContainer)part).Children) {
       //...etc...
Run Code Online (Sandbox Code Playgroud)

c# casting keyword

263
推荐指数
7
解决办法
8万
查看次数

什么相当于SQSH中的"显示表"

我怎样才能让sqsh告诉我哪些表可用?

sybase sqsh

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

Windows线程等待方法

我正在创建一个线程类来封装windows线程方法.我正在尝试创建一个方法,使应用程序在退出应用程序之前等待线程完成.如果我使用while循环和布尔标志,它可以工作,但显然它会刺激我的CPU使用,它只是不理想.

你会用什么方法等待一个线程的完成?(我不是真的在这里寻找代码,只是需要研究的领域)

c++ multithreading

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

Linux与Solaris上的线程性能

这篇Linux Magazine文章http://www.linux-mag.com/id/792解释了与Solaris等商业Unix相比,Linux中线程的实现方式的差异.总之,Linux使用用户线程到内核线程的一对一映射,而Solaris使用多对多映射.本文暗示这可能会使Solaris具有性能优势,尤其是在线程之间切换时.在我花时间测试这个之前,还有人已经做过吗?

linux performance multithreading solaris pthreads

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

如何在CakePHP的编辑器中获取HTML语法高亮?

我使用Notepad ++和Aptana编辑CakePHP代码?有没有办法获得CakePHP的.ctp模板文件的基本html语法高亮?没有任何着色,对我来说要困难得多.有任何想法吗?

php aptana cakephp syntax-highlighting notepad++

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

在ASP.NET中设置活动选项卡Ajax TabContainer会导致整个容器消失

我有一个ASP.NET页面,它使用ASP.NET Ajax Control Toolkit TabContainer.在这种情况Page_Load下,我隐藏了一些基于给予页面的数据的选项卡.然后,我想根据(可选)查询字符串参数的值使其中一个选项卡处于活动状态.

所以我有:

protected void Page_Load ( object sender, EventArgs e )
{
    if ( !this.IsPostBack )
    {
        // Tabs with no data are hidden in here
        LoadDataIntoTabs();

        PreselectCorrectTab();
    }
}

private void PreselectCorrectTab ()
{
    if ( ctlTabContainer.Visible )
    {
        if ( !string.IsNullOrEmpty( Request.QueryString[ "tabIndex" ] ) )
        {
            int tabIndex = 0;

            if ( int.TryParse( Request.QueryString[ "tabIndex" ], out tabIndex ) )
            {
                if ( ( ctlTabContainer.Tabs.Count > tabIndex ) && …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-ajax ajaxcontroltoolkit tabcontainer

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

如何创建一个锁定的python环境?

我负责开发一个在世界各地设有办事处的金融机构使用的大型Python/Windows/Excel应用程序.最近,一个国家的法规发生了变化,因此我们被告知我们需要创建一个"锁定"版本的发行版.

在与我的外国同行进行了一些令人沮丧的对话后,似乎他们担心有人可能会误用他们计算机上的python解释器来生成可能用于规避安全性的非标准应用程序.

我最初的建议只是取消对python.exe和pythonw.exe的执行权限:我们的应用程序是一个只使用Python DLL的Excel插件.那些exe文件从未实际使用过.

我的对手仍然关注有人可以对Python DLL进行调用 - 黑客可以利用"exec"函数,例如来自另一种编程语言或能够调用Windows DLL中的函数的虚拟机,例如VBA.

我们可以采取哪些措施来防止我们想要安装的DLL被滥用?在这一点上,我没有想法.我需要找到一种方法来确保Python只运行我们的授权程序.

当然,这个问题有一个荒谬的因素:由于计算机都有Excel和Word,因此它们都有VBA,这是一种众所周知的脚本语言,在某种程度上与Python相当.

当Excel的VBA开放时,担心python显然没有意义,但这是企业政治,我的团队建议使用Python,所以我们需要证明我们的东西可以合理安全.

python windows security excel

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

jquery .get/.post不工作​​ie 7或8,在ff中工作正常

我基本上在页面上有这个:

<script type="text/javascript">
function refresh_context() {
    $("#ajax-context").html("Searching...");
    $.get("/ajax/ldap_search.php", {cn: $("#username").val()}, function(xml) {
        $("#ajax-context").html($("display", xml).text());
        $("#context").val($("context", xml).text());
    }, 'xml');
}
$(document).ready(function() {
    $("#username").blur(refresh_context);
});
</script>

<input type="text" name="username" id="username" maxlength="255" value="" />
<input type="hidden" name="context" id="context" value=""/>
<div id="ajax-context"></div>
Run Code Online (Sandbox Code Playgroud)

它应该做什么(并且在Firefox上运行正常)是当你在#username字段中输入用户名时,它将运行/ajax/ldap_search.php?cn=$username,它会在我们公司的ldap中搜索用户名并返回它原始上下文和上下文的格式化版本,如下所示:

<result>
    <display>Staff -&gt; Accounting -&gt; John Smith</display>
    <context>cn=jsmith,ou=Accounting,ou=Staff,ou=Users,o=MyOrg</context>
</result>
Run Code Online (Sandbox Code Playgroud)

格式化版本(显示)转到div#ajax-context并转到隐藏输入#context.(另外, - >实际上是 - ">"(没有空格)).

但是,在IE上,div仍停留在"正在搜索..."上,隐藏的输入值保持空白.

我已经尝试了.get和.post,但都没有工作.我确定它在.get上失败了因为如果我试试这个,我甚至都没有收到警报:

$.get("/ajax/ldap_search.php", {cn: $("#username").val()}, function() {
    alert("Check");
});
Run Code Online (Sandbox Code Playgroud)

此外,IE不会给我任何脚本错误.

编辑:添加了"$(document).ready(function(){",我的代码中已经包含了.blur,但我忘了把它包含在我的帖子中.

编辑2:正在发送请求并且apache2正在接收它:

10.135.128.96 - - [01/May/2009:10:04:27 -0500] "GET /ajax/ldap_search.php?cn=i_typed_this_in_IE HTTP/1.1" 200 69
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery

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