小编Ber*_*ala的帖子

使用PIL(Python成像库)使用变音符号("nikud",发声标记)编写文本

使用PIL在图像上编写简单文本很容易.

draw = ImageDraw.Draw(img)
draw.text((10, y), text2, font=font, fill=forecolor )
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试写希伯来语标点符号(称为"nikud"或ניקוד)时,字符不会重叠.(我猜这个问题也与阿拉伯语和其他类似语言有关.)

在支持环境中,这两个词占用相同的空间/宽度(以下示例取决于您的系统,因此图像):

סֶפֶרספר

但是当用PIL绘制文本时,我得到:

סֶפֶר

因为库可能不遵守字距调整(?)规则.

是否可以让字符和希伯来语标点符号占用相同的空间/宽度而无需手动编写字符定位?

image - nikud和字母间距http://tinypic.com/r/jglhc5/5

image url:http://tinypic.com/r/jglhc5/5

python unicode fonts hebrew python-imaging-library

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

更改视图后,angularJS不会滚动到顶部

例如:

用户向下滚动视图A;

然后用户点击链接,用户可以查看B;

视图是更改,但用户的垂直位置保持不变,并且必须手动滚动到屏幕顶部.

这是一个有角度的虫子吗?

我写了一个小的解决方法,使用jquery滚动到顶部; 但是我找不到将它绑定到的正确事件.

看到评论后编辑:

如何以及何时将自己拉到顶峰?我正在使用jquery,但是$ viewContentLoaded事件太快了(该方法运行,但页面当时不滚动)

angularjs

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

在pycharm中,如何跳转到下一个SEVERE错误?(F2找到风格警告)

在pycharm中,如果我按F2,它会跳转到任何类型的"错误",例如样式,英语拼写,间距(显示为浅红色下划线)和真实错误.

有时我只想直接跳到真正的show-stopper(s),并直接修复它们(显示为RED下划线)

可能吗?

我没有找到在键映射中仅指定"错误错误"的方法.

pycharm

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

哪个异常捕获python中的xxxx错误

给定一个回溯错误日志,我并不总是知道如何捕获一个特定的异常.

我的问题一般是,如何确定要编写哪个"except"子句以处理某个异常.

例1:

  File "c:\programs\python\lib\httplib.py", line 683, in connect
    raise socket.error, msg
error: (10065, 'No route to host')
Run Code Online (Sandbox Code Playgroud)

例2:

return codecs.charmap_encode(input,errors,encoding_table)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd7 in position(...)
Run Code Online (Sandbox Code Playgroud)

抓住第二个例子是显而易见的:

try:
    ...
except UnicodeDecodeError:
    ...
Run Code Online (Sandbox Code Playgroud)

我如何抓住第一个错误?

python exception

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

同一个python解释器实例同时运行多个脚本?

6 - 7年前,我看到了一种通过仅运行解释器一次在紧密资源环境中运行python的方法,同时允许多个脚本同时使用它.

这个想法是机器人保存解释器启动开销和节省RAM.

是否存在类似的东西?

这个问题 Python:从同一个解释同时执行多个脚本不能解决并发问题.至少答案是关于顺序运行,但我需要同时:)

想法?

python

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

如何在Python中获取ORIGINAL命令行?有空格,标签等

可能重复:
键入的完整命令行

sys.argv 已经是一个解析过的数组,丢失双引号,双重空格甚至可能是制表符(当然,这完全取决于OS/shell).

如何在解析之前访问原始字符串?

python command-line

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

wxpython:自动调整静态图像(staticbitmap)的大小以适应大小

我的wxPython项目有一个框架,有多个嵌套的sizer.

其中一个sizer包含一个wxStaticImage,其中一个位图是从文件中读取的.

每次调整帧大小时,我都需要调整图像大小(增大/缩小),因此它适合它的sizer边界.

(我想)我知道如何调整图像大小.我不知道的是如何:

  • 如何获取图像容器的宽度或高度?
  • 也许我忽略了一个自动完成它的财产?

(现在,我不介意比例)

