使用drawAtPoint:,drawInRect:绘制字符串时,甚至设置UILabels的文本属性 - 文本有时会显得有些模糊.
我倾向于在大多数地方使用Helvetica,我注意到特定的字体大小会导致在模拟器和设备上出现某种程度的模糊.
例如:
UIFont *labelFont = [UIFont fontWithName:@"Helvetica-Bold" size:12];
Run Code Online (Sandbox Code Playgroud)
将导致生成的标签具有轻微模糊的文本.
UIFont *labelFont = [UIFont fontWithName:@"Helvetica-Bold" size:13];
Run Code Online (Sandbox Code Playgroud)
结果清晰.
我的问题是为什么会发生这种情况?这只是为字体选择最佳字体大小的问题吗?如果是这样,最佳字体大小是多少?
更新:似乎可能不是导致模糊的字体大小.可能是rect的中心是一个分数点.以下是我在Apple开发论坛上发现的评论:
检查位置.它可能在一个小数像素上.将中心更改为整数值.
我四舍五入所有点的值,但仍然有文字仍然模糊的地方.有没有人遇到过这个问题?
我有一个奇怪的问题.我有以下代码:
dbg("condwait: timeout = %d, %d\n",
abs_timeout->tv_sec, abs_timeout->tv_nsec);
ret = pthread_cond_timedwait( &q->q_cond, &q->q_mtx, abs_timeout );
if (ret == ETIMEDOUT)
{
dbg("cond timed out\n");
return -ETIMEDOUT;
}
Run Code Online (Sandbox Code Playgroud)
dbggettimeofday在每一行之前调用并在行前加上时间.它产生以下输出:
7.991151: condwait: timeout = 5, 705032704
7.991158: cond timed out
Run Code Online (Sandbox Code Playgroud)
如您所见,两个调试行之间只传递了7微秒,但仍然pthread_cond_timedwait返回ETIMEDOUT.怎么会发生这种情况?我甚至尝试在初始化cond变量时将时钟设置为其他内容:
int ret;
ret = pthread_condattr_init(&attributes);
if (ret != 0) printf("CONDATTR INIT FAILED: %d\n", ret);
ret = pthread_condattr_setclock(&attributes, CLOCK_REALTIME);
if (ret != 0) printf("SETCLOCK FAILED: %d\n", ret);
ret = pthread_cond_init( &q->q_cond, &attributes );
if (ret != 0) …Run Code Online (Sandbox Code Playgroud) 我正在使用jQuery,我需要获得德国当地时间.
任何从任何国家访问我网站的人都应该知道它在德国的时间.
如果时间是在0:00到12:00之间,我需要提醒:"早上好".
如果时间是在12:00到17:00之间,我需要提醒一下:"下午好".
我怎样才能在jQuery中实现它?
给出一组典型的模型:
# Application A
from django.db import models
class TypicalModelA(models.Model):
the_date = models.DateField()
# Application B
from django.db import models
class TypicalModelB(models.Model):
another_date = models.DateField()
...
Run Code Online (Sandbox Code Playgroud)
如何将所有 DateFields 的默认小部件更改为自定义MyDateWidget?
我问,因为我希望我的应用程序有一个jQueryUI datepicker用于输入日期.
我考虑过一个自定义字段,它使用我的自定义小部件扩展django.db.models.DateField.这是实施这种全面改变的最佳方式吗?这样的改变需要专门将一个特殊的MyDateField导入到每个模型中,这是一个劳动密集型,容易出现开发人员错误(即一些模型.DateField将会通过),在我看来似乎是不必要的重复工作.另一方面,我不喜欢修改可以被认为是规范版本的模型.DateField.
感谢思想和投入.
我想知道在iPhone发生意外错误时是否有可能显示一个拨号盘(并且不会让应用程序盲目!)并且有时间通过电子邮件登录或发送崩溃...
鉴于Python文档为Thread.run():
您可以在子类中覆盖此方法.标准的run()方法调用传递给对象构造函数的可调用对象作为目标参数(如果有),分别使用args和kwargs参数中的顺序和关键字参数.
我构造了以下代码:
class DestinationThread(threading.Thread):
def run(self, name, config):
print 'In thread'
thread = DestinationThread(args = (destination_name, destination_config))
thread.start()
Run Code Online (Sandbox Code Playgroud)
但是当我执行它时,我收到以下错误:
Exception in thread Thread-1:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/threading.py", line 522, in __bootstrap_inner
self.run()
TypeError: run() takes exactly 3 arguments (1 given)
Run Code Online (Sandbox Code Playgroud)
我似乎错过了一些明显的东西,但我看到的各种例子都与这种方法有关.最终我试图将字符串和字典传递给线程,如果构造函数不是正确的方法,而是在启动线程之前创建一个新函数来设置值,我对此持开放态度.
有关如何最好地完成此任务的任何建议?
我有一系列值可用,但遗憾的是一些变量名称包含空格.我无法弄清楚如何在页面中简单地输出这些内容.我知道我不是很好解释(我是JSP设计师,而不是Java编码器)所以希望这个例子能说明我想要做的事情:
<c:out value="${x}"/>
Run Code Online (Sandbox Code Playgroud)
输出到页面(人工包装)为:
{width=96.0, orderedheight=160.0, instructions=TEST ONLY. This is a test.,
productId=10132, publication type=ns, name=John}
Run Code Online (Sandbox Code Playgroud)
我可以使用输出名称
<c:out value="${x.name}"/>
Run Code Online (Sandbox Code Playgroud)
没问题.问题是当我试图获得"发布类型"...因为它有一个空间,我似乎<c:out>无法显示它.
我试过了:
<!-- error parsing custom action attribute: -->
<c:out value="${x.publication type}"/>
<!-- error occurred while evaluating custom action attribute: -->
<c:out value="${x.publication+type}"/>
<!-- error occurred while parsing custom action attribute: -->
<c:out value="${x.'publication type'}"/>
<!-- error occurred while parsing custom action attribute: -->
<c:out value="${x.publication%20type}"/>
Run Code Online (Sandbox Code Playgroud)
我知道真正的解决方案是使变量名称格式正确(即:没有空格)但我不能让代码更新很长一段时间.可以这样做吗?任何帮助非常感谢.
我遇到了一个相当复杂的Python模块,它不会返回有用的错误代码(它实际上无法安静地失败).但是,它调用的底层C库设置了errno.
通常errno来自OSError属性,但由于我没有异常,我无法得到它.
使用ctypes,libc.errno不起作用,因为errno是GNU libc中的一个宏.Python 2.6有一些功能,但Debian仍然使用Python 2.5.将C模块插入我的纯Python程序只是为了阅读errno令我感到厌恶.
有没有办法访问errno?只有Linux的解决方案很好,因为被包装的库是仅限Linux的.我也不必担心线程,因为我在运行失败的时候只运行一个线程.
我一直在用Git完成所有工作并推送到GitHub.我对软件和网站都非常满意,我不想在此时改变我的工作方式.
我的博士生顾问要求所有学生将他们的工作保存在大学托管的SVN存储库中.我已经找到大量关于将现有SVN存储库下载到Git中的文档和教程,但没有关于将Git存储库推送到新的SVN存储库.我希望必须有一些方法来实现这一点,结合使用git-svn和一个新的分支和变基和所有那些精彩的术语,但我是一个Git新手,并且对它们中的任何一个都没有信心.
然后我想在我选择时运行几个命令将提交推送到该SVN存储库.我希望继续使用Git,只是拥有SVN存储库镜像Git中的内容.
如果这有任何不同,我将是唯一一个承诺进入SVN的人.
我已经看过各种关于批评Eclipse Grails插件的帖子,我想知道是否有人找到了一种在Eclipse中与Grails一起高效工作的方法?
我看了一下Grails插件页面,那里的信息看起来不太有希望,特别是关于'禁用Groovy编译器生成类文件'设置的冲突建议.