⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 news

📁 Pango is a library for layout and rendering of text, with an emphasis on internationalization. Pang
💻
📖 第 1 页 / 共 5 页
字号:
  The is_wrapped and is_ellipsized functions return whether the layout  had to wrap/ellipsize any paragraphs, as opposed to the get_wrap and  get_ellipsize that return the wrap/ellipsize mode set.- Misc new function:	pango_parse_enum()  This is more a convenience function for internal use, but set public  to go with other pango_parse_* functions.  Bindings should feel free  to ignore this.- New header files:  Moved gravity and matrix stuff into their own header files pango-gravity.h  and pango-matrix.h.  Both are included from pango-types.h.- Vertical text:  New attribute types:	PANGO_ATTR_GRAVITY	PANGO_ATTR_GRAVITY_HINT.  New enum type:	PangoGravityHint  New macro:	PANGO_GRAVITY_IS_VERTICAL()  New public functions:	pango_attr_gravity_new()	pango_attr_gravity_hint_new()	pango_gravity_hint_get_type	pango_context_set_gravity_hint()	pango_context_get_gravity_hint()	pango_gravity_get_for_matrix()	pango_gravity_get_for_script()  Removed:	pango_matrix_to_gravity()  replaced by pango_gravity_get_for_matrix()    Gravity API added in previous releases:	PangoGravity        pango_gravity_get_type        pango_context_get_base_gravity        pango_context_get_gravity        pango_context_set_base_gravity	pango_font_description_get_gravity	pango_font_description_set_gravity	pango_gravity_to_rotation  A tip on using the vertical text support: If you just want to get correct  behavior in rotated labels (say, vertical Chinese/Japanese, but rotated  Latin, etc), all you need to do is to set the context gravity to  PANGO_GRAVITY_AUTO.  You can do this for example	#if defined(PANGO_VERSION_CHECK) && PANGO_VERSION_CHECK(1,15,4)	  pango_context_set_gravity (context, PANGO_GRAVITY_AUTO);	#endifBugs fixed in this release:	Bug 395328 – Map kATSDeletedGlyphcode to PANGO_GLYPH_EMPTY	Bug 397337 – Use is_ellipsized and is_wrapped to optimize property		     changes	Bug 328585 – Need to know if a layout has unknown glyphs		     Patch from LingNing Zhang	Bug 326693 – PangoLayouts should be query-able about their		     effective properties (width / wrapped / ellipsized / etc)	Bug 397327 – pango-layout.c: 'pango_layout_is_ellipsized' must return		     a value	Bug 323173 – Add layout of mixed direction text for vertical layout	Bug 394453 – Use -mms-bitfields	Bug 392628 – Don't check for X on win32Overview of changes between 1.15.2 and 1.15.3==============================================- Fix Hangul crasher and other Hangul bugs introduced in 1.15.2- Spell-checked docs- Build fixes- Don't introduce bitfields in public structs.  This changes some public API  that was broken in the 1.15 series.  The new struct is backward compatible  with the older Pango series, but not with earlier 1.15.x devel releases.- New Public API:  * PangoAnalysis.flags and PANGO_ANALYSIS_FLAGS_CENTERED_BASELINE.  These are    mostly only useful for the vertical text support in Pango, but language    bindings probably want to update their bindings for PangoAnalysis to    include these.  * New PangoMatrix methods:	pango_matrix_transform_distance()	pango_matrix_transform_point()	pango_matrix_transform_rectangle()	pango_matrix_transform_pixel_rectangle()    The transform_rectangle methods are particularly useful when an    app/toolkit wants to know the extents of a rotated layout in device    coordinates.  It will be used by Gtk+ for example, and is used by the    pango-view tool too.  The _pixel_ variant takes a PangoRectangle in device    units instead of Pango units.  * Unit conversion helpers:	pango_units_from_double()	pango_units_to_double()	pango_extents_to_pixels()    The first two just convert between Pango units (fixed precision) and    double floating-point numbers.  The current implementations are as simple    as "(int)floor (d * PANGO_SCALE + 0.5)" and "(double)i / PANGO_SCALE", but    the idea is to have optimized versions of these that do not use the FPU in    the future.  That will be appreciated by embedded devices without FPU    units.  Since the functionality can be generally useful, the API is made    public.    The pango_extents_to_pixels() function in conjunction with    pango_matrix_transform_rectangle() makes it possible to convert extents to    device space and round then, instead of having to transform rounded    user-space extents.- Bugs fixed in this release:	Bug 351496 – PangoAnalysis::gravity breaks binary compatibility	Bug 388702 – Crash when there's no Hangul glyph in the font.	Bug 384543 – FcFontMatch misuse	Bug 392789 – vpath build fails in basic module		     Patch from J. Ali Harlow	Bug 390877 – Don't feed pango-features.h to glib-mkenums		     Patch from Yevgen MuntyanOverview of changes between 1.15.1 and 1.15.2==============================================* Engines:  - Improved Hangul shaper engine  - Improved Indic shaper and language engines  - Require libthai >= 0.1.7 for the Thai language engine* Optimizations:  - Avoid some floating-point operations.  Should cut the number of float    ops per expose event in pangocairo to a half.  - Cache ink and logical extents for PangoLayout* New Public API:  - New, generated, public header file pango-features.h.  Included by    pango.h.  Currently contains the version information.  In the future,    can be expanded to define which backends have been enabled, etc.  - Public macros and functions for compile- and run-time version checking:	PANGO_VERSION_ENCODE()	PANGO_VERSION_MAJOR	PANGO_VERSION_MINOR	PANGO_VERSION_MICRO	PANGO_VERSION	PANGO_VERSION_STRING	PANGO_VERSION_CHECK()	pango_version()	pango_version_string()	pango_version_check()    The scheme chosen here is a mixture of approaches taken by glib and cairo.    The advantage over the glib model is that there are no public variables,    but it still gives access to a string and numerical representation of the    version number at compile- and run-time.        The macros enable conditional compilation of code depending on newer Pango    APIs, while the runtime functions allow refusing to run against old    versions of the library.  - New, readonly, version of methods that give read/write access to the    internals of PangoLayout:	pango_layout_get_line_readonly()	pango_layout_get_lines_readonly()	pango_layout_iter_get_line_readonly()	pango_layout_iter_get_run_readonly()    These should be used when you do not intend to modify the run/line,    which is most of the time the case.  The only exception known to me    is Firefox that adjusts glyph widths to do justification.  Most other    uses that do not write to the returned structs (or structs accessible from    them) should be ported to the new readonly API to benefit from major    optimizations (in this case, line extents caching).  The list includes,    but is not limited to, Gtk+, SWT, ClassPath, gnome-applets, libgnomeprint,    xmlroff, GtkMathView, Conglomerate, Dia, Anjuta, wxWindows, The Gimp,     and various other applications/libraries:      http://www.google.com/codesearch?hl=en&q=+pango_layout_(iter_)%3Fget_(lines%3F%7Crun)%5B%5E_%5D&start=50&sa=N    Worth noting here is that, many uses of pango_layout_get_lines() can be    replaced by a pango_layout_get_iter() that works both more elegantly and    more efficiently.  The versioning macros introduced in this release can be    used to make code use these new symbols without breaking compilation    against older Pango (though, such code compiled with the new Pango cannot    be run against an older Pango).  - pango_language_get_default(): Note that, this does not make Pango    fallback to the default language automatically (yet), but the user can    use this function to set the default language of the locale on a context:	  pango_context_set_language (context, pango_language_get_default());    This essentially deprecates gtk_get_default_language().  The pango-view    tool has been updated to use this feature, so it now respects $LANG when    choosing fonts.  - pango_color_to_string().* Bugs fixed in this release:	Bug 326099 – Setting width, indentation and ellipsizing doesn't work		     as I would expect	Bug 385478 – Fix tests on OPD platform	Bug 319808 – Patch to let pango support artifical italic, bold and		     bold italic styles for the fonts which don't have these styles.		     Patch from James Su	Bug 385321 – Worst case expansion for Sinhala		     Patch from Harshula	Red Hat Bug 211574: [hi/ml/si_LK] cursor naviation is wrong when		     using ZWJ (200d)		     Patch from LingNing Zhang	Red Hat Bug 216424: [te_IN] pango - consonant + dependent vowel (ai)		     Composed char is not rendering properly		     Patch from LingNing Zhang	Bug 373856 – Wish: Function to convert a GdkColor to a string		     Patch from Matthew Barnes	Red Hat Bug 216850: Issue in combination with vowels (ml_IN)		     Patch from LingNing Zhang	Bug 382437 – tests/testboundaries fails	Bug 333982 – Fallback to $LANG whenever NULL PangoLanguage is used		     Patch from LingNing ZhangOverview of changes between 1.15.0 and 1.15.1==============================================* Add Thai langauage engine. (currently makes tests/testboundary fail.)* Add Lao and improved Thai sample text.* Improved Indic module.* Output correct path for hexboxes in pango_cairo_layout_path().* Implement get_resolution method for the FT2 fontmap.  Shouldn't make  any difference whatsoever.  Open a bug if it does.* Misc small fixes.* Optimizations:  - Rework PangoLayout algorithms to avoid calling a recursive call to    pango_layout_get_extents().  Avoids one pango_font_get_glyph_extents()    call per glyph per layout rendering.  We now make 2 such calls.  - Don't cache run_logical_rect in PangoLayoutIter.    Avoids one pango_font_get_glyph_extents() call per glyph per layout    rendering.  We are down to 1 now.  - Cache line extents.  This avoids the final pango_font_get_glyph_extents()    call per glyph per layout rendering.  Now we don't make any    pango_font_get_glyph_extents() calls when rendering a layout (some    conditions apply)!  - Replace PANGO_IS_RENDERER with PANGO_IS_RENDERER_FAST for most    internal uses, that is, just a NULL-check.  - Use simple, fast, casts instead of PANGO_CAIRO_*() macros where the    object cannot have reached us if it wasn't of the right type.* Bugs fixed in this release:	Bug 135683 – Cache glyphstring extents	Red Hat Bug 211964: [ta] Rendering issue with Tamil		Patch from LingNing Zhang	Red Hat Bug 213632: ZWJ (200d) and ZWNJ (200c) showing same output		Patch from LingNing Zhang	Bug 371388 – Add Thai langauage engine		Patch from Theppitak Karoonboonyanan	Bug 377975 – bug in _pango_glyph_item_iter_next_cluster	Bug 369670 – Checked g_free callsChanges that also appeared between 1.14.7 and 1.14.8=====================================================* Improved thread-safety.  Pango is still NOT thread-safe, but this fixes  lots of crashes using pangocairo from multiple threads.* Fix out-of-bounds array access.* Improved Indic shaper.* Improved Arabic language engine.* Choose shaper/font for unassigned Unicode codepoints.* Build fixes.* Bugs fixed in this release:	Bug 356666 – pango is not thread-safe, nautilus does not honour that	Bug 352795 – configure.in: Bug in "checking Whether to write	             dependencies into .pc files"	Bug 350132 – backspacing doesn't work properly for Arabic	Bug 330407 – Multiple dependant vowel signs (indic) displayed as one	Patch from LingNing ZhangOverview of changes between 1.14.7 and 1.15.0==============================================* Add basic support for vertical text.  (PangoGravity and related API)* New PangoCairo example (examples/cairotwisted) to lay text out on a path* Fix various bugs in the way language engines are used.  Add simple Arabic  and Indic language engines. (Backported to 1.14.6)* Step module interface version up to 1.6.0* Misc small cleanups.* Bugs fixed in this release:        Bug 330407 – Multiple dependant vowel signs (indic) displayed as one        Bug 359043 – PangoRenderer does not show in API docs        Bug 359046 – renderdemo.c unconditionally use GLib 2.12        Bug 357228 – Remove aix specific hack from configure.in        Part of Bug 350132 – backspacing doesn't work properly for Arabic        Bug 356194 – more pango_get_log_attrs problems        Bug 355820 – pango_get_log_attrs broken        Bug 352811 – SIGSEGV with pango(cairo)-view on HP-UX        Bug 351496 – PangoAnalysis::gravity breaks binary compatibility        Bug 351585 – API documentation issues with 2.15 releaseOverview of changes between 1.14.6 and 1.14.7==============================================

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -