问题列表 - 第2153页

从图像中删除周围的空白

我有一块从客户那里收到的产品图片.每个产品图像是一个东西的图片,它是用白色背景拍摄的.我想裁剪图像的所有周围部分,但只留下产品在中间.这可能吗?

举个例子:[ http://www.5dnet.de/media/catalog/product/d/r/dress_shoes_5.jpg] [1 ]

我不希望删除所有白色像素,但是我希望裁剪图像,使最顶部的像素行包含一个非白色像素,最左边的垂直像素行包含一个非白色像素,底部 - 大多数水平像素行包含一个非白色像素等.

C#或VB.net中的代码将不胜感激.

c# vb.net graphics

26
推荐指数
6
解决办法
3万
查看次数

我应该捕获关闭java.sql.Connection时抛出的异常

Connection.close()可能会抛出SqlException,但我一直认为忽略任何此类异常是安全的(我从未见过不会忽略它们的代码).

通常我会写:

 try{
    connection.close();
 }catch(Exception e) {}
Run Code Online (Sandbox Code Playgroud)

要么

 try{
    connection.close();
 }catch(Exception e) {
     logger.log(e.getMessage(), e); 
 }
Run Code Online (Sandbox Code Playgroud)

问题是:

  1. 这是不好的做法(当忽略这些例外时,任何人都有问题).
  2. 什么Connection.close()时候抛出任何异常.
  3. 如果不好我应该如何处理异常.

评论:

我知道丢弃异常是邪恶的,但我只是在关闭连接时抛出异常(而且我已经看到这种情况在这种情况下相当普遍).

有谁知道什么时候Connection.close()可以扔东西?

java coding-style jdbc

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

回文检测效率

我对Jon Limjap的采访事故感到好奇,并开始寻找有效的方法进行回文检测.我检查了回文高尔夫答案,在我看来答案中只有两个算法,反转字符串并检查尾部和头部.

def palindrome_short(s):
    length = len(s)
    for i in xrange(0,length/2):
        if s[i] != s[(length-1)-i]: return False
    return True

def palindrome_reverse(s):
    return s == s[::-1]
Run Code Online (Sandbox Code Playgroud)

我认为这些方法都不能用于检测巨大DNA序列中的确切回文.我环顾四周,没有找到任何关于这种超高效方式的免费文章.

一种好的方法可能是以分而治之的方式并行化第一个版本,为每个线程或处理器分配一对char数组1..n和length-1-n..length-1.

什么是更好的方式?

你知道任何?

algorithm performance palindrome

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

WCF回调和网络流量

我喜欢在可以的时候使用WCF回调,因为对我而言,它比轮询服务器的客户端更好,而且比轮询更实时.我的问题是,当我订阅WCF服务事件时,是否存在任何心跳,使客户端和服务器之间的连接保持活动状态.我开始认为没有,因为当服务器消失时,订阅丢失并且客户端不会抛出异常(可能是WCF运行时吞下了异常).对于服务器也是如此,当客户端消失并且服务器尝试调用回调并且抛出异常时.有什么想法吗?

谢谢

wcf

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

Lisp DO变量语法推理

在Peter Seibel的Practical Common Lisp中,他给出了这个例子:

(do ((nums nil) (i 1 (1+ i)))
    ((> i 10) (nreverse nums))
  (push i nums))
Run Code Online (Sandbox Code Playgroud)

我可以看到它是如何工作的,在循环中使用nums但不给它一个步骤形式.为什么要将num放在变量定义中而不是这样做:

(let (nums) (do ((i 1 (+ i 1)))
         ((> i 10) (nreverse nums))
       (push i nums)))
Run Code Online (Sandbox Code Playgroud)

我确信这是一个很好的理由,但我还没有得到它.

lisp syntax let do-loops

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

使用Subversion和Apache

虽然我理解这个概念,但我以前从未使用任何类型的源代码控制.我感到困惑(也许只是不知道)是我实现了什么好处和/或为什么我要配置Subversion和Apache?我是否需要使用Apache配置它才能通过网络从其他计算机访问我的存储库?请随意提供您认为相关的任何其他详细信息?

我现在的设置是笔记本电脑(Windows XP Pro)和虚拟机(Windows XP Pro).在我的虚拟机上,我有Apache 2.2,MySQL 5和PHP 5.虽然我很高兴听到偏离我的场景的示例/情况,但这个设置是我主要关注的问题.

svn version-control webdav apache2

7
推荐指数
2
解决办法
1454
查看次数

服务需要检测工作站是否已锁定,并且屏幕保护程序处于活动状态

我正在开发一项服务,需要检测登录到单台机器的所有用户的用户状态.具体来说,我想检查屏幕保护程序是否处于活动状态以及会话是否已锁定.

此代码将在系统级服务下运行,并且没有可见的UI,因此可以排除多个选项(捕获WM消息等).

除了正常的工作站之外,我还希望能够在有多个用户登录的终端服务器上工作.由于这些要求,我想知道是否需要涉及多个Win32 API.

关于从哪里开始的任何想法?

.net c#

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

mysql从远程服务器通过cli导入sql

我知道如何通过cli导入sql文件:

mysql -u USER -p DBNAME < dump.sql
Run Code Online (Sandbox Code Playgroud)

但是,如果dump.sql文件是本地的.我怎么能在远程服务器上使用文件?

mysql import command-line-interface

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

COM调用x64上的约定

我试图得到关于COM在x64机器上的行为方式的明确答案.在调度x64机器上的COM接口时,Windows是否使用普通的x64调用约定(假设COM实现是64位)?具体来说,我动态生成我的vtbl条目以指向在运行时动态加载的一大块程序集.这个程序集需要知道如何从调用它的人那里正确地获取参数.因此,我想知道COM是否使用标准x64调用约定(非常快速调用)设置对程序集的调用.

com 64-bit assembly calling-convention

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

方法重载.你能过度使用它吗?

在定义使用不同过滤器返回相同形状数据的多个方法时,有什么更好的做法?显式方法名称或重载方法?

例如.如果我有一些产品,我从数据库中提取

明确的方式:

public List<Product> GetProduct(int productId) {    // return a List    }
public List<Product> GetProductByCategory(Category category) {    // return a List    }
public List<Product> GetProductByName(string Name ) {    // return a List    }
Run Code Online (Sandbox Code Playgroud)

重载方式:

public List<Product> GetProducts() {    // return a List of all products    }
public List<Product> GetProducts(Category category) { // return a List by Category }
public List<Product> GetProducts(string searchString ) { // return a List by search string }
Run Code Online (Sandbox Code Playgroud)

我意识到你可能会遇到类似签名的问题,但是如果你传递的是对象而不是基类型(string,int,char,DateTime等),这将不再是一个问题.所以...是一个好主意,重载的方法来减少你有方法和清晰的数字,或者应该 …

c# java methods overloading

37
推荐指数
7
解决办法
3663
查看次数