编辑:完整解决方案

  1. 我对wxStaticBitmapin.Size有所了解.它没有描述图像的大小(即图像分辨率),而是 - wxStaticBitmapin.Size给出了sizer的槽尺寸,换句话说:当前小部件的大小.

    所以使用Mik的代码我现在如何适应插槽.

  2. 除了迈克的解决方案:在框架上使用onSize事件时,不要忘记添加event.skip().否则sizer将停止重新对齐.另外,只需使用图像的onSize.

这是完整的事件方法:

def bitmap1_onSize(self, e=None):
    W, H = self.bitmap1.Size
    if W > H:
        NewW = W
        NewH = W * H / W
    else:
        NewH = H
        NewW = H * W / H
    img = wx.Image(self.frame_file_picker.Path, wx.BITMAP_TYPE_ANY)
    img = img.Scale(NewW,NewH)
    self.bitmap1.SetBitmap(wx.BitmapFromImage(img))
    e.Skip()
Run Code Online (Sandbox Code Playgroud)

python wxwidgets wxpython

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

如何检查 python 脚本中缺少 f 文字的 f 字符串?(用于预调试/lint)

我经常忘记在格式化字符串前加上“f”前缀。

一个错误的例子: text = "results is {result}"
它应该在哪里 text = f"results is {result}"

我经常犯这个错误;我的IDE没有报告它,并且程序运行没有异常。

我想也许扫描我的源代码中是否有带引号的字符串,检查 {,} 字符,并搜索它是否缺少前缀“f”文字;

但我想,使用解析器更好?或者也许有人已经这样做了?

python debugging pylint

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

angularJS在ng-repeat中添加表行(TR) -

编辑这是跨多个元素的类似(或重复)的 Angular.js ng-repeat

-

我有一个表,其行通过ng-repeat生成:

<tr ng-repeat="(key, value) in rows"> 
    <td>{{a}}</td>
    <td>{{b}}</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

出于各种原因,我真的更喜欢将它保存在<table>标签中,而不是几个内联块.

如何在每行下方添加另一行,例如伪代码

[ somehow-repeat ng-repeat="(key, value) in rows"]
    <tr class="1"> 
        <td>{{a}}</td>
        <td>{{b}}</td>
    </tr>

    <tr class="1"> 
        <td colspan="2">
    </tr>
[ /somehow-repeat ]
Run Code Online (Sandbox Code Playgroud)

据我所知(值得检查)我无法将TR包装在另一个元素中.只是chekced :(表格没有显示我是否"somehow-repeat"元素是或

所以 - 有没有办法添加新行尽管在ng-repeat中?

angularjs

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

angularJS:如何恢复/阻止单选按钮事件?

我在http://jsfiddle.net/S2kc7/1/中有一个(非工作)示例

<radio ng-model="value" ng-value="foo">
<radio ng-model="value" ng-value="bar">
Run Code Online (Sandbox Code Playgroud)

如果用户不批准,我想恢复到以前的状态.

例如,如果在用户点击"bar"之前ng-model ="value"在"foo"上,然后用户选择取消,我想阻止该事件,并保持"value = foo",没有任何改变或观看.

我试过了:

$scope.$watch('value', function(){ newvalue = oldvalue })
$scope.clicked = function($event) { $event.preventDefault(); }
<radio ng-change="check_and_prevent()">
Run Code Online (Sandbox Code Playgroud)

这些方法都没有能够取消事件(在我的测试中).一些测试的遗骸在上面的jsfiddle中被注释掉了.

我可以阻止<radio>上的活动吗?

我可以阻止<select>上的事件吗?

编辑 @jose的答案适用于所提出的案例,但不适用于真实的网站;

在我的网站中,"价值"实际上是一个对象的属性; 但即使是在jsFiddle的无菌环境中也能解决这个问题:http: //jsfiddle.net/L5555/

但不是在我的网站上.

我不知道有什么区别,我无法透露我的网站.

不管怎么说,还是要谢谢你.

javascript angularjs

4
推荐指数
2
解决办法
7092
查看次数