0

Poppler でメソッドを呼び出すとGDate、Python コードでオブジェクトが返されます。このオブジェクトをきれいに印刷する方法が見つかりません。

Python GI API Referenceに従って、次のことを思いつきました。

gdate_object = annot_mapping.annot.get_date()
destination_buffer = '.' * 50
print('Output:', GLib.Date.strftime(destination_buffer, 50, '%c', gdate_object))
print('Buffer:', annot_time)

ただし、これはバッファに何も配置しませんが書き込まれたバッファ サイズを出力します。

宛先バッファにアクセスするにはどうすればよいですか?

4

1 に答える 1

1

誰もその API を文書化していないように見えるため、イントロスペクション バインディングでは機能しません。

簡単なパッチを作成しましたが、pygobject は文字列バッファの割り当てを好まないようです。これについては上流に相談します。

diff --git a/glib/gdate.c b/glib/gdate.c
index bea2448..bacdb93 100644
--- a/glib/gdate.c
+++ b/glib/gdate.c
@@ -2418,8 +2418,8 @@ win32_strftime_helper (const GDate     *d,

 /**
  * g_date_strftime:
- * @s: destination buffer
- * @slen: buffer size
+ * @s: (out caller-allocates) (array length=slen): destination buffer
+ * @slen: (in): buffer size
  * @format: format string
  * @date: valid #GDate
  *
于 2016-04-21T08:35:17.523 に答